Skip to content

fix(ci): run adversarial audit on Dependabot PRs - #258

Merged
Conrad Rockenhaus (skyphusion) merged 1 commit into
mainfrom
fix/adversarial-audit-dependabot-all-prs
Aug 5, 2026
Merged

fix(ci): run adversarial audit on Dependabot PRs#258
Conrad Rockenhaus (skyphusion) merged 1 commit into
mainfrom
fix/adversarial-audit-dependabot-all-prs

Conversation

@skyphusion

Copy link
Copy Markdown
Member

Summary

  • Drop the Dependabot author skip on the adversarial audit workflow.
  • Dependabot-triggered runs use org Dependabot secrets (same names as Actions secrets).
  • PR comment step is continue-on-error (Dependabot GITHUB_TOKEN is read-only; artifact remains).

Template + runbook: skyphusion-labs/fleet-chezmoi#1520

Test plan

  • After merge, update an open Dependabot PR onto main
  • Confirm Adversarial audit runs and does not skip

Remove the dependabot[bot] author skip so every same-repo PR to main
gets the K2.7 adversarial audit. Org Dependabot secrets now supply
ADVERSARIAL_AUDIT_CF_API_TOKEN (and CF_AIG_TOKEN). PR comment is
continue-on-error for Dependabot's read-only GITHUB_TOKEN.

Files: .github/workflows/adversarial-audit.yml
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown

Adversarial security audit

Generated 2026-08-05T10:21:41.739Z · f6b8c2e...ca9a4f6

Workflow change removes Dependabot skip while providing same-named Dependabot org secrets, keeps branch-resident credential-risk and PR comment fail-open, with no hardened runner controls.

Severity Location Finding
high .github/workflows/adversarial-audit.yml:73 Dependabot secrets now reachable via same-named org secrets: Removing the dependabot[bot] skip means malicious or compromised Dependabot PRs will execute the workflow using the newly seeded Dependabot org secrets, which now mirror the names of the Actions org secrets.
high .github/workflows/adversarial-audit.yml:1 PR branch workflow still reaches CF tokens (known residual): pull_request triggers run the workflow from the PR branch, so any write-access user can rewrite this file and exfiltrate ADVERSARIAL_AUDIT_CF_API_TOKEN/CF_AIG_TOKEN.
medium .github/workflows/adversarial-audit.yml:147 continue-on-error masks PR comment failures: Adding continue-on-error: true to the PR comment step hides failures of the advisory posting, reducing visibility of tampering or broken posting.
medium .github/workflows/adversarial-audit.yml:92 AUDIT_SCRIPTS_PIN env envar can be overridden by branch: AUDIT_SCRIPTS_PIN is set as an env variable on the job; because pull_request uses the branch copy, an attacker can override it and checkout/run an arbitrary public repo commit or tag.
medium .github/workflows/adversarial-audit.yml:95 No runner integrity or network egress hardening: The job runs on ubuntu-latest with default network egress, no step-security/harden-runner, and broad outgoing connections for Node/AI gateway.
low .github/workflows/adversarial-audit.yml:149 GH_TOKEN passed implicitly to shell script: The github.token is exported as GH_TOKEN and passed into a bash script; if post-pr-comment.sh logs the token or is tampered with, it is exposed.

@skyphusion
Conrad Rockenhaus (skyphusion) merged commit 5c32698 into main Aug 5, 2026
12 checks passed
@skyphusion
Conrad Rockenhaus (skyphusion) deleted the fix/adversarial-audit-dependabot-all-prs branch August 5, 2026 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant