AI × 開発効率化AIペネトレーションテスト

Cairn|侵入までを自律で試すAIペネトレーションテストと防御の考え方


Cairnは、目的地は分かっているが道筋が分からない問題を、AIが探索して解くオープンソースのエージェントです。最初に実証された分野がペネトレーションテスト(侵入テスト)で、弱点を1つ見つけるだけでなく、複数をつなげて目的まで到達できるかを数時間かけて試します。2026年にはカード情報を盗む攻撃で使われたことも報告されました。仕組みと、「弱点はつなげられる」前提での守り方を整理します。

公開2026.10.07
最終更新2026.10.07
読了 14 分 / 約6,900字
この記事をシェアポスト
AI × 開発効率化オープンソースのAIペネトレーションテスト

Cairn
弱点をつなげて届くか

C
本記事の結論
Cairnは「弱点をつなげて目的まで届くか」を自律的に探るAIエージェント

公式READMEは、Cairnを「AI general-purpose state-space search engine(AIの汎用的な状態空間探索エンジン)」と説明しています。最初に自律的なペネトレーションテストで検証したものだとされています(oritera/Cairn(GitHub))。出発点と目的地は決まっていて、道筋だけが分からない問題を、AIが探索して解くための仕組みです。

守る側は、このツールが得意なのは「弱点を1つ見つけること」ではなく、複数の弱点を組み合わせて目的まで届くかを確かめることだと理解しておく必要があります。2026年9月には、実際にカード情報窃取の攻撃で使われたことも報告されました。

01.まず結論:Cairnの位置づけ

ペネトレーションテストは、攻撃者の視点で実際に入り込んでみる検査です。弱点が1つだけでは入れなくても、小さな弱点を何段かつなぐと目的に届くことがあります。Cairnは、この「組み合わせて届くか」を、人間の指示をほとんど要さずに数時間かけて試すところが特徴です。

観点Cairnの位置づけ読み方
分類自律型のAIペネトレーションテストエンジン弱点を探すだけでなく、目的まで到達できるかを試す
提供形態オープンソース(AGPL-3.0)AGPLの義務を負わずに商用・独自の環境で使うには、別途ライセンスが必要
動かすAIClaude Code・Codex・Piを作業役に使う各社のAIを差し替えられる
特徴AI同士が共有の掲示板で協調する1つのAIに全部を任せない構成
注意点攻撃者にも使える両用のツール悪用事例が実際に報告されている
!
大前提
使えるのは、明確な許可がある環境だけ

READMEの責任ある利用についての記載は、明確な許可のないシステムに対して使わないこと、許可のない検査は違法になりうることを求めています。自分が所有しているか、書面で許可を得ている対象に限って使うものです。

02.Cairnとは:開発元・ライセンス・立ち位置

この章の要点02 / 11

AGPL-3.0で公開された汎用の探索エンジン

  1. ペネトレーション以外にも使える脆弱性調査・CTF・数学の証明にも向く
  2. 個人・教育用途はAGPLで使えるライセンスの節の冒頭に書かれた条件
  3. 義務なしの商用は別ライセンスAGPLの義務を負わずに使うなら、作者へ連絡する
個人・教育用途

AGPLのまま使う

  • 個人・教育用途にGNU AGPLv3で提供されている
  • AGPLのオープンソースの義務を守る
商用ライセンス

義務を負わずに商用・独自の環境で使う

  • 作者に連絡して商用ライセンスを得る
  • AGPLのオープンソースの義務は負わない
図:Cairnのライセンスの使い分け(READMEのライセンスの節にもとづく)

Cairnは、GitHubの組織oriteraが公開しているオープンソースのプロジェクトです。READMEのタイトルは「More Than Just AI Penetration Testing — Towards General State-Space Search」です。日本語にすると、AIペネトレーションテストにとどまらず、汎用的な状態空間探索へ、という意味です。ペネトレーションテストに限らず、脆弱性の調査、CTF(セキュリティの腕試しの競技)、数学の証明といった「出発点と目的地が決まっていて、道筋が不明な問題」全般を対象にすると説明されています。

