2026-07-14 Bret Fisher YT Livestream - Github Actions Security

meeting

  • Channel: Bret Fisher YouTube Livestream
  • Topic: GitHub Actions Security — malicious PRs from forks, hardening

Context

Bret Fisher livestream covering GitHub Actions security risks, specifically around malicious pull requests from forked repos. Walked through attack vectors and mitigation settings.

Key Takeaways

Malicious PR from Fork Attack

  • Attackers can submit PRs from forks that execute arbitrary code in CI
  • Default GH settings allow anyone to create PRs against public repos
  • CI runs with repo-level secrets — fork PRs can exfiltrate them

Hardening Settings

  • Settings → Actions → Policies: restrict who can create PRs

    • Upload as json. Example:
{
  "id": 1426,
  "name": "CI event allowlist",
  "target": "actions",
  "source_type": "Repository",
  "source": "FabianUntermoser/gasa-fail",
  "enforcement": "active",
  "conditions": {},
  "rules": [
    {
      "type": "restrict_action_events",
      "parameters": {
        "allowed_events": [
          "issue_comment",
          "pull_request",
          "pull_request_review",
          "pull_request_review_comment",
          "push"
        ]
      }
    }
  ],
  "bypass_actors": []
}
 
  • Settings → Actions → Approval: require approval for first-time contributors

  • Disable “Allow all actions and reusable workflows” — pin to verified creators only

Tools Mentioned

Bottom line

Default GH Actions permissions are too permissive. Lock fork PR creation to collaborators only, require approval for new contributors, and audit with gasa/zizmor.