google-gemini / google-gemini/gemini-cli
Security: supply chain RCE via pull_request_target in eval-pr.yml (fork code executes with GEMINI_API_KEY)
- Dominant language
- TypeScript
- Stars
- 107k
- Forks
- 14.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 45
Description
The current .github/workflows/eval-pr.yml uses pull_request_target which grants access to repository secrets. After eval-gate approval, it checks out and executes fork code (npm ci, npm run build, node scripts/) with
GEMINI_API_KEY injected.
Fix PR: #28232 (structural fix using pull_request + workflow_run separation)
This issue exists to satisfy the PR linking requirement. The full technical report is on file with the Google VRP team (submitted April 25, 2026).
Contributor guide
Research direction
Read .github/workflows/eval-pr.yml and PR #28232 first. Verify the pull_request/workflow_run separation prevents fork code from running with GEMINI_API_KEY; done means untrusted fork execution no longer has access to repository secrets.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, node.js
- Domain
- ci-cd, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 25/100