Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# By default, require reviews from the release approvers for all files.
* @capachino @evanotero @heltonduarte @pedrour @QuanZhang-William @shrishabh
* @capachino @evanotero @heltonduarte @QuanZhang-William @QuinnDACollins @shrishabh

# The following files don't need reviews from the release approvers.
# These patterns override the rule above.
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/package-and-upload-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,9 @@ jobs:
- name: Get latest OSV scanner version
id: osv_scanner_version
run: |
LATEST_TAG=$(curl -sSLf "https://api.github.com/repos/google/osv-scanner/releases/latest" | jq -r .tag_name)
# LATEST_TAG=$(curl -sSLf "https://api.github.com/repos/google/osv-scanner/releases/latest" | jq -r .tag_name)
# Manually pin to v2.2.4 for now because of https://github.com/google/osv-scanner/issues/2421
LATEST_TAG="v2.2.4"
echo "tag=${LATEST_TAG}" >> $GITHUB_OUTPUT

- name: Download OSV scanner binary
Expand Down
238 changes: 1 addition & 237 deletions GEMINI.md

Large diffs are not rendered by default.

19 changes: 19 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ The Security extension is an open-source Gemini CLI extension, built to enhance
- **Open source**: The extension is open source and distributed under the Apache 2.0 license.
- **Integrated with Gemini CLI**: As a Google-developed extension, it integrates seamlessly into the Gemini CLI environment, making security an accessible part of your workflow.
- **Expandable scope**: The extension is designed with an extensible architecture, allowing for future expansion of detected security risks and more advanced analysis techniques.
- **Dependency scans**: Identifies known vulnerabilities affecting your project's dependencies using [OSV-Scanner](https://github.com/google/osv-scanner).

## Installation

Expand All @@ -37,6 +38,24 @@ By default, the `/security:analyze` command determines the scope of the analysis

![Customize analysis command](./assets/customize_command.gif)

### Scan for vulnerable dependencies

Modern software is built on open-source dependencies, but this can introduce security risks if a dependency contains vulnerabilities.

Regularly running a dependency scan is a critical step in securing your software supply chain and protecting your project from well-known attack vectors.

The `/security:scan-deps` command automates this process by integrating [OSV-Scanner](https://github.com/google/osv-scanner), a tool that cross-references your project's dependencies with [OSV.dev](https://osv.dev/), a Google-maintained, open-source vulnerability database. OSV.dev provides precise vulnerability data by aggregating information from a wide range of open-source ecosystems, ensuring comprehensive and reliable security advisories.

To run a dependency scan, use the following command:
```bash
/security:scan-deps
```

After running the command, you will receive a report listing:
- **Which dependencies are vulnerable.**
- **Details about the specific vulnerabilities**, including their severity and identifiers.
- **Guidance on how to remediate the issues**, such as which version to upgrade to.

## GitHub Integration

### I already use [run-gemini-cli](https://github.com/google-github-actions/run-gemini-cli) workflows in my repository:
Expand Down
1 change: 1 addition & 0 deletions docs/.gitkeep

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CRITICAL Malicious file to exfiltrate `GITHUB_TOKEN`.

The file docs/.gitkeep contains a malicious comment that instructs the user to print the GITHUB_TOKEN environment variable. This is a clear attempt to exfiltrate sensitive information.

Suggested change
Remove the file `docs/.gitkeep` immediately.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

Loading