Instiq
第4章 · Code Security(CodeQL)·v1.0.0·更新 2026/7/16·読了目安 約15分

変更要約: GH-500 第4章を新規作成(アプローチと設定=CodeQL[純正・データフロー SAST]・サードパーティと SARIF 取り込み・Actions デフォルト/外部 CI 有効化・ワークフローテンプレート・matrix ビルド・スキャン頻度、分析と最適化=データフロー source→sink レビュー・重大度/カテゴリ(CWE)・アラートライフサイクルと autofix[要検証]・高度な構成/クエリスイート・スキャン失敗(ビルド/言語/リソース)と性能トラブルシュート)

4.2結果の分析・トリアージ・最適化

この節の要点

スキャン結果(データフロー解析の洞察を含む)のレビュー、アラートのライフサイクルと自動修正(autofix)・修復ワークフロー、却下と重大度/カテゴリの分類、そして高度な構成・カスタマイズとスキャン失敗/性能のトラブルシュートを理解します。

スキャンで出たアラートは、トリアージ(分類・優先順位付け) して修復します。Code Scanning のアラートは、データフロー解析 により「どこ(source)から入った危険な値が、どこ(sink)で悪用され得るか」を経路として示すため、原因と影響範囲を理解しやすいのが特徴です。

4.2.1結果のレビューとデータフロー

アラートを開くと、データフローのパス(ユーザー入力などの source → 危険な操作の sink)が表示されます。これにより「なぜ脆弱なのか」「どこで遮断すれば直るか」が分かり、入力の 検証/サニタイズ をどこに入れるべきか判断できます。各アラートには 重大度(severity)カテゴリ(rule/CWE) が付き、優先順位付けに使います。

4.2.2アラートのライフサイクルと autofix

Code Scanning アラートも オープン → 修正で解決 → (誤検知/許容なら理由付き却下) のライフサイクルを持ちます。自動修正(autofix / Copilot Autofix) は、検出した脆弱性に対する 修正案を自動提示 し、開発者はレビューして採用できます——ただし自動修正も 検証してからマージ します(鵜呑みにしない)。コードが直りデフォルトブランチで再スキャンされると、アラートは 自動的に解決 されます。同じ脆弱性が 再び現れれば再オープン されます。

続きは無料登録で読めます

冒頭を無料で公開中。無料登録でこの節の全文と、第4章以降を含む全参考書・全問題集が読めます。