ハクソク

世界を動かす技術を、日本語で。

AIサイバーセキュリティはプルーフ・オブ・ワークではない

概要

  • Proof of Workバグ発見の違い解説
  • LLMの知能レベルがバグ発見能力を決定
  • OpenBSD SACKバグを例に議論
  • 弱いモデルはバグを理解できない
  • 将来のサイバーセキュリティはモデルの質が鍵

PoW(Proof of Work)とバグ発見の根本的な違い

  • Proof of Workは、ハッシュ衝突を見つける作業
    • 作業量(N)が増えるほど難易度が指数関数的に上昇
    • しかし、十分なリソースがあれば必ず条件を満たすSが見つかる
    • より多くの「作業能力」を持つ側が最終的に勝利
  • バグ発見はPoWとは異なる性質
    • LLM(大規模言語モデル)は実行ごとに異なる分岐を辿る
    • しかし、コードの状態に基づく分岐は最終的に飽和
    • モデルをM回サンプリングしても、限界は「M」ではなく「I(知能レベル)」で決まる

OpenBSD SACKバグが示すもの

  • 劣ったモデルは、無限回サンプリングしても本質的なバグに気付かない
  • 具体例
    • start windowのバリデーション欠如
    • 整数オーバーフロー
    • NULLであってはならないノードへの分岐
    • これらが組み合わさって初めてバグが発生
  • 弱いモデルはパターンマッチングしかできず、真の理解やエクスプロイト生成が不可能
  • 強いモデルほどハルシネーションが減り、逆にバグの兆候すら見逃す場合も

サイバーセキュリティの未来像

  • サイバーセキュリティは、Proof of Workのように「GPUが多い方が勝つ」時代ではない
  • より優れたモデル高速なアクセスを持つ側が有利
  • 弱いモデルがOpenBSD SACKバグを発見できるという主張は誤り
  • GPT 120B OSSなどで実際に試すことを推奨
  • Mythosのような真の理解力を持つモデルだけが本質的なバグを発見可能

補足情報・関連リンク

  • Proof of Workとサイバーセキュリティの比較議論(Hacker News)
    • https://news.ycombinator.com/item?id=47769089

Hackerたちの意見