READMEのライセンスの節によると、Cairnは個人・教育用途にGNU AGPLv3で提供されています。商用または独自の環境で、AGPLのオープンソースの義務を負わずに使いたい場合は、作者に連絡して商用ライセンスを得る必要があります。AGPLは、ネットワーク越しにサービスとして提供する場合にもソースの公開義務が及ぶ強いライセンスです。違いの整理はオープンソースライセンスの種類と違い|MIT・Apache・GPL・AGPLの義務と商用利用の可否で扱っています。

脆弱性を自律的に探すオープンソースのツールとしては、Strixもあります。READMEが説明する設計は、Strixが役割別のエージェントの連携、Cairnが共有の掲示板を介した協調と異なります。

03.仕組み:掲示板を介した協調

この章の要点03 / 11

掲示板だけでつながるAIの分業

  1. AI同士は直接話さない共有の掲示板に書き、他のAIが読んで次を決める
  2. 書くのは事実・意図・ヒント確認済みの発見・試す方向・人の判断の3種類
  3. 人はヒントで舵を取れる途中から方向を修正できるので、完全な自動ではない
  4. 作業は3種類の繰り返し開始・判断・実行を、目的に届くまで回す

Cairnの設計の中心にあるのは「ブラックボード(共有の掲示板)」です。作業を担う複数のAIは、お互いに直接やり取りしません。代わりに、1枚の共有の掲示板に書き込み、他のAIがそれを読んで次の行動を決めます。READMEはこの協調の仕方を「stigmergy(スティグマジー)」と呼び、掲示板だけを介して協調する方式だと説明しています。蟻が残したフェロモンを手がかりに、他の蟻が動くのに近い考え方です。

掲示板に書き込まれるものは、次の3種類に整理されています。

種類意味具体的なイメージ
Fact(事実)確認できた客観的な発見「この機能はこの条件で応答する」と分かったこと
Intent(意図)これから試す方向の宣言(まだ未実行)「この発見を使って、次はここを試す」という計画
Hint(ヒント)人間がいつでも差し込める判断「そちらは範囲外」「こちらを優先して」といった指示

図:共有の掲示板を中心にした全体像

READMEの記載をもとに整理。AI同士は直接話さず、掲示板への書き込みと読み取りだけでつながる。

人

Hint(ヒント)を書き込む

いつでも判断を書き込める。AIは次に読むときに取り込む。

共有の掲示板

Fact(事実)・Intent(意図)・Hint(ヒント)が1か所に集まる

作業役のAIは、ここを読み、ここへ書き戻す。

作業の種類 1

Bootstrap

開始時に、問題を直接解こうと試す。

作業の種類 2

Reason

掲示板全体を読み、目的に届いたか、次に何を試すかを決める。

作業の種類 3

Explore

意図を1つ引き受けて実行し、事実を1つ書き戻す。

運営側の部品

DispatcherとServer

Dispatcherは掲示板を読んで作業を割り当て、作業役のコンテナを起動・破棄する。Serverは掲示板の整合性を保つだけ。

作業の進み方は、READMEが示す3種類の作業(開始時の試行・全体の判断・1つの意図の実行)の繰り返しです。

図:掲示板の中で1つの問題が進む流れ(READMEの作業の種類にもとづく)
  1. 1
    開始時の試行

    Bootstrapが、問題を直接解こうと試し、事実を書く。

  2. 2
    全体の判断

    Reasonが掲示板全体を読み、目的に届いたか、次に試す意図は何かを決める。

  3. 3
    1つの意図の実行

    Exploreが意図を1つ引き受けて実行し、確認できた事実を1つ書き戻す。

  4. 4
    人の判断の差し込み

    人がHintを書き込む。AIは次に読むときに取り込む。

Reasonが目的に届いたと判断するまで、2と3が繰り返される。

同じ自律型でも、協調のさせ方はStrixと異なります。

Strix

役割別のエージェントが連携する

  • 偵察・攻撃・侵入後など、役割ごとにエージェントを分ける
  • エージェントどうしが結果を受け渡して進む
Cairn

共有の掲示板で協調する

  • 役割も手順も、あらかじめ定義しない
  • AI同士は直接話さず、掲示板への書き込みだけでつながる
図:StrixとCairnの協調のさせ方の違い(それぞれのREADMEの記載にもとづく)

