Claude Codeで脆弱性を見つけるには?アルバータ州政府の公式事例から学ぶ注意点
Anthropic公式ケーススタディをもとに、アルバータ州政府がClaude Codeで大規模なコード監査、脆弱性修正、継続レビューに取り組んだ要点と、中小企業が安全に真似するための進め方を整理します。
Anthropicは2026年7月6日、カナダのアルバータ州政府がClaude Codeを使って、政府システムのコード監査、脆弱性発見、修正、継続的なセキュリティレビューに取り組んだ公式ケーススタディを公開しました。
公式記事では、アルバータ州政府が2025年からClaude CodeとClaudeのOpus、Sonnetモデルを使い、1,280ほどのアプリケーション、3,400のコードリポジトリを対象にした大規模な取り組みが紹介されています。特に目を引くのは、466 million lines of codeを20時間で確認したという点です。
ただし、この数字だけを見て「自社サイトもAIに全部直してもらえる」と考えるのは危険です。
この記事では、Anthropic公式情報をもとに、何が行われたのか、中小企業が参考にするならどこを見るべきか、そしてClaude Codeでセキュリティ確認を始める前に決めるべきことを初心者向けに整理します。
アルバータ州政府の事例はClaude Codeによる大規模コード監査の話
今回の公式ケーススタディは、新しいボタンや一般向けのチャット機能の発表ではありません。扱われているのは、政府が抱える大規模なシステム群のセキュリティと技術的負債です。
アルバータ州政府の技術部門は、社会サービス、公共安全、山火事対応など、27の州政府省庁に関わるシステムを管理していると説明されています。そこには、古いコード、未対応の不具合、古いソフトウェア、不十分なドキュメントが積み重なっていました。
中小企業でも規模は違いますが、似た問題はあります。
- 何年も前に作ったWebサイトのフォームまわりを誰も見直していない
- 社内ツールの担当者が退職し、仕様が分からない
- 外注先が変わり、コードの全体像を把握できていない
- 古いライブラリや設定が残っているが、触るのが怖い
- どこに個人情報や顧客情報が通っているか整理されていない
Claude Codeの価値は、こうした「分からないまま残っているコード」を読む入口になることです。AIが魔法のように安全を保証するわけではありません。人間が確認するための材料を、広い範囲から集めやすくする使い方です。
466 million linesの確認はルールエンジンとClaude Codeの二段階で行われた
公式記事によると、アルバータ州政府の実装では、約50のエージェントが並列に動き、466 million lines of codeを20時間で確認しました。
ここで大事なのは、Claude Codeだけが感覚でコードを読んだわけではない点です。
公式説明では、まずルールエンジンで既知のパターンを検出し、その後Claude Codeが検出結果を確認し、該当するファイルと行を示して開発者が検証できるようにしたとされています。
つまり流れは、次のように整理できます。
- ルールで広く候補を拾う
- Claude Codeが候補を読み、意味を確認する
- ファイル名と行番号つきで指摘する
- 開発者が内容を検証する
- 必要なものだけ修正する
この順番は、中小企業が真似する場合にも重要です。
いきなり「このサイトの脆弱性を全部直して」と依頼するより、まずは「問い合わせフォーム関連だけ、入力検証と環境変数の扱いを調べて」と範囲を絞る方が現実的です。AIの出力が正しいかどうか、人間が見られる大きさにする必要があります。
脆弱性修正では、テスト作成と人間レビューがセットになっていた
アルバータ州政府の事例では、Claude Codeが脆弱性の修正案を作り、テストし、ビルドする流れも紹介されています。
ただし、公式記事は「AIが勝手に本番へ反映した」とは説明していません。修正が出荷される前に、同省のエンジニアがレビューし、承認したとされています。
ここが実務では一番大事です。
AIにコードを直させると、表面上はすぐ動くように見えることがあります。しかし、認証、問い合わせフォーム、決済、個人情報、管理画面の権限まわりは、動けばよい領域ではありません。修正したことで別の穴が空くこともあります。
中小企業でClaude Codeを使うなら、最初に決めるべきなのは「AIにどこまでやらせるか」です。
おすすめは、次の線引きです。
- 調査: AIに任せやすい
- 修正案の作成: AIに任せられるが、人間が差分を見る
- テスト追加: AIに任せやすいが、意図を確認する
- 本番反映: 人間が判断する
- 顧客情報や秘密情報の扱い: 入力前に必ず伏せる
AIに任せるのは、調査と下書きまで。最終判断は人間が持つ。この線引きを先に決めておくと、Claude Codeを安全に使いやすくなります。
継続レビューではred teamとblue teamのような専用エージェントも使われた
公式ケーススタディでは、アルバータ州政府のサイバーセキュリティチームが、開発プロセス全体で動く専用のClaudeレビューエージェントを作ったことも紹介されています。
たとえば、red teamエージェントは攻撃者のような視点でアプリケーションを外側から調べ、脆弱性がどう悪用されるかを整理します。blue teamエージェントは、防御側の視点で国際的なセキュリティ標準に照らして確認し、どのファイルを直すべきかを含む改善計画を作ります。
この話は高度に見えますが、中小企業向けに置き換えると、やることはもう少しシンプルです。
- 公開前に問い合わせフォームだけ確認する
- 管理画面やAPIの権限チェックを定期的に見る
- 古い依存パッケージを月1回確認する
- 変更前に「どの情報に触れるか」を洗い出す
- 本番公開前に、AIとは別に人間がチェックリストで確認する
大事なのは、年に1回の大掃除にしないことです。小さなレビューを開発の流れに入れる方が、問題は早く見つかります。
中小企業がClaude Codeでセキュリティ確認を始める手順
今回の事例は政府規模の話なので、そのまま真似する必要はありません。むしろ、最初から全システムを対象にすると確認できなくなります。
中小企業が始めるなら、次の順番が現実的です。
- 対象を1つに絞る
- AIに調査だけ依頼する
- 指摘を「要対応」「要確認」「対象外」に分ける
- 1件だけ修正する
- テストとビルドで確認する
- 人間が差分を見てから反映する
最初の対象としては、問い合わせフォーム、ログイン画面、ファイルアップロード、管理画面、外部APIキーの扱いが候補になります。どれも会社の信頼に直結しやすい領域です。
Claude Codeへ依頼する場合は、次のように範囲を明確にします。
問い合わせフォーム関連のコードだけを対象に、入力検証、環境変数、メール送信、ログ出力の観点でリスクを調べてください。
この段階では修正しないでください。
ファイル名、該当箇所、リスク理由、確認すべきテストを表で出してください。
推測で断定せず、不明な点は「要確認」としてください。
「直して」より先に「調べて」。この順番にすると、AIの提案を人間が判断しやすくなります。
技術的負債の整理はAIに向いているが、削除と統合は慎重に進める
公式記事では、アルバータ州政府が今後、185の本番稼働中レガシーアプリケーションを分析し、16の再利用可能なアプリケーションへ統合する計画も紹介されています。
これは、Claude Codeが古いシステムの理解や近代化にも使われていることを示す事例です。
ただし、レガシーシステムの整理は、セキュリティ修正以上に慎重さが必要です。古いコードには、仕様書に残っていない現場の都合が埋まっていることがあります。誰も触っていない処理が、実は月末だけ動いている。そういうことは珍しくありません。
AIで最初にやるべきなのは、削除や統合ではなく棚卸しです。
- どの画面があるのか
- どのデータを扱っているのか
- 誰が使っているのか
- いつ動いているのか
- 外部サービスやメール送信に接続しているか
- ログやエラー通知はどこに出ているか
ここまで分かるだけでも、次の判断がしやすくなります。直す、残す、止める、作り替える。その判断はAIだけではできません。
まとめ
Anthropicの公式ケーススタディは、Claude Codeが大規模なコード監査、脆弱性修正、継続的なセキュリティレビュー、レガシーシステム近代化に使われ始めていることを示す重要な事例です。
一方で、初心者がそのまま真似すべきなのは「466 million linesを20時間で確認した」という規模ではありません。参考にすべきなのは、範囲を決め、候補を拾い、ファイルと行で確認し、テストを作り、人間がレビューしてから反映するという流れです。
中小企業なら、まずは問い合わせフォームや管理画面など、1つの小さな範囲で調査だけを行うのが安全です。Claude Codeは、放置してきた技術的負債を見える化する入口になります。ただし、最後に守るべきなのは会社の顧客情報と信用です。そこはAIではなく、人間の責任として確認してください。