ビジネス動向 · 小互解読

カナダ・アルバータ州がClaude Codeでセキュリティ監査、20時間で4億6,600万行のコードをスキャン、本来なら6.5年かかるはずだった

50のエージェントが自律的に並列稼働、州内27部門・3,400のコードリポジトリをカバー、脆弱性の自動修正や老朽システムの書き換えまでこなす。
要点
  • カナダ・アルバータ州の技術イノベーション省は2025年から、Claude Code(Claude OpusとClaude Sonnetモデルを併用)で政府システムのセキュリティ監査を行っている。
  • 約50のエージェントが自律的に並列稼働し、20時間で4億6,600万行のコードをスキャン。州内27部門、約1,280のアプリケーション、3,400のコードリポジトリをカバーした。
  • チームの試算では、同規模の従来型の人手による監査なら約6.5年かかる。
  • Claude Codeは脆弱性を特定するだけでなく、修正の生成、テストの作成、さらには現代的な言語での老朽システムの書き換えまで行う。25年前のJavaで作られ、当初は手作業で5か月かかった補助金システムの再構築が、わずか4〜5日で完了した。
  • チームは常時稼働するレッドチーム/ブルーチーム方式のセキュリティ審査エージェントも構築し、各アプリケーションごとに約95項目のセキュリティ管理策を毎回チェックしている。アルバータ州はすでに他の政府機関向けに技術白書を公開済み。
本記事はAnthropic公式サイトが発表した、自社顧客の事例紹介です。文中の規模の数字や所要時間の比較(「6.5年」など)の多くはアルバータ州チーム自身の試算・公表であり、以下は原文の事実をそのまま伝えるものです。
1誰がやっているのか

誰が政府システムのセキュリティをAIでチェックしているのか

カナダ・アルバータ州の技術イノベーション省は、2025年からClaude Code(Claude OpusとClaude Sonnetの2モデルを併用)を使って州政府システムのセキュリティ監査を行っている。脆弱性を見つけて修正し、さらに常時稼働できるセキュリティ審査の仕組みまで構築した。

省内の1チームが、約50のエージェントを自律的に並列稼働させ、20時間で政府コード4億6,600万行のスキャンを完了させた。
注目ポイント:これは現時点で公開されている事例の中で、政府規模としては最大級のAIコードセキュリティ監査だ。チームの試算では、同規模の作業を従来型の人手監査でやろうとすれば約6.5年かかるという。
2問題の規模

このコード群はどれほど古く、乱雑なのか

アルバータ州技術イノベーション省は、州内27部門のシステムを一手に維持管理している。社会福祉から公共安全、山火事対応まで、すべてがこれに支えられている。その裏には約1,280のアプリケーション、3,400のコードリポジトリがある。

27の州政府部門(社会福祉/公共安全/山火事対応……)
約1,280のアプリケーション
3,400のコードリポジトリ
合計4億6,600万行のコード

その大半は、これまで体系的なセキュリティ監査を一度も受けたことがなかった。何年もかけて積み上がった技術的負債——安全でないコード、放置されたバグ、時代遅れのソフトウェア——は、ざっと見積もって数十億ドル規模にのぼる。しかもこれらのシステムに保存されているのは、税務記録、政府調達データ、社会福祉の案件記録といった、最も機密性の高い情報だ。

累積技術的負債 数十億ドル規模 · リポジトリの大半が 体系的セキュリティ監査ゼロ
3どうやって問題を洗い出すか

4億6,600万行のコードからどうやって問題を見つけるか

約50のエージェントが自律的に並列稼働し、それぞれ手分けして全コードリポジトリをスキャンした。探すのはセキュリティの脆弱性だけでなく、基盤インフラやデプロイフローの弱点、技術ドキュメントの不足も含まれる。

核心手法 · 二段階パイプライン

スキャン全体は二段階に分かれる。まずルールエンジンが高速に全体をチェックし、既知の疑わしいパターンに一致するコードをマークする。次にClaudeがそのマークされた箇所を一つひとつ精査し、問題ごとにどのファイルの何行目にあるかを指摘する。これにより開発者が直接確認しやすくなる。情報はこうして段階的にふるいにかけられ、精錬されていく。