各AIは、READMEによるとOODAループ(観察・状況判断・意思決定・行動の繰り返し)で動きます。掲示板を読み、次に試す方向を決め、実行し、結果を事実として書き戻す流れを繰り返します。人間はHintを差し込むことで、途中から方向を修正できる点も、完全な自動化ではなく人が舵を取れる設計になっていることを示しています。

04.コンテストでの成績

この章の要点04 / 11

610チームで54問を全問解いた唯一のチーム

  1. 54問をすべて解いた参加は610チーム・1,345人。全問解答は唯一
  2. 総合順位は3位READMEに書かれた開発者自身の記録
  3. 大会前は一度も試していない全工程がそろって動いたのは、当日の午前4時

READMEによると、CairnはTencent Cloud Hackathon(第2回)のAIペネトレーションテスト部門に出場しました。結果は次のとおりです。

図:Tencent Cloud Hackathon(第2回)でのCairnの結果

READMEに書かれた開発者自身の記録。

参加規模

610チーム・1,345人

解いた問題

54問すべて

全問を解いたのは、Cairnのチームだけ。

総合順位

3位

READMEは、このシステムは大会前に一度も試されておらず、パイプライン全体が初めて動いたのは大会当日の午前4時だったとも書いています。

!
読み方
大会成績は開発者自身の記録

READMEに書かれた記録で、第三者が検証した数値ではありません。

05.動かすために必要なもの

この章の要点05 / 11

macOSかLinuxで動く、3種類のAIの作業役

  1. 動作はmacOSかLinuxPython 3.12以上。Dockerはローカルモードなら任意
  2. 3種類のAIを作業役に使うClaude Code・Codex・Piを差し替えて使える
  3. 費目はソフト・AI利用料・実行環境AGPLの条件なら、無料なのはソフトウェアだけ

READMEによると、動作環境はmacOSまたはLinux、Python 3.12以上で、実行にはDockerを使います(ローカルモードではDockerは任意)。AIの作業役としては、Claude Code・Codex・Piの3つに対応しています。Cairn自体は無料でも、これらのAIを動かす利用料や、それらを動かす環境は別途かかります。

費目内容目安
ソフトウェアCairn本体(AGPL-3.0)AGPLの条件で使うなら無料。義務を負わずに使うには商用ライセンスが必要
AIの利用料作業役のAI(Claude Code・Codexなど)の利用料使う量と検査の長さで変動
実行環境Docker、または手元のマシンローカルでもクラウドでも可

使うAIによって精度も費用も変わるため、検査の対象や時間をあらかじめ決めておくことが前提になります。

06.悪用された報告:連鎖する攻撃

この章の要点06 / 11

弱点の連鎖を前提にした備え

  1. Cairnは侵入を進める役として使われたGambitの調査が報告した、攻撃キャンペーンでの役割
  2. 弱点は連鎖して深刻になる単独では軽くても、つなぐと目的まで届く
  3. 備えは鎖を断つ設計認証・権限・通信を区切り、戻せる状態を持つ
!
守る側の前提
弱点は連鎖して届くものとして備える

2026年9月にGambitが公開した調査によると、オンライン小売店を狙う一連の攻撃で、Cairnは実際の侵入を進める役として使われました。

この攻撃では、Cairnのほかに、脆弱性を探す役のStrixと全体を指揮する役のエージェントが組み合わされていました。キャンペーン全体はStrix|脆弱性を自動で見つけるAIペネトレーションテストと防御の考え方にまとめています。指揮役のエージェントは、特徴が一致するHermes AgentとしてHermes Agentの使い方とできること|記憶とスキルで育つAIエージェントで扱っています。攻撃の経過の詳細は、再現に使えてしまうため、ここでは書きません。

この事例から読み取れるのは、攻撃の深さも自動化の対象になっているということです。個々の弱点は単独では致命的でなくても、連鎖すると深刻な結果になります。弱点の発見だけでなく、それを組み合わせて目的まで届かせる部分も、自動で試せるようになっています。

07.守る側の備え:連鎖を断つ設計

この章の要点07 / 11

