アルバータ州、Claudeで政府システムの脆弱性を発見・修正
Key Points
- 466百万行を20時間で解析
- エージェントが修正とテストを自動生成
- 95項目で継続的にセキュリティ検査
Summary
アルバータ州の技術イノベーション省はClaude Code(Opus/ Sonnet)を使い、政府の1,280アプリ・3,400リポジトリを対象に466百万行のコードを20時間で解析・修正しました。ワークフローはルールベースの一次スキャン→該当ファイルと行を指摘するレビュー→自動生成されたパッチ/テストの適用、という二段階で進み、エンジニアの承認後にデプロイされます。継続的なセキュリティエージェント(red/blue等)をCIに組み込み、約95のセキュリティコントロールで自動チェックしています。成果や技術的白書、学習プログラム(Alberta AI Academy)は公開され、他自治体への展開指針として提供されています。
Key Points
- スキャン手順:ルールエンジンで既知パターンを検出→フラグをファイル/行単位で報告してエンジニア確認
- 規模・効率:466M行を20時間で解析(従来手法で約6.5年相当)
- 自動修正:脆弱性のパッチ生成、必要な自動テストの先行生成、場合によりレガシーをモダン言語へ再実装
- 継続的レビュー:Claude Agent SDK上のred/blueエージェントで攻撃想定と防御評価を実行、95項目でチェック
- 運用ルール:すべての自動修正はエンジニアがレビュー&承認してから本番反映
- 実装の勧め:CI/CDにエージェントを組み込み、テスト自動化を先行、検出→修正→再評価のループを短周期化
- 拡張性:185のレガシーアプリを16の再利用可能なアプリへ統合する計画で、保守性とコストを削減
- 共有資源:技術白書とAIアカデミーでナレッジを公開・普及可能