Repository navigation
Replies: 1 comment
|
An attempt at an answer to the supply-chain question (and a modest proposal) This question has been sitting unanswered for a while, so let me take a shot at it — partly as an answer, and partly because working through it surfaced things the project is already doing right that nobody has written down anywhere. First, the uncomfortable framing: orca is unusually exposed to this question. It welcomes agent-generated contributions (AGENTS.md, the required AI-review summary in the PR template), it runs ~100 PRs a day — roughly two-thirds of that the team's own work, with the outside community accounting for about a third (4,384 community PRs in Jun–Aug alone; more numbers in the data reply over at #22851) — and the entire human decision layer is four people merging after bot verdicts. Great environment for contributors. Also, if you think like an attacker, a great environment for attackers. The good news, which I only appreciated after actually reading the workflows: most of a real defense is already built.
None of this is written down anywhere a contributor (or an auditor) could find — which is honestly most of the gap. The trust model exists, but only in YAML. What's actually left, threat-wise, seems to be three things. The boring one: build/release tampering. Mostly covered, with two cheap upgrades on the table — SLSA-style provenance on artifacts, and pinning third-party Actions to full SHAs. That closes the "binary ≠ source" class that CI alone can't see. The scary one: a patient attacker writing correct code. No CI catches this — xz-utils passed every automated check in 2024 and was only caught by one engineer noticing a half-second SSH delay. The only defense is human attention pointed at the right places, which suggests two small rules: first-time contributors touching security-sensitive paths ( The 2026-specific one: attention dilution as an attack surface. A malicious PR buried in 3.6k open ones, bot-approved, waiting for one tired glance — flooding works precisely because the human layer is four people. And the noise floor for that flood already exists: the community merge rate measured at 17% and falling, accounts with 30+ PRs and zero merges, and a handful of accidental million-line diffs from bad agent syncs — all the same shape a patient attacker would want to hide inside. Soft per-author caps on concurrently-open PRs and "bot-checklist-complete before the human queue" gating are the obvious mitigations, none of which need new infrastructure. The cheapest first step, if the team wants one: a All of this is offered for the maintainers to adopt, adapt, or veto — I don't have visibility into why things are shaped the way they are, and the shipping pace this team sustains is the thing worth protecting here. (In the spirit of this project's own disclosure norms: drafted with AI assistance, reviewed by me.) |
Uh oh!
There was an error while loading. Please reload this page.
Details
Security Concern: Preventing Malicious Pull Requests
Hi team 👋
First of all, great work on Orca — it's an impressive project.
I wanted to raise a security question that I think is important for a tool like this, which runs with elevated privileges on users' machines and integrates deeply with AI agents and code execution.
The concern
Orcas's open-source nature means that anyone can submit a Pull Request. This opens the door to potential supply-chain attacks or malicious contributions, where a bad actor could:
These kinds of attacks are well-documented (e.g., the xz utils backdoor, event-stream npm incident, etc.) and are particularly dangerous for tools that:
My questions
Suggestion
I'd strongly recommend:
SECURITY.mdwith a clear vulnerability disclosure processGiven that Orca is an AI-powered tool that executes code and interacts with the filesystem, the attack surface is significant. I'd love to understand your current security posture and how the community can help keep this project safe.
Thanks for your time and for maintaining this project!
All reactions