HN 日本語サマリー

← 一覧へ戻る
AI・機械学習

AIは40年分の技術的負債の返済を私たちに強いている

AI is forcing us to pay off 40 years of technical debt (spectrum.ieee.org)

868 pointsby pseudolus518 コメント

要約

AIの進化により、過去40年間に書かれたレガシーソフトウェアの脆弱性が露呈し始めています。PHP2Shellのような重大な脆弱性は、AIツールの助けを借りて発見・悪用される可能性があり、オープンソースソフトウェアの技術的負債問題の深刻さを浮き彫りにしています。この問題に対処するためには、AIを活用したバグ発見・修正ツールの開発と、オープンソースプロジェクトへの資金提供の強化が不可欠です。

全文翻訳

ケニアのスタートアップが中小企業向けAIの再考を試みる

10月下旬、数件の主要なサイバーセキュリティ問題が明るみに出ました。しかし、その中でもPHP2Shell脆弱性ほど大きなものはありませんでした。この脆弱性は、NASA、Wikipedia、ホワイトハウス、そしてWordPressやDrupal(その他多数)で動作するすべてのサイトを含む、無数のウェブサイトを、機密データの読み取りとホストサーバー上での悪意のあるコード実行の両方が可能なエクスプロイトのリスクにさらしました。

知る限りでは、大惨事は回避されました。このハックはサイバーセキュリティ研究者によって発見され、PHP Foundationに報告され、悪意のある攻撃者がエクスプロイトを入手する前にパッチがリリースされました。しかし、PHP2Shellは、AI時代の到来を警告する、カナリアの鳴き声となるかもしれません。

「今、私たちが目の当たりにしていることの一つは、過去40年間に人間が書いたすべてのレガシーソフトウェアが露呈していることです」と、サイバーセキュリティスタートアップTolmoのAIセキュリティリサーチリードであるMatt Suiche氏は言います。「今こそ、技術的負債を返済する時なのです。」

PHPレガシーバグとメモリエラー

PHPは、元々「personal home page」の略でしたが、1994年に作成されたプログラミング言語で、主にレガシーサイトで使用されています。PHP2Shell脆弱性の根底にあったバグは、2024年にPHP Foundationに報告されていました。このバグは、メモリ不足エラーと呼ばれる一般的な問題を引き起こしました。これは、データに割り当てられたメモリ量がデータを保持するには小さすぎる場合に発生します。通常、この種のエラーはプログラムをクラッシュさせます。これは不快ですが、本質的に危険な結果ではありません。そして、そのバグは未対応のままでした。

「どの時点を見ても、修正待ちのバグレポートがたくさんあり、それらは単なるクラッシュです。ほとんどの人はそれらを真剣に受け止めません」と、コロンビア大学のコンピュータサイエンス准教授であるSuman Jana氏は述べています。

「それは非常に特異な推論が多く、行うのが苦痛なのです。そしてAIは、その点で非常に良い仕事をしてくれたと思います。」
– Suman Jana, コロンビア大学

今年初め、サイバーセキュリティ企業Califは、OpenAIのスポンサーを受けて、PHPの独立監査を提供しました。2週間以内に、Califの研究者はAIツールの助けを借りて、メモリ不足バグを利用してホストサーバー上で任意のコードを実行する方法を発見しました。これにより、悪意のある攻撃者はマルウェアをインストールしたり、重要なデータを読み取ったりできるようになりました。もはやそれは軽微なバグではなく、重大な脆弱性となり、CalifチームはPHP Foundationに直ちにパッチ作業を開始するよう警告しました。

Jana氏によると、実際にバグを悪用するには、サーバー上で実行されている特定のプログラムのメモリ内の特定ポイントにジャンプする方法を慎重に検討し、システムを制御するためにどのビットをどの順序で上書きする必要があるかを正確に把握する必要があります。「それはロケット科学ではありません」と彼は言います。「それは非常に特異な推論が多く、行うのが苦痛なのです。そしてAIは、その点で非常に良い仕事をしてくれたと思います。」

明確にしておくと、Califの研究者(および脆弱性を確認・拡張したサイバーセキュリティ企業OpenAIとWiz)は、サイバーセキュリティとPHP言語の両方について深い知識を持っていました。「AIがすべてを単独でできるとは主張しません。明らかにできません」とJana氏は言います。「しかし、それは大きく改善しており、トップ0.1パーセントの専門家はより多くのことを成し遂げることができ、また、0.1パーセントのすぐ下の人々も、すべての細かいニュアンスを理解せずにそこに行けるようになっています。」

AIツールとセキュリティにおける形式検証

脆弱性がPHP Foundationに開示された後、4人のエンジニアからなるチームが2ヶ月かけてパッチを開発し、可能な限り迅速にリリースしました。

「バグの発見とバグの修正の間には根本的な非対称性があります」とJana氏は言います。「なぜなら、バグを修正する際には、攻撃のすべての側面が閉じられていることを知っている必要があり、既存の機能を壊さないようにする必要もあるからです。」

この非対称性は、特にPHPのようなオープンソースソフトウェアの防御者に大きな負担をかけます。広く使用されているにもかかわらず明確な収益源がないオープンソースプロジェクトの維持は、AIハッキングツール以前からの長年の課題です。しかし、これらのツールはその問題をこれまで以上に深刻にしています。

今後このような問題に先んじるための一つの方法は、防御者に、より多くの資金と最先端のサイバーセキュリティAIモデルへのアクセスを提供することです。「これらの最先端の研究室は、バグ調査のためにトークン予算の一部を寄付しており、それは素晴らしいことだと思います」とJana氏は言います。「これは、協調的な取り組みや寄付を通じて、もっと行われるべきだと思います。」

Jana氏はまた、パッチ作成側を自動化するための形式検証ツールも急速に進歩していると楽観視しています。これには、10月22日のAnthropicからの新しいリリースも含まれます。「パッチはLLMによって生成され、その後LLMがパッチが正しいという証明を生成します」とJana氏は言います。「LLMによって行われなかった唯一のことは、証明チェッカーです。なぜなら、誰かが証明をチェックする必要があるからです。LLMは幻覚を見るからです。ですから、形式的なものが必要です。」

専門的なAIモデルと形式検証ツールの組み合わせが、脆弱性の発見と同じくらいパッチ適用を自動化できるようになることを願っています。

ジョンズ・ホプキンス大学情報セキュリティ研究所のコンピュータサイエンス准教授であるMatthew Green氏は、それほど楽観的ではありません。「何か本当に悪いことが起こるまで、誰もこの問題を解決しないでしょう」と彼は言います。「そしてPHP2Shellは、本当に悪いほど悪くはありませんでした。だから、何か本当に悪いことが起こったとき、それはおそらく2027年初頭になるでしょう。普通の人が腹を立てるような悪いことが起こったとき、突然人々はこれをやり始めるでしょう。私たちはすべてに資金を提供するでしょう。」

それまでの間、Green氏はソフトウェアを更新するように勧めています。「もしあなたの電話が『セキュリティアップデートが利用可能です。インストールしますか?』と言ってきたら、来週まで待たないでください。すぐに実行してください。」

確かなことは、PHP2Shellは始まりに過ぎないということです。「これは間違いなく最後ではありません」とJana氏は言います。「誰が見つけるか、それだけです。うまくいけば、このバグのように、ホワイトハットのハッカーが最初に見つけるでしょう。」