本文へスキップ
Best AI Service

CodeQL 2.25.5 で GitHub Actions の検知精度改善|composite action・go run・Python module 実行で何を見直すべきか

CodeQL 2.25.5 で GitHub Actions 向けの検知精度が上がりました。composite action の unpinned tag、go run と Python module 実行、GHES 反映差分を実務向けに整理します。

公開: 最終確認: 2026年5月29日
最終確認: 2026年5月29日 根拠: 4件の公開情報 確認メモを見る 編集方針
CodeQL 2.25.5 の GitHub Actions 向け検知改善を確認するイメージ

先に結論

CodeQL 2.25.5 で大きいのは、GitHub Actions の review 対象が workflow 本体だけでは足りなくなったことです。

今回から actions/unpinned-tag は composite action の action.ymlaction.yaml まで解析します。さらに poisonable_stepspython -mgo run の実行パターンを追加で拾うようになりました。

つまり、これまで alert が出ていなかったから安全とは言い切りにくくなります。github.com を使っているなら新しい query は自動反映されるので、待つより先に見直した方が早い更新です。

何が変わったのか

一番分かりやすい変更は、actions/unpinned-tag の解析範囲です。

これまでは workflow files が主な確認対象でした。CodeQL 2.25.5 では、composite action metadata も対象に広がりました。社内で再利用している action が @main や mutable tag を参照しているなら、今までより見つかりやすくなります。

もうひとつ大きいのが poisonable_steps の modeling 拡張です。GitHub の changelog では Python modules 経由の script 実行と、ディレクトリ付きの go run が追加 sink として検知対象に入ったと説明しています。

加えて actions/untrusted-checkout/* 系は help description が直り、actions/untrusted-checkout/high の名前も privileged context が伝わる形に調整されました。新機能というより、triage 時に意味を取り違えにくくする修正です。

まず見直すべき 3 か所

1. composite action の action.yml

いま一番見落としやすいのはここです。

workflow 側を pin していても、社内 action や共通 action の action.yml で mutable tag を参照していれば、そこが supply chain の穴になります。今回から CodeQL はその metadata も見るので、review 対象に入っていない repo があるなら先に棚卸しした方が安全です。

2. python -m を使った実行ステップ

Python module 実行を多用している workflow では、今まで見えていなかった alert が増える可能性があります。

たとえば wrapper script を直接呼ばず、python -m で task runner や internal tool を起動している構成です。CodeQL はその実行形も poisonable step の候補として扱うようになりました。

3. ディレクトリ付きの go run

Go 製の補助ツールを CI から直接起動しているチームも要注意です。

CodeQL 2.25.5 では、ディレクトリ付きの go run に加え、go とサブコマンドの間に入る flag を無視して判定できるように変わりました。少し回りくどい書き方でも、以前より検知されやすくなります。

どの query に効くのか

この更新は actions/unpinned-tag だけの話ではありません。

CodeQL の changelog では、poisonable_steps の変更によって次の query で検知結果が増える可能性があると案内しています。

  • actions/untrusted-checkout/high
  • actions/untrusted-checkout/critical
  • actions/untrusted-checkout-toctou/high
  • actions/untrusted-checkout-toctou/critical
  • actions/cache-poisoning/poisonable-step
  • actions/cache-poisoning/direct-cache
  • actions/artifact-poisoning/path-traversal

要するに、checkout 後の危険な実行、cache、artifact 周りまで連鎖します。GitHub Actions security 全体の見え方が少し厳しくなる更新だと考えた方が近いです。

CI/CD 全体の設計まで見直したいなら、GitHub Actions security roadmap 2026 で何が変わるか もつながります。

github.com と GHES で違う点

github.com なら、新しい CodeQL は自動で入ります。

一方で GitHub は、この変更を GHES 3.22 に含めると案内しています。つまり GHES 3.21 以前では、同じ repository でも query 挙動がずれる可能性があります。

enterprise で github.com と GHES が混在しているなら、alert 差分を「設定ミス」と決めつけない方が安全です。まず CodeQL version の差を疑うべきです。

いま実務でやること

最初にやるべきなのは、workflow を全部書き換えることではありません。

  1. composite action を持つ repository を洗い出す
  2. action.ymlaction.yaml の mutable tag 参照を確認する
  3. python -mgo run を含む workflow を一覧化する
  4. 新しい alert が出たときの triage 担当を決める

この順なら、更新の影響を小さく把握できます。いきなり suppression を増やすより、どこで検知が増えるかを見る方が先です。

GHAS の予算や code scanning 運用まで含めて考えるなら、GitHub Advanced Security に hard budget limits 追加 も合わせて読むと、運用側の判断がしやすくなります。

どんなチームに効くか

一番影響が大きいのは、GitHub Actions を共通基盤として使い回しているチームです。

特に次の条件に当てはまるなら、今回の更新は実務差が出ます。

  • reusable workflow や composite action を社内標準として配布している
  • platform team が CI テンプレートを管理している
  • code scanning の alert を security team だけでなく開発チームも処理している
  • github.com と GHES を併用している

逆に、単発の workflow が少数あるだけの小さな repo では、すぐに大きな差が出ないこともあります。それでも action.yml の pin 漏れは見つけておく価値があります。

まとめ

CodeQL 2.25.5 の GitHub Actions 改善は、派手な新機能ではありません。

ただ、実務への効き方はかなり直線的です。

  • actions/unpinned-tag が composite action metadata まで広がった
  • python -mgo run が poisonable step の検知対象に増えた
  • actions/untrusted-checkout/* の説明と名称が分かりやすくなった
  • github.com では自動反映、GHES は 3.22 から取り込まれる

workflow 本体だけ見ていた review から、shared action まで含めた review へ切り替える。そのきっかけとしては十分強いアップデートです。

参考URL

最後に確認すること

まず見るべきなのは、composite action の action.yml と、go run / python -m を含む workflow です。今回の更新は、そこを見落としていたチームほど効きます。

向いている人

  • ・GitHub Actions を本番 CI/CD で回していて、code scanning の alert 増減を運用に反映したいチーム
  • ・composite action を社内配布しており、workflow 以外の設定ファイルも security review 対象に含めたい platform team
  • ・go run や Python module 実行を workflow で使っていて、新しい検知パターンの影響を先に見たい管理者

避けたい人

  • ・GitHub Actions をほとんど使っておらず、CodeQL の query update を今すぐ追う必要がないチーム
  • ・AppSec 製品どうしの精度比較だけを知りたい人
  • ・GHES の upgrade 計画がなく、github.com の挙動差分も当面問題にならない環境

確認メモ

根拠、確認日、まだ扱っていない範囲を本文の後ろにまとめています。

編集方針を見る

確認日

2026年5月29日

確認ソース数

4件

編集責任

@best-ai-service-editorial-review

研究責任 @best-ai-service-research / 編集責任 @best-ai-service-editorial-review

Verification links

まず開く公式リンク

公式発表、Docs、Pricing など、導入判断で先に見るリンクだけを残しています。

official changelog reviewofficial docs review

確認した公開情報

  • official changelog
  • official docs

比較観点

  • query coverage clarity
  • GitHub Actions 運用への直結度
  • GHES 差分の把握しやすさ

まだ扱っていないこと

  • • 実リポジトリで alert 数がどの程度増えるかの組織差
  • • composite action の設計次第で triage 負荷がどこまで変わるか