
Cloudflareは、大規模言語モデル(LLM)を使う侵入テスト用ツールの活動が増えていると報告しました。直近3日間には50を超えるツールの系統が世界各地のCloudflareの顧客をスキャンしようとしたといいます。Cloudflareは、こうしたツールを使う攻撃に備えるため、アクセス制御や異常検知などを組み合わせた6本柱の防御モデルを提案しています。
侵入テストツールの活動が拡大
LLMは、大量の文章などを学習し、指示に応じて文章や処理手順を生成するAIモデルです。侵入テストは、システムの弱点を調べるために攻撃を試みる検査を指します。対象のツールは、LLMを使って複数の検査手順を組み立て、実行するものです。
こうしたツールを実行しているIPアドレスは数千件に達し、日々増加しています。IPアドレスは、ネットワーク上の通信先などを識別する番号です。AIを使う侵入テスト・脆弱性悪用ツールからの1日当たりのリクエスト数は、10月1日以降に30倍になりました。
Cloudflareは、より複雑な攻撃の一部で、盗まれた顧客の認証情報が使われ始めたと報告しています。その例には、環境内で別のシステムへ侵入を広げる動きが含まれます。Cloudflareは、これらのツールが今後も増えると予測しています。
ARTEXの公開停止後に派生版が増加
ARTEXは、攻撃側のセキュリティ作業を自動化するオープンソースの侵入テストシステムです。オープンソースとは、ソースコードを公開し、条件に従って利用や変更ができる形態を指します。開発者のAutumn-27氏は10月8日にARTEXの公開を停止しました。
公開停止後にARTEXから分かれた版が多数生まれました。関連するリポジトリは1万2000件を超え、元のリポジトリを引き継いだ独自の派生版が数百件あります。リポジトリは、プログラムのコードや変更履歴を管理する場所です。
10月8日以降には、同様にAIが複数の作業を統括する仕組みも数百種類作られました。ARTEXには、開発者ごとに異なるバージョン系列があります。RuoJi6による系列では、タスクごとの設定や結果の報告に関する変更が重ねられています。
AIが検査を計画し既存ツールを実行
ARTEXでは、計画を担うAIエージェントが検査範囲と進捗を読み取り、対象資産に結び付いた作業を指示します。AIエージェントは、目標に向けて処理を進めるソフトウェアです。実行役は標準で3つあり、それぞれ指示を受けて検査を行います。
実行役は、ネットワーク調査に使うnmapや通信を行うcurl、ブラウザーを操作するPlaywrightなどを使います。作業で得た事実や発見事項は、対象資産と検査結果を記録する2つのグラフに書き戻されます。書き込みを受けて計画役が再び動き、目標の検証や時間・予算の上限まで作業を繰り返します。
報告を担当するエージェントは、同じ欠陥についての重複した発見をまとめます。別のエージェントは、発見した問題の修正状況を再検査します。担当者は途中で指示やヒントを加えたり、実行中の作業を一時停止したりできます。
ツール呼び出しには防護層を設置
ARTEXの公開コードには、ツールを実行する前に呼び出しを検査する防護層があります。許可・拒否ルールで判定できない呼び出しは、LLMによる審査を経て、必要に応じて人が承認します。バージョン0.3.23以降、LLMによる審査が失敗した場合は人の承認に回されます。
検査対象には、タスクごとの許可・拒否リストを設定できます。標準のブロック対象には、政府や教育機関で使われる一部のドメインが含まれます。スクリプトの審査では、パスやサイズ、内容を識別するハッシュ値を含む記録が使われます。
実行役の通信は記録用のプロキシーを通り、証拠として保存されます。プロキシーは通信を中継する仕組みです。担当者は保存された情報を、発見事項の報告や再検査に利用できます。
自律検査の成績と防御の6本柱
研究者らが作成した脆弱性検査の評価環境「AutoPenBench」には、初歩的な演習から実在する脆弱性まで33の課題があります。同研究では、自律型エージェントの成功率は21%、人の支援を受けたエージェントは64%でした。研究者らは、自律型の結果を実運用には不十分と評価しています。
別の研究では、プログラムのソースコードを対象に、AIによる脆弱性検査を試しました。研究者らは、AIの指示文を調整しない場合、精度は既存の解析ツールSonarQubeと同等以下だったと報告しています。また、性能が伸びない主な理由の一つとして、プログラム内の処理の流れについての理解が不十分だったと分析しています。
Cloudflareの防御モデルは、不正な通信を防ぐWebアプリケーションファイアウォールの導入と、Webアプリケーション全体の異常検知を含みます。さらに、自動化されたアクセスへの対策、高リスクのアプリへの認証を条件としたアクセス、入力データの形式検証と明示的なセキュリティ制御を挙げています。6つ目は、攻撃の状況を把握するための脅威情報の活用です。










