GitHub Actions Audit

io.github.UnbearableDev由 GitHub 帳號 UnbearableDev 發布v1.0.1更新於 Nov 2, 2026

GitHub Actions workflow security audit - 21 checks: pinning, permissions, secrets, injection.

發布方自己的服務:audit.domains - Domain Valuation

已驗證Streamable HTTP可網頁執行開發者工具安全與監控

概覽

AI 產生的概覽

稽核 GitHub Actions 工作流程 YAML 的供應鏈與密鑰處理風險,回傳依嚴重程度排序的問題與修正建議。

可以做什麼
  • 對貼上的工作流程 YAML 或工作流程檔案的 HTTPS 連結執行全部 21 項檢查
  • 檢查密鑰外洩、GITHUB_TOKEN 權限、Action 版本固定、執行器安全與工作流程設定規範
  • 辨識 pull_request_target 誤用、分支參照未固定等進階供應鏈風險模式
  • 依類別瀏覽檢查項目目錄
  • 回傳嚴重程度、受影響的工作與步驟、說明、修正建議,以及可直接貼上的 YAML 修正片段
適用情境
適合在檢視或強化儲存庫 CI 流程、合併工作流程變更之前,或排查 GitHub Actions 檔案中疑似供應鏈風險時使用。
執行需求
遠端 streamable HTTP 端點,無需本機安裝。需在 Authorization 標頭中以 bearer 形式提供 Apify API 權杖。需能連線至該端點以及所提交的工作流程連結。
安裝前請注意
依事件計費:每次稽核或檢查呼叫都會收費,瀏覽檢查目錄也需少許費用,呼叫會消耗 Apify 帳戶餘額。Apify API 權杖屬於憑證,應妥善保密。提交的工作流程 YAML 或所指的連結會傳送至第三方託管服務。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 GitHub Actions Audit,將其新增到工作區。
  2. 連接 Authorization token 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.UnbearableDev%2Fgithub-actions-audit/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "github-actions-audit": {
      "type": "http",
      "url": "https://unbearable-dev--github-actions-audit.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

GitHub Actions Security Audit

MCP server that audits .github/workflows/*.yml files for supply-chain risks. Catches script injection, leaked tokens, unpinned actions, broad permissions, and pull_request_target foot-guns — the patterns behind several 2024–2025 supply-chain incidents.

Built by Unbearable Labs. Pay-per-event — only billed when a tool is actually called.


Available on

  • Apify Actor Store — primary, metered usage (PPE)
  • MCPize — pending submission
  • MCP.so — pending submission
  • PulseMCP — pending submission
  • Smithery — pending submission
  • Glama — pending submission

Newsletter: Unbearable TechTips Weekly · All Actors: github.com/UnbearableDev

What it does

Point any MCP-capable client (Claude Desktop, Cursor, n8n, Make, Zapier, custom agents) at this server, hand it a workflow YAML, and get back structured findings with:

  • Severity — critical / high / medium / low / info
  • Affected job and step — exact location of the problem
  • Description — why it matters, with the actual attack vector
  • Remediation — what to do about it
  • Fix snippet — YAML you can paste directly

Tools

ToolPurpose
audit_workflow(workflow_yaml? | workflow_url?, min_severity='low')Run all checks
check_secrets(...)Secret-leakage paths only
check_permissions(...)GITHUB_TOKEN scope issues only
check_action_pinning(...)Action version-pinning only
check_runner_security(...)Self-hosted runner + script injection
check_workflow_config(...)Timeout / config hygiene
check_supply_chain_advanced(...)TeamPCP-class supply-chain patterns (GHA-201..208)
list_checks(category?)Browse the catalog

Provide exactly one of workflow_yaml (paste the content) or workflow_url (HTTPS URL — typically a GitHub raw URL to a specific workflow file).

Check catalog (v2: 21 checks)

IDCategorySeverityTitle
GHA-001secretshighSecret interpolated directly into run: script
GHA-002secretshighSecret printed via echo / set-output
GHA-003secretsmediumSecret used in if: condition
GHA-004secretshighHardcoded credential pattern in env:
GHA-010permissionshighpermissions: write-all granted
GHA-011permissionsmediumNo top-level permissions: (inherits broad default)
GHA-013permissionshighpull_request_target + checkout PR head = PWNing pattern
GHA-020action_pinninghighThird-party action pinned to mutable tag
GHA-021action_pinninghighThird-party action pinned to mutable branch
GHA-022action_pinningmediumFirst-party action not SHA-pinned
GHA-030runner_securitymediumSelf-hosted runner used on pull_request from forks
GHA-032runner_securityhighScript injection via untrusted github.event.* interpolation
GHA-040workflow_configlowNo timeout-minutes on job
GHA-201supply_chain_advancedhighAction pinned to unpinned branch ref (TeamPCP-class: @main/@master)
GHA-202supply_chain_advancedhighAction pinned to mutable tag — SHA pin recommended
GHA-203supply_chain_advancedcriticalpull_request_target + checkout of PR head SHA/ref (codecov/tj-actions exploitation path)
GHA-204supply_chain_advancedhighScript injection via github.event.* user-controlled field in run:
GHA-205supply_chain_advancedmediumAction from non-allowlisted owner (untrusted 3rd-party)
GHA-206supply_chain_advancedhighTop-level permissions: write-all or contents: write without per-job scoping
GHA-207supply_chain_advancedmediumSecret logged via echo / cat in run: block
GHA-208supply_chain_advancedlowAction uses a known-retired tag

Pricing

EventUSD
Any audit / check_* tool call$0.02
list_checks discovery$0.005

Connecting from Claude Desktop

json
{  "mcpServers": {    "gha-audit": {      "transport": "streamable-http",      "url": "https://YOUR-ACTOR-URL.apify.actor/mcp"    }  }}

Sibling MCPs from Unbearable Labs

What's NOT covered (yet)

  • Reusable workflow auditing (multi-file resolution)
  • CodeQL-grade dataflow tracking
  • Marketplace-listed action reputation scoring

Source / contact

Source: github.com/UnbearableDev/github-actions-audit. Issues + ideas: [email protected].


📬 Built by Noel @ Unbearable Labs. More MCP servers + audit tips in the newsletter: https://unbearabletechtips.beehiiv.com

來源:README.md,提交 d95de06

工具

0
該伺服器需要 API 金鑰等憑證,因此 SourceWeft 無法在沒有憑證的情況下讀取其工具,也未收錄。

版本歷史

1
  1. v1.0.1最新Sep 16, 2026

評分

已滿足適用檢查項的 75%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Audit 整合