それは、攻撃者と防御者の間に非対称性があるため、作業の証明にはなりません。攻撃者は、防御者が見つけてパッチを当てる前に、利用可能な問題を一つ見つければいいだけです。一方、防御者は最終的にすべての問題を見つける必要があり、すべてを修正できたかどうかも確信が持てません。防御者は問題を発見するだけでなく、それを展開する必要もあります。パッチをインストールするのには時間がかかりますし、パッチが利用可能になった時点で、攻撃者はそれを使ってエクスプロイトを逆解析し、パッチが当たっていないシステムを攻撃することができます。最近では、これが数時間のうちに起こることもありますし、AIがこれを加速させる可能性もあります。また、防御者がパッチを作成しなかったり、ユーザーが経済的に見合わないためにパッチをシステムに展開しないことも十分に考えられます。安価なIoTセンサーなどは、欠陥を見つけて修正するためにコストをかける利益がないため、脆弱性が放置されることがあります。たとえ修正されても、ユーザーはパッチについて知らなかったり、時間をかけて展開する価値がないと感じるかもしれません。確かに、レビューを行い、問題を修正し、パッチを展開するリソースを持っている大規模なシステムもあります。しかし、長い間脆弱であり続けるコードの膨大なインストールベースが存在します。
> 攻撃者と防御者の間の非対称性のため、これはプルーフ・オブ・ワークではない。攻撃者は防御者が見つけてパッチを当てる前に、利用可能な問題を一つ見つければいいだけだけど、防御者は最終的にすべての問題を見つける必要がある。そしてそれでも、すべてを修正したかどうか本当に確信できない。これはケースバイケースだね。構造的に除外できる脆弱性のクラスもある。これは通常、実用的すぎて難しいと見なされるけど、AIがこれを変える可能性があるんだ。
ヘッドラインには完全に同意するけど、こんなに多くの人が「Mythos」に詳しいと暗黙的に主張しているのは驚きだね。Mythosはクローズドで、現在はウクライナで現実との接触に失敗した過剰評価されたアンドゥリルのドローンの状態だよ。もし誰かが神話のようなMythosにアクセスできたら、現実との接触が見えるだろうね。
私の理解では、世界のいくつかの大企業の従業員が今、アクセスできる状態なんだ。そういう従業員はHNみたいなところで過剰に代表されてるね。
いくつかの代替シナリオを考えてみたけど、どれくらい信じるべきかはわからないな。- もし特定の能力レベルに達したら、基本的にバグがない状態になるとしたら?強い意味でそうなるとはちょっと懐疑的だけど、特定の特性を正式に証明しても、セキュリティはしばしば脅威モデルに大きく依存するからね(例えば、サイドチャネル攻撃や定常時間など)。でも、実際には問題が少なくなることもあるのかな? - もし特定の能力の閾値を超えたら、弱いモデルが強いモデルの代わりになる可能性があるとしたら、トークンを使う覚悟があればね。コーディングの例を挙げると、GPT-3は全くコードが書けなかったから、GPT 5.4でXトークンを持つ方が、GPT-3で100Xトークンを持つよりもいいと思う。でも、GPT 5.4でXトークンを持つのと、GPT 5.2で100Xトークンを持つのはどっちがいいかな?それはちょっと曖昧で、無関心曲線みたいなものがあるかもしれないね。
正直なところ、もしすべてのソフトウェアプロジェクトがAIベースのセキュリティチェックをコードに対して実行したら、ソフトウェアの世界はもっと安全になると思うよ。もちろん、スキルのある人がいるプロジェクトには必要ないものもたくさんあるけど、大企業の人気ソフトウェアプロジェクトでも全く気にしないものが多かったからね。だから、基本的なモデルでも問題を見つけられるはず。あと、トークンを払う能力がますます重要になってきていると感じる。これは不公平だよね。お金がないとアクセスできないから、階級闘争が悪化しているような気がする。わかるかな?
> 基本的にバグがないと言えるけど、ほとんどのソフトウェアには簡単に悪用できるバグが少しはあると思う。こういうバグが存在すると、見つけて修正するよりもコストがかかるからね。他のバグ、システムの簡単な侵入や請求の回避に繋がらないものは、今のように残るかもしれない。
> 異なるLLMの実行は異なる分岐を取るが、最終的にはコードの可能な状態に基づく分岐が飽和する。 LLMでは、停止問題さえもプロサブスクリプションの料金を払うかどうかの問題に過ぎない!
停止問題が解決不可能であることの証明は、通常特定の「敵対的」な機械を使って行われる。実際には、特定の現実のプログラムに対して停止問題が答えられる可能性は非常に高いんだ。
全体的な枠組みがあまり面白くないと思う。コードをもっと調査すれば、もっと多くのバグを見つけて悪用したりパッチを当てたりできるっていうのは、そんなに目新しい観察じゃないよね。「Claudeによって」という言葉を付け加えても、実質的には何も変わらない。数人の人間に同じことをさせることだってできるし、それは何十年も前から行われてきたことだよ。
そうだね、でも面白いのは、トークンの価格でオフ・ザ・ラックで買えるってこと。セキュリティ専門家を探して、リクルーターにお金を払って、雇って、専門家が始めるのを待って、サインボーナスを払って、専門家レベルの給料を払って、社会保険税や医療保険を払って、プロジェクトがキャンセルされたときに解雇パッケージを払う必要がないんだ。必要なときにトークンを買って、必要ないときは買わない。これが、クラウドコンピューティングが企業所有のサーバーよりも面白くなった理由と同じダイナミクスだよ。ビジネスのニーズに応じて柔軟に対応できるし、開発費用の予算に入るから、給与ではなく、採用凍結中でもできるんだ。
これが一番変な意見だと思う。人間がコーディングやバグを見つけるのを学ぶのにはすごく時間がかかる。どんな人間でも、合理的な時間とお金でそれをできるわけじゃない。Claudeは実質的に自動化で、ハードウェアがあれば、モデルのコピーをいくらでも実行できる。工場はハードウェアを作るのが人を訓練するよりもずっと早い。HNで産業革命を否定するのを見るのは変な感じだね。
かなりコストが下がるね。優秀なセキュリティ専門家って、年収どれくらいだっけ?その人は8時間働くわけだし。今はお金を投げるだけで済むんだよね。CIAとかは確実に2万ドル以上払ってる(それが複雑なエクスプロイトのコストとしてアンソロピックのレッドチームが言ってた)ゼロデイのためにね。もし誰かがこの周りにフレームワークを作ったら、文字通りコピー&ペーストして、お金を投げてスケールさせることができる。人間ではできないことだよ。
アナロジーで争うのはあんまり意味ないと思うけど、もし付き合ってくれるなら、これを聞きたいな。幅優先探索と深さ優先探索、どっちがいいと思う?正解は、検索する環境によるってことだよね。バグや脆弱性がソフトウェアの表面や内部(依存関係を悪用する)に隠れているのと同じように。結論としては、トークンがたくさんあると助かる!いいモデルがあるのも助かる。両方あればもっと助かる。賢い人間がいて、たくさんのトークンと最高のフロンティアモデルがあれば、最も効果的だよね(賢い人間が重要)。
ドメインに詳しい人(トレーニングを受けた人)が、賢い言語学者プログラマーよりも良いかもしれないね。
>> 自分で試してみて、GPT 120B OSSは安くて手に入るよ。ちなみに、このバグに関しては、選ぶモデルが強ければ強いほど(でも本当のバグを発見するには不十分)、バグがあると主張する可能性は低くなるんだと思う。これが議論の核心だね。すべての主張は、無料で利用できるモデルと、限られた顧客にしか提供されないモデル(Mythos)を比較している。ここでの問題は「より良いモデル」という表現。どう「良い」の?サイバーセキュリティに特化して訓練されてるの?単にトークンや思考の予算が大きいモデルなの?それとも、より良いハーネスやスキャフォールドなの?単により良いプロンプトなの?いくつかのモデルが他のモデルより強いのは疑わないけど(Gemini ProやClaude Opusは、より多くのパラメータや大きなコンテキストサイズを持っていて、より長く、より多くのデータで訓練されているだろうし)、正確な実験設定がわからない限り(この場合、Mythosは完全にクローズドでAPIでもアクセスできないから不可能)、すべてが曖昧な感じになる。Anthropicは自分たちの設定を明かすことは絶対にないだろうし、秘密のソースがあるかどうかに関わらず、人々の想像力を働かせる方が価値があるし、マーケティングも動くからね。Anthropicは、無料の宣伝をたくさんもらって喜んでるに違いない。
Mythosはマーケティング目的で制限されてるわけじゃないよ。そんなのすごくバカだし、Anthropicが次世代モデルの先行者利益を手放すことになるから。制限されてるのは、本当に脆弱性を見つけるのが得意だからで、社員たちはこの能力をみんなに与えるのは良くないと思ったんだ。これが全てだよ。大きなマーケティング戦略じゃない。
AnthropicのMythosモデルカードには、Mythosがセキュリティに特化して良くなることを望んでいないと明記されてる。コーディングが得意になるように訓練されていて、その副産物としてモデルが(当然)セキュリティにも強くなってる。これって、肉体的なハッカーにもよくあることだよね。ハッカーは非常に優れたプログラマーで、その副産物としてシステムをよく理解していて、その理解がセキュリティに影響を与えるんだ。
トークンあたりのコストが本当に高いなら、パラメータが多くて、もっと多くのコンテキストやコードの範囲を保持できるってことかも。噂では、10兆パラメータ対1兆パラメータらしいよ。
今、二つの人気記事がサイバーセキュリティをプルーフ・オブ・ワークとして見なせるかどうかで議論してる。面白いことに、サイバーセキュリティ(アクセスモデルや運用上の仮定)がプルーフシステム(プルーフ・オブ・ワークじゃない)としてモデル化できるって記事を書こうと思ってたんだ。つまり、認可の決定が導き出される一連の仮定(ポリシー、アイデンティティ、インバリアント、構成、実装制約)を持つ抽象モデルがあるってこと。モデルが安全であるためには、無許可の行動が導き出されないことが必要。システムが正しいためには、その実装がモデルの仮定に従っている必要がある。セキュリティモデルは、その仮定が実際にどれだけ成立するかで運用的に分析できるんだ。
> だから、明日のサイバーセキュリティは「GPUが勝つ」みたいなプルーフ・オブ・ワークにはならない。むしろ、より良いモデルと、そのモデルへのアクセスが早いことが勝つんだよね。
つまり、すでにASICが使われているなら、もっとGPUを買っても意味がないってことだね。
AI(LLM)のプルーフ・オブ・ワークは、トレーニング側から来る「かもしれない」。このブログが探求している推論側ではなくてね。もしモデルがトレーニングされたことを証明するようなハッシュキャッシュ的な「証明」が定義されれば、そうできるはずだよ。モデルが追加データで賢くなった最小限の指標は、その追加データを正しく認識・推論できることだからね。