ここでいうルールエンジン(rules engine)とは、あらかじめ書かれた機械的なパターンマッチングのルールのことだ。コードがある特定の形をしていれば拾い上げられる仕組みで、マークするだけで真偽の判断はしない。

たとえるなら

空港の保安検査で、まず金属探知ゲートを通るのと同じだ。ゲートが鳴ったからといって必ず問題があるわけではなく、まずは足止めして、真偽の判定は後段のより精密なチェックに委ねる。ルールエンジンは「ゲートを鳴らす」役目を担い、Claudeはその後の「精密チェック」を担当し、どのカバンを開けるべきかまで教えてくれる。

4億6,600万行のコード · 50エージェントによる全量並列スキャン
ルールエンジンが「既知の疑わしいパターン」をマーク
Claudeが精査 · 具体的なファイルと行番号を指摘
開発者が行番号をもとに検証 · 真の問題を確認

今回のスキャンは、アルバータ州が保有するすべてのコードリポジトリをカバーし、従来の自動スキャンツールでは見逃されていた問題も掘り起こした。20時間で完了し、チームの試算ではこの規模を従来型の人手監査でやると約6.5年かかるという。

約50体
自律的に並列稼働するスキャンエージェント
20時間
全量スキャンの実際の所要時間
4億6,600万行
カバーした政府コードの総量
約6.5年
従来型人手監査の試算所要時間
4洗い出した後どう直すか

見つけた問題は、そのままAIが修正へ

問題を見つけるのは前半戦にすぎない。スキャンで脆弱性が見つかった箇所については、Claude Codeがしばしばそのままパッチを書き上げる——修正の生成、テストの実行、ビルドの完了まで。

システムに自動テストがなくパッチの安全性を確認できない場合、Claudeはまずテストを補う。コードが古すぎたり複雑すぎたりしてその場での修正が割に合わない場合は、より現代的で保守しやすい言語で丸ごと書き直してしまう。この全プロセスは各部門のエンジニアと共に進められ、どのパッチも本番反映前に必ずエンジニアによる人手レビューと承認を経る。

スキャンで脆弱性発見
テスト不足なら
先に補完
修正を生成
または全面書き換え
エンジニアが
レビュー・承認して反映

特に差が際立つのが、ある補助金プロジェクトのポータルだ。25年前にJavaで手作業で書かれ、当時ゼロから構築するのに丸5か月かかった。今回、現代的な言語で書き直したところ、最短でわずか4〜5日で済んだ。

25年前 · 手作業での開発
5か月

Javaで手作業により作られた補助金プロジェクトポータルを、当初ゼロから構築するのにかかった時間。

現在 · Claude Codeによる再構築
4〜5日

同じシステムを現代的な言語で書き直すのに必要な最短時間。

5継続的な監視

スキャンが終わっても続く:レッドチームとブルーチームが四六時中見張る

システムのスキャンが終わり、パッチが当てられても、それで終わりではない。アルバータ州のサイバーセキュリティチームは、開発の全プロセスで常時稼働する専用のClaude審査エージェント群も構築した。これにより、セキュリティ監査を一回限りの特別調査から、日常的な開発の中の常態化したチェックへと変えている。

核心手法 · レッド/ブルーチームによる継続監査

レッドチームのエージェントは攻撃者のようにシステムを外部から探り、ある脆弱性がどう悪用されうるかを見極める。続いてブルーチームのエージェントが国際的なセキュリティ基準に照らして防御を評価し、ファイル単位まで精密な修正案を書き出す。この二つのチームが連携することで、各アプリケーションは毎回約95項目のセキュリティ管理策をクリアすることになる。

レッドチーム · 攻撃側

攻撃者になりきり、外部から積極的にシステム突破を試み、脆弱性がどう悪用されるかを見極める。

ブルーチーム · 防御側

国際的なセキュリティ基準に照らして防御が十分かをチェックし、どのファイルをどう直すべきか具体的な修正案を書く。

