AIクローラーCrawl4AIの脆弱性、安全なのは0.9.2以降
AI向けのデータ収集で人気のクローラー「Crawl4AI」のDockerAPIサーバーに、認証不要で悪用できる重大な欠陥が見つかりました。攻撃者はサーバーをだましてクラウドの内部情報を取りに行かせ、アクセスキーを盗み出せます。対象は0.8.7より前の全バージョンで、修正版0.8.7には事前認証RCEなど複数の欠陥の修正も含まれます。早急な更新を。
目次
AI向けのデータ収集で人気のクローラー「Crawl4AI」のDockerAPIサーバーに、認証不要で悪用できる重大な欠陥が見つかりました。攻撃者はサーバーをだましてクラウドの内部情報を取りに行かせ、アクセスキーを盗み出せます。対象は0.8.7より前の全バージョンで、修正版0.8.7には事前認証RCEなど複数の欠陥の修正も含まれます。早急な更新を。
AIに学習・参照させるためのデータをWebから集める用途で人気のオープンソースのクローラー(Webページ収集ツール)「Crawl4AI」は、0.9.0より前のすべてのバージョンに、ログイン不要で悪用できる複数の重大な欠陥を抱えています。とくにネットワークに公開して使う「Docker APIサーバー」という構成が対象で、外部の攻撃者にサーバーを踏み台にされ、社内ネットワークやクラウドの内部情報、アクセスキーを盗まれる恐れがあります。これから導入する場合も、いま運用している場合も、確実に塞ぐには最新の安定版(2026年7月15日公開の0.9.2)へ更新するのが答えです。
最初に注目を集めたのは、認証不要で悪用できる欠陥 CVE-2026-56266 です。種類は「SSRF(サーバーサイド・リクエスト・フォージェリ)」で、外部から受け取ったURLをサーバーが言われるがままに取りに行ってしまう問題です。攻撃者は本来外から触れない社内ネットワークやクラウドの内部情報を、サーバー自身に肩代わりして取得させられます。CVSSスコアはバージョン3.1で8.6、より新しいバージョン4.0では9.2(いずれも最上位クラスの「重大」)。セキュリティアドバイザリ(GHSA-365w-hqf6-vxfg)とともに2026年6月に公開され、この欠陥自体は0.8.7で修正されました。
ただし、更新先を0.8.7や0.8.9で止めると危険です。その後の点検で、Docker APIサーバーの別の入口を突く認証不要の新たなSSRF(CVE-2026-57573)や、認証なしでサーバー上のコマンドを実行される欠陥(CVE-2026-57572、CVSS 10.0)が相次いで見つかり、これらは0.9.0でまとめて修正されました。CVE-2026-57573は0.9.0より前のすべてのバージョンが対象で、0.8.9でも残ります。いま更新するなら0.9.0以降、実運用では最新の0.9.2にしておくのが確実です。
| 対象ソフト | Crawl4AI(特にDocker APIサーバー構成) |
| 主な脆弱性番号 | CVE-2026-56266 / 56265 / 53753 / 53755 / 57571 / 57572 / 57573 |
| 最も高い深刻度 | CVSS 10.0(CVE-2026-57572:無認証のコマンド実行) |
| 欠陥の種類 | SSRF(CWE-918)・コード実行 ほか |
| 影響を受ける版 | 0.9.0 より前の全バージョン(欠陥ごとに範囲は異なる) |
| 確実に塞げる版 | 0.9.0 以降(実運用は最新の 0.9.2) |
| 攻撃の条件 | ログイン不要 / ネットワーク経由(Docker APIサーバー公開時) |
この欠陥は誰に、どんな被害をもたらすのか
狙われるのは、Crawl4AIのDocker APIサーバーをインターネットに公開している運用者を探し、認証なしで叩く攻撃者です。AIの開発やデータ収集の検証で手早く立てたサーバーが、そのまま外から見える状態になっている、というのが典型的な危険な形です。
攻撃者はクロール先のURLが検証されていないことを突き、サーバー自身に、社内ネットワークやクラウドの内部アドレスへアクセスさせます。とりわけ狙われるのが、クラウド上の仮想マシンが自分の設定や認証情報を取得するための内部アドレス(クラウドメタデータ、例: 169.254.169.254)です。ここへ到達されると、クラウドのアクセスキーが盗まれます。
クラウドの鍵を握られると、被害はそのサーバー1台では終わりません。攻撃者はその鍵でクラウド環境全体に侵入し、保存データの持ち出しや破壊、別のサービスの乗っ取り、不正な課金につなげます。社内ネットワーク側の内部サービスを片端から探索される恐れもあります。Crawl4AIはAIのデータ収集基盤として組み込まれることが多く、本番のパイプラインに置かれていれば影響は大きくなります。だからこそ、後述する更新と公開範囲の見直しが急がれます。
補足すると、危ないのは主に「Docker APIサーバー」としてネットワークに公開して使う構成です。Crawl4AIを自分のプログラムの中でライブラリとして呼び出すだけの使い方なら、この欠陥の直接の対象にはなりにくいと考えられます。まずは自分たちがどの形でCrawl4AIを動かしているかの確認が出発点です。
技術的に何が起きているのか
分類はCWE-918(SSRF)です。Crawl4AIの /crawl や /llm などのエンドポイントが、与えられたURLを十分に検証せずに取得してしまう点が核心です。内部アドレスへのアクセスを弾くための検査があっても、「IPv6にマッピングしたIPv4アドレス」のような変則的な書き方で検査をすり抜け、内部やクラウドメタデータへ到達できると報告されています。
CVSSのベクトルは v3.1 で AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N。ネットワークから・低い難度で・権限もユーザー操作も不要、影響は本体を越えて波及し、機密性への影響が「高」です。情報の読み出し(窃取)に重きがある一方、直接の書き換えや停止は評価に含まれていませんが、盗まれるのがクラウドの鍵である以上、二次被害は深刻になり得ます。
0.8.7では関連する複数の欠陥が同時に修正された
今回のCVE-2026-56266は単独ではなく、Crawl4AIのDocker APIサーバーに見つかった一連の欠陥の一つとして、0.8.7でまとめて修正されました。アドバイザリは、ファイル書き込み・SSRF・認証回避・スクリプト実行などを含むとしています。中でも注意したいのが、事前のログインなしにサーバー上でコードを実行できると報告された事前認証RCE(CVE-2026-53753)です。つまり0.8.7は、単発の修正ではなくDocker APIサーバーまわりの安全性をまとめて引き上げる更新であり、必ず適用すべきものです。
CVE-2026-56265(CVSS 9.8): Docker APIサーバーのJWT署名鍵ハードコード ― 修正は0.8.7
0.8.7で塞がれた欠陥のうち、単体でも重大なのがCVE-2026-56265です。Docker版APIサーバーは、利用者を確認するためにJWT(ジョット)と呼ばれるトークンを発行します。JWTは「この入館証は本物だ」という署名が付いた電子的な通行証で、その署名が正しいかどうかを確かめる鍵が偽造防止の要になります。ところがCrawl4AIでは、この署名鍵の初期値が公開ソースコードの中に固定で書き込まれていました(CWE-798:ハードコードされた認証情報)。
鍵が誰にでも読める状態だと、攻撃者は固定の署名鍵を使って「自分は管理者だ」と書いた偽のトークンに、本物そっくりの署名を付けて作ることができます。サーバーは署名が正しいかしか見ないため、偽造されたトークンを正規の入館証として受け入れてしまいます。パスワードを盗む必要も、総当たりで破る必要もありません。権限が一切不要(PR:N)でネットワーク越しに成立するため、深刻度はCVSS 9.8と評価されています。
0.8.7だけでは足りない:0.9.0までに直った欠陥
Docker APIサーバーの問題は、CVE-2026-56266の一件では終わりませんでした。0.8.7から0.9.0にかけて、認証なしのコード実行や別経路のSSRFが続けて修正されています。中でも、更新先の版を左右する重要なものを順に見ていきます。とくに最後のCVE-2026-57573は、0.8.9でも塞ぎきれずに残るため、確実に対処するには0.9.0以降が要る決め手になります。
CVE-2026-53753(CVSS 9.8): 認証なしでサーバー上のコードを実行(サンドボックス回避)
冒頭のSSRFよりも重い、認証なしの遠隔コード実行です。Crawl4AIには、抽出ルールなどで簡単な式を安全に評価するための仕組み(_safe_eval_expression)があります。ところが、その安全検査は「_(アンダースコア)で始まる属性」しか弾かない作りでした。Pythonの内部オブジェクトには gi_frame・f_back・f_builtins のようにアンダースコアで始まらない危険な属性があり、これらを連鎖させると検査をすり抜けて任意のコードを実行できます(サンドボックス回避、CWE-94)。窓口は POST /crawl で、JWTが既定で無効のため認証なしで成立します。修正は0.8.7(アドバイザリ)。Docker APIサーバーを公開している場合は最優先で塞ぐべき欠陥です。
CVE-2026-53755(CVSS 8.6): プロキシ設定経由のSSRF ― 修正は0.8.9
もう1件はSSRFです。Docker APIサーバーが、クロール対象URLにはSSRF対策の宛先チェックをかけるのに、プロキシのアドレスにはかけていなかったため、内部IP向けのプロキシを指定して内部サービスやクラウドメタデータへ到達できます(CWE-918、NVD)。このSSRFはNVD上、0.8.9以降で修正とされています。ただし、これで安心はできません。次に挙げるCVE-2026-57573が0.8.9でも残るため、確実に塞ぐには0.9.0以降が必要です。
CVE-2026-57573(CVSS 8.6): ストリーミング用の入口を突く、もう一つの認証不要SSRF ― 修正は0.9.0
0.8.9でも塞ぎきれずに残ったのが、このCVE-2026-57573です。Docker APIサーバーには、結果を少しずつ返す「ストリーミング」用の入口(/crawl/stream)があります。ここは通常のクロールで行っている宛先チェック(validate_url_destination)を通さずにURLを取得していたため、認証なしで内部・プライベート・リンクローカルのURLをサーバーに取りに行かせ、その中身を応答として受け取れます(CWE-918)。深刻度はCVSS 8.6(AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N)。対象は0.9.0より前の全バージョンで、0.8.7・0.8.9でも残ります。修正版は0.9.0(GHSA-wm69-2pc3-rmmf)。セキュリティ企業のIONIXは、この欠陥について「悪用の試みを継続的に観測している」と報告し、すぐの更新を促しています。
CVE-2026-57572(CVSS 10.0): ブラウザの起動オプションを悪用した、無認証のコマンド実行 ― 修正は0.9.0
一連の欠陥のなかで最も高い深刻度が付いたのが、このCVE-2026-57572です。Docker版APIサーバーは、ページを取りに行くブラウザ(Chromium)の起動時オプションを、リクエストの中のbrowser_config.extra_argsという項目から受け取っていました。ここに十分な確認がなく、攻撃者が--gpu-launcherや--renderer-cmd-prefixといった「別のプログラムを起動させる」オプションを--no-zygoteと組み合わせて送り込むと、Chromiumが攻撃者の指定したコマンドを実行してしまいます。対象は/crawl・/crawl/stream・/crawl/jobの各窓口で、Docker版は初期状態でログインを求めないため、たった1回のリクエストでサーバー上のコマンド実行に至ります(CWE-88/CWE-94)。0.9.0では、信頼できないリクエストからのextra_argsを拒否するよう境界が引き直されました(GHSA-r253-r9jw-qg44)。
CVE-2026-57571(CVSS 9.6): 保存ファイル名の細工でフォルダの外に書き込み ― 修正は0.9.0
クロール中にファイルを保存する処理で、ファイル名の扱いが甘い欠陥です。攻撃者が「上の階層へ」をたどる指定や絶対パスを含む名前を仕込むと、本来の保存先フォルダの外へファイルを書き出せてしまいます。書き込まれる中身は攻撃者が用意したものになり得るため、最終的にコマンド実行にまで発展しうると説明されています(CWE-22/CWE-59、GHSA-2jq4-q6vv-4cp3)。突くには攻撃者が用意したページをクロールさせるなどの前提が必要ですが、成功すればサーバー上に任意の中身を置かれます。
この2件も危険度は最上位クラスで、いずれも0.9.0で修正されています。これらの点からも、更新先は0.9.0以降、実運用では最新の0.9.2が答えになります。
いま分かっていること・まだ分からないこと
✓ 確認済みの事実
- ✓CVE-2026-56266は認証不要のSSRFで、内部・クラウドメタデータへ到達し得る。修正は0.8.7(NVD / Crawl4AIアドバイザリ)
- ✓0.8.7では認証なしのコード実行(CVE-2026-53753、CVSS 9.8)など複数の関連欠陥も同時に修正された
- ✓その後も認証不要のSSRF(CVE-2026-57573)や認証なしのコード実行が見つかり、0.9.0でまとめて修正。確実に塞ぐには0.9.0以降(最新は0.9.2)が必要
- ✓セキュリティ企業IONIXはCVE-2026-57573について「悪用の試みを継続的に観測している」と報告している(IONIX)
? 現時点で未確認のこと
- ?本命のCVE-2026-56266そのものの実環境での悪用や、公開された実証コード(PoC)は、2026年7月23日時点で確認できていない
- ?一連のCVE(56266 / 53753 / 53755 / 57573)は、2026年7月23日時点でCISA KEV(実際に攻撃されている脆弱性の米政府リスト)には未登録
いま何をすべきか
最優先は、Crawl4AIを修正版に更新することです。0.9.0より前を使っているなら、検証用・本番用を問わず、いずれかの欠陥の対象だと考えてください。とくにDocker APIサーバーとして動かしている場合は急いで適用すべきです。更新先は、途中の0.8.7や0.8.9ではなく、一連の欠陥を確実に塞げる0.9.0以降にしてください。0.8.7で認証なしのコード実行(CVE-2026-53753)とSSRF(CVE-2026-56266)が、0.8.9でプロキシ経由のSSRF(CVE-2026-53755)が塞がれますが、ストリーミング経路のSSRF(CVE-2026-57573)は0.9.0まで残ります。実運用では最新の安定版0.9.2にしておくのが確実です。
すぐに更新できない場合は、Crawl4AIのサーバーをインターネットに直接公開せず、社内ネットワークやVPNの内側に置く、アクセス元を絞る、といった対策で攻撃の入口をふさげます。クラウド上で動かしている場合は、認証情報を盗まれても被害を抑えられるよう、メタデータの取得を最新方式(トークン必須の方式)に限定する、クローラーに付与する権限を最小限にする、といった備えも効きます。あわせて、Crawl4AIのようなOSSパッケージの脆弱性を取りこぼさないために、OSSの依存関係を継続的に点検する仕組みを持っておくと、次の一件にも素早く動けます。
まとめ
Crawl4AIは、AI向けの人気クローラーでありながら、0.9.0より前のすべてのバージョンに、Docker APIサーバーを狙う複数の重大な欠陥を抱えています。認証なしでサーバーを内部探索の踏み台にできるSSRF(CVE-2026-56266ほか)、無認証のコマンド実行(CVE-2026-57572、CVSS 10.0)や認証なしのコード実行(CVE-2026-53753、CVSS 9.8)、ストリーミング経路の別のSSRF(CVE-2026-57573)、認証用の署名鍵がソースコードに埋め込まれていた問題(CVE-2026-56265、CVSS 9.8)などで、クラウドメタデータ経由でアクセスキーまで盗まれる恐れがあります。0.8.7・0.8.9では塞ぎきれない欠陥が残るため、確実に塞ぐには0.9.0以降、実運用では最新の0.9.2が必要です。
2026年7月23日時点で、これらがCISA KEVに載るような広範な悪用は確認されていませんが、後から見つかったCVE-2026-57573については悪用の試みが観測されたとの報告があります。AI開発の現場では、データ収集ツールを手早く立てて公開したまま忘れがちです。今回をきっかけに、更新と「どのサーバーがどんな公開状態で動いているか」の把握をまとめて点検しておくことをおすすめします。
参照元
- ・NVD — CVE-2026-56266 詳細
- ・セキュリティアドバイザリ GHSA-365w-hqf6-vxfg
- ・Crawl4AI 公式セキュリティ情報(GitHub)
- ・関連:事前認証RCE CVE-2026-53753(CVSS 9.8)
- ・NVD — CVE-2026-53755(プロキシ経由SSRF、CVSS 8.6・修正0.8.9)
- ・NVD — CVE-2026-57573(ストリーミング経路のSSRF、CVSS 8.6・修正0.9.0)
- ・IONIX — CVE-2026-57573(悪用の試みを観測との報告)
- ・GitHub Security Advisory — GHSA-wm69-2pc3-rmmf(CVE-2026-57573)
- ・NVD — CVE-2026-57572(無認証のコマンド実行、CVSS 10.0・修正0.9.0)
- ・GitHub Security Advisory — GHSA-2jq4-q6vv-4cp3(CVE-2026-57571)
- ・NVD — CVE-2026-56265(JWT署名鍵ハードコード、CVSS 9.8・修正0.8.7)
- ・PyPI — Crawl4AI(最新の安定版 0.9.2)
- ・CWE-918(SSRF)
- ・AWS — インスタンスメタデータ(IMDS)の解説

堀川 慎
Backend Engineer / AWS / Django / Go