~/talk

Pwning the CI (with GitHub Action Workflows)

links:none on file
slides:none on file

A public repo (example: Checkov) accepts a malicious PR that replaces workflows and runs attacker code on self-hosted runners, exfiltrates environment variables and secrets by echo secrets to a file and curl to webhook.site, sleeps to keep the ephemeral GitHub token alive, and spawns a Docker reverse shell to escalate to root. Thousands of repos show unsanitized inputs and permissive workflow defaults; fixes include branch protection, short-lived OIDC tokens, and automated scans.

AI-written summary · about

  1. 0:00Introduction
  2. 1:23Malicious pull request
  3. 3:49Flaws in GitHub Actions
  4. 7:00Unsanitized inputs exploit
  5. 10:31Protecting against environment variable leaks
  6. 11:54Branch protection rules
  7. 14:21Extracting secrets
  8. 16:27Reverse shell attack
  9. 19:46Root on self-hosted
  10. 21:35PyTorch abuse by M. Young
  11. 23:42Prevention strategies
  12. 25:26Security tools
  13. 26:50Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.