弱点の連鎖を途中で断つ設計

  1. 外から見える部分を減らす公開面を棚卸しし、足がかりの弱点を残さない
  2. 認証・権限・通信を区切る1つ突破されても、次へ進めない設計にする
  3. バックアップは本番と別の場所同じ場所に置くと、侵入時に一緒に削除されうる

弱点がつなげられる前提に立つと、守り方の発想が変わります。すべての弱点を事前に塞ぐのは難しくても、鎖のどこか1か所で断てば、目的には届きません。さらに、万一届かれても被害を広げず、戻せる状態にしておくことが重要です。

図:弱点をつなげる攻撃を、途中で止める3つの層
  1. 1
    外から見える部分を減らす

    公開面の棚卸しと更新で、最初の足がかりになる弱点を残さない。

  2. 2
    鎖を断つ

    認証の強化、権限の最小化、内部ネットワークの分離で、1つ突破されても次に進めなくする。

  3. 3
    守り切れなくても戻せる

    ログによる検知と、本番から切り離したバックアップで、被害を限定して復旧できるようにする。

鎖を途中で断つ設計

連鎖する攻撃は、各段階で「次に進める材料」を手に入れて進みます。そこで、材料を渡さない設計が効果的です。

攻撃が頼る材料断つための考え方具体策の方向
弱い認証・回避の余地認証を突破されても次に進ませない多要素認証の設定漏れ・例外の見直し、管理画面の公開範囲の制限
広すぎる権限1つ奪われても被害を限定するアプリ・サーバー・クラウドの権限を必要最小限にする
内部に置かれた認証情報見つけても使えないようにする認証情報をコードや設定に直書きせず、専用の保管庫で管理して定期的に更新する
内部ネットワークの見通しのよさ横に広がれないようにする本番・開発・管理の領域を分け、不要な通信は遮る

権限を必要最小限にする考え方は、AIエージェントに強い権限を持たせる場面でも同じです。触らせる範囲の決め方は別記事で詳しく整理しています。あわせてご覧ください。

関連記事

AIセキュリティ・権限設計|エージェントに何を触らせ、何を触らせないか

AIエージェントに強い権限を持たせるときの、触らせる範囲の決め方を整理しています。

続きを読む

被害の限定と復旧

Gambitの報告は、復旧に数週間かかる体制では、短時間で進む侵入に追いつけないと指摘し、何を最低限動かし続けるかをあらかじめ決めておく必要があるとしています。

バックアップを本番と同じ場所に置いていると、侵入されたときに一緒に失われるおそれがあります。本番から切り離した場所に、書き換えられないバックアップを持つことと、実際に戻せるかを事前に試しておくことが、最後の砦になります。

📘
補足
攻撃の手順を追うより、断ち切る場所を決める

守る側に必要なのは、攻撃が具体的にどう進むかを再現できることではありません。「どの段階で何を渡さないか」「失われたら何で戻すか」を決めておくことです。手口は変わっても、この考え方は変わりません。

08.利用上の注意

この章の要点08 / 11

許可・隔離環境・時間と範囲・ライセンスの4条件

  1. 許可がある対象だけ自社所有か、書面の許可がある範囲に限る
  2. 本番から隔離して実行検査の影響が本番のデータや稼働に及ばない専用環境
  3. 時間と範囲を区切る数時間走る性質なので、止める条件を先に決める
  4. ライセンスの条件を決めるAGPLの義務を守るか、商用ライセンスを得るか

自社の検査にCairnのようなツールを使う場合は、事前に次の点を決めてから始めてください。

論点決めること理由
対象と許可自社所有か、書面の許可がある範囲に限る許可のない検査は違法になりうる
実行環境本番から隔離した専用の環境で動かす検査が本番のデータや稼働に影響しないようにする
時間と範囲実施する時間帯と、触ってよい範囲を区切る数時間走り続ける性質上、止める条件が要る
ライセンスAGPLの義務を守って使うのか、義務なしで使うのかを決めるREADMEは、義務を負わずに商用・独自の環境で使う場合に、作者への連絡と商用ライセンスを求めている

自社のシステムであっても、クラウドやSaaSの上で動いているものは、提供元のテストの条件を先に確認してください。基盤は他社の管理下にあることが多いためです。

09.よくある質問(FAQ)

Cairnは誰が作っていますか?