① レッドチームの探索攻撃者のように外部からシステムを探り、悪用されうる脆弱性を洗い出す
② ブルーチームの評価国際的なセキュリティ基準に照らして防御をチェックし、ファイル単位まで精密な修正案を書く
③ 修正の反映エンジニアのレビュー・承認を経て、パッチがシステムに反映される
↻ ①に戻り、次のラウンドへ · 毎ラウンド各アプリケーション約95項目のセキュリティ管理策

1ラウンドごとに、各アプリケーションは約95項目のセキュリティ管理策(security control)を一つずつチェックされる。この95項目は、国際的なセキュリティ基準から切り出された具体的なチェック項目——例えばパスワードが暗号化して保存されているか、ユーザー入力が検証されているか——であり、合わせて95項目のセキュリティ健康診断チェックリストとなる。これを毎ラウンド最初からやり直す。

レッド・ブルーの両チーム以外にも、コード品質や、一般公開される文言がわかりやすいかを専門にチェックするエージェントもいる。この一連の審査エージェント群は、すべてClaude Agent SDKをベースに構築されている。

6横展開できるか

この経験は他の政府にも展開できるのか

アルバータ州は、この経験を自分たちだけのものにするつもりはない。すでに一連のプロセスを技術白書としてまとめ、他の州・省・連邦政府が参考にできるよう公開している。技術的負債やセキュリティの脆弱性といった悩みは、世界中の政府システムに共通するものだからだ。

2025年
省内チームを結成し、Claudeを使ったシステムのセキュリティ監査・強化を開始。
その後
20時間で4億6,600万行のコードのスキャンを完了、脆弱性を修正し老朽システムを書き換え。
その後
レッドチーム/ブルーチームによる継続審査エージェントを構築し、セキュリティチェックを常態化。
公開済み
技術白書を公開し、他の政府がそのまま参考にできる青写真を提供。
2026年7月
エドモントンで業界向けイベントを開催し、この取り組みで得た知見を共有。
今年秋から
この手法を州政府全体に広げる取り組みを開始。

次のステップとして、アルバータ州はAIエージェントにコード修正だけでなく、エンジニアと共にゼロから新しいソフトウェアやツールを構築させる計画だ。例えばある部門には本番環境でまだ動いている老朽アプリケーションが185あり、維持費がかさみ更新も難しい。チームはClaude Codeを使ってこれらを洗い出し、現代的な言語ベースの再利用可能なアプリケーション16本に統合する予定だ。

現在
185本

本番環境でまだ動いている老朽アプリケーション。維持コストが高く更新が難しい。

統合計画
16本

現代的な言語をベースにした、再利用可能な現代的アプリケーション。

これと並行して、アルバータ州は「Alberta AI Academy」を通じて政府職員と一般市民にAIの使い方を教育している。プロンプトの書き方からエンタープライズ級アプリケーションの構築まで教えている。

数千人
プラットフォームでAIを学んだ政府職員
1万人超
プラットフォームでAI活用を学んだ一般市民
7数字が語る

数字が語る

本記事で最もインパクトのある数字の組み合わせをまとめてみよう。同じ作業を、二つの時間スケールで見る。

Claude Codeで実際に完了20時間
従来型の人手監査 · チーム試算≈6.5
同じ4億6,600万行のコードのセキュリティ監査。上のほとんど見えないくらい細いバーが、20時間分だ。
AIでシステムの脆弱性を見つけて修正する——従来のやり方なら何年もかかっていたはずのことを、私たちはわずか数時間でやり遂げました。ネイト・グルビッシュ(Nate Glubish)、アルバータ州技術イノベーション省大臣
出典:Anthropic公式サイト「Government of Alberta uses Claude to find and fix cybersecurity vulnerabilities」。文中の規模の数字や所要時間の比較(「6.5年」「185→16」を含む)の多くは、アルバータ州技術イノベーション省自身の試算・公表による。アルバータ州が公開した技術白書はthevelocitywhitepapers.comを参照。