You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|**S — Spoofing**| med | Compromised third-party GitHub Action runs attacker code in CI | Critical actions in `.github/workflows/ci.yml` are commit-pinned; repository-wide pin coverage remains a review item rather than an assumed invariant | ci-ops | 2026-07-18 |
95
-
|**T — Tampering**| high | A pull request changes staging code and exfiltrates a cross-repository release credential | Pull-request staging executes the checked-out PR merge ref. Never expose an upstream PAT or GitHub App key directly to this mutable job; move authenticated staging behind a trusted workflow boundary first | ci-ops | 2026-07-18 |
95
+
|**T — Tampering**| high | A pull request changes staging or build code and abuses the workflow token | Pull-request staging executes the checked-out PR merge ref. Never expose an upstream PAT or GitHub App key directly to this mutable job; move authenticated staging behind a trusted workflow boundary first. `rust-ci.yml` limits mutable pull-request jobs to `contents: read`| ci-ops | 2026-07-18 |
96
96
|**R — Repudiation**| low | Workflow authorship or the artifact source is ambiguous | Git commit and Actions run logs identify the executed revision; staging must additionally retain upstream run, artifact ID, and digest evidence | ci-ops | 2026-07-18 |
97
97
|**I — Info disclosure**| high | Workflow logs or PR-controlled code leak a release credential |`.github/workflows/ci.yml` grants its repository-scoped `github.token` only `contents: read`; no upstream `Actions: read` credential is configured. This keeps the credential boundary closed but leaves staging proper red | security | 2026-07-18 |
98
98
|**D — DoS**| med | PRs trigger expensive multi-platform jobs or downloads of stale artifacts | The npm workflow has a concurrency group and ten-minute timeout. Current CI also uses macOS and Windows runners, so runner cost is not Linux-only | infra | 2026-07-18 |
99
-
|**E — Elevation**| high | A workflow inherits broad repository permissions or a compromised cross-repository token | Repository workflow permissions currently default to `write`; 6 of 26 workflow files now declare a top-level `permissions:` block, including `ci.yml` with only `contents: read`. The built-in token remains limited to this repository and cannot authorize upstream artifact downloads | ci-ops | 2026-07-18 |
99
+
|**E — Elevation**| high | A workflow inherits broad repository permissions or a compromised cross-repository token | Repository workflow permissions currently default to `write`; 7 of 26 workflow files now declare a top-level `permissions:` block, including `ci.yml` and `rust-ci.yml` with only `contents: read`. The built-in token remains limited to this repository and cannot authorize upstream artifact downloads | ci-ops | 2026-07-18 |
0 commit comments