GitHubの組織oriteraが公開しているオープンソースのプロジェクトです。ライセンスはGNU AGPLv3で、AGPLのオープンソースの義務を負わずに商用・独自の環境で使うには、作者に連絡して商用ライセンスを得る必要があるとREADMEに書かれています。

CairnとStrixはどう違いますか?

どちらも脆弱性を自律的に探すオープンソースのAIツールです。READMEが説明する設計は、Strixが役割別のエージェントの連携、Cairnが共有の掲示板を介した協調という違いがあります。

他人のサイトにCairnを使ってもいいですか?

いけません。自分が所有しているか、書面で明確な許可を得ている対象にだけ使えます。許可のない検査は、日本では不正アクセス禁止法に触れるおそれがあります。

弱点をつなげられる攻撃に、どう備えればいいですか?

鎖を途中で断つ設計と、戻せる状態の用意が基本です。認証の強化、権限の最小化、内部ネットワークの分離、認証情報の保管庫での管理に加えて、本番から切り離したバックアップを持ち、復旧を事前に試しておきます。代表的なWebアプリケーションの弱点はOWASP Top 10にまとまっており、個々の弱点を減らす観点に使えます。

10.まとめ

Cairnは、複数のAIが共有の掲示板で協調し、弱点をつなげて目的まで届くかを自律的に試すオープンソースのエージェントです。正規の検査に使える一方、同じ力が攻撃にも使われ、実際にカード情報窃取の攻撃で悪用されました。弱点がつなげられる前提で、鎖を途中で断ち、戻せる状態を持っておくことが、守る側の備えの軸になります。

セキュリティ×AI活用の相談

自動化された攻撃に、自動化で備える体制を整えませんか

弊社ではAIフル活用の業務設計を提供しています。権限の見直しやバックアップ・検知の運用設計まで、無料相談で現状に合わせて整理します。

TANTOU の詳細を見る

11.技術的な仕組み(詳しく知りたい方向け)

この章の要点11 / 11

掲示板を読んで動く観察・判断・実行の繰り返し

  1. 観察・状況判断・意思決定・行動掲示板を読み、方向を決め、実行して書き戻す
  2. やり取りは掲示板だけAI同士の直接の会話はなく、書き込みと読み取りでつながる
  3. 発見は掲示板に残る書き込まれた事実は、他のAIが次の観察で使える
図:作業役が繰り返す観察から行動までの流れ(OODAループの各段階を、掲示板の読み書きに当てはめた説明)
1観察

掲示板を読んで、現状をつかむ。

2状況判断

事実から、試す価値のある方向を絞る。

3意思決定

次に試す意図を決める。

4行動

実行して、結果を事実として書き戻す。

書き戻された事実は、次の観察で他のAIにも読まれる。

技術的な仕組みブラックボードとOODAループで協調する仕組みを見る

Cairnは、複数のAIが直接会話する代わりに、共有の掲示板(ブラックボード)に事実と意図を書き込んで協調します。READMEによると、作業は、掲示板を読んで次の方向を考えるタスクや、決めた方向を実行して結果を書き戻すタスクなど、役割の違うタスクに分かれています。

AI同士が直接やり取りしない設計で、書き込まれた事実は掲示板に残ります。人間のヒントも、同じ掲示板に書き込まれて次の読み取りで取り込まれます。Strixが役割別のエージェントを連携させる構成であるのに対し、Cairnは掲示板に情報を集約する構成という違いがあります。

AI・AIエージェント活用 基礎知識集

一覧に戻る →
この記事をシェア
澤田 翔太(Shota Sawada)
この記事を書いた人

澤田 翔太

株式会社クリプタル 代表取締役

1988年生まれ、慶應義塾大学卒。創業メンバーとして関わった株式会社セールスサポートを株式会社ネオマーケティング(東証STD 4196)に売却。株式会社クリプタルでも複数の事業立ち上げと売却を経験し、2022年9月には婚活・恋愛メディア「シッテク」「婚活会議」を株式会社ベビーカレンダー(東証GRT 7363)へ売却。現在はAI業務支援事業、TANTOU事業、グロースハック支援事業、メディア事業、SEOコンサルティング事業を手がける。