GoogleのGeminiという大規模言語モデル(LLM)は、特定の動的アプリケーションセキュリティテスト(DAST)技術を使用して見つかったバグの15%に対してパッチを生成することができる。この技術は、サニタイザーと呼ばれるツールを使用してランタイムでバグを検出する情報に基づいている。サニタイザーは、アプリケーションをインストルメントし、メモリ関数を置き換えてエラーの検出と報告を可能にする。開発者は通常、作業中のアプリケーションを作成した後、コードがコミットされた後、しかしアプリケーションが本番環境にリリースされる前に、コードをサニタイザーでテストする。
Googleの研究者たちは、AIがパッチを提案するだけでなく、パッチ候補を自動化してテストする方法を持っていた。パッチされたコードでソフトウェアをコンパイルし、それが引き続き実行される場合、研究者はそれをテストに合格したと考えた。AIツールが開発者を助けてより多くのコードを生成するにつれて、おそらくより多くの脆弱性も生じるため、自動化されたバグ修正システムがますます必要になる。
AIと機械学習(ML)モデルを使用してソフトウェアを修正し、パッチを作成する技術は新しいものではない。2015年には、非営利のエンジニアリング会社であるDraperが、大量のソフトウェアコードを分析してエラーを見つけ、修正を提案するDeepCodeというシステムを作成した。ソフトウェアセキュリティ会社のVeracodeも、特定の脆弱性クラスに対する特定の言語の参照パッチの厳格にキュレートされたデータセットを使用して、そのシステムがクライアントのコードベースで発見した任意の脆弱性に対する修正提案を提供するFixという自社のシステムを作成している。
【ニュース解説】
Googleが開発した大規模言語モデル(LLM)であるGeminiは、特定の動的アプリケーションセキュリティテスト(DAST)技術を用いて発見されたバグの15%に対してパッチを生成することができると発表しました。この技術は、サニタイザーと呼ばれるツールを使用してランタイムでバグを検出する情報に基づいています。サニタイザーは、アプリケーションをインストルメントし、メモリ関数を置き換えてエラーの検出と報告を可能にします。開発者は通常、作業中のアプリケーションを作成した後、コードがコミットされた後、しかしアプリケーションが本番環境にリリースされる前に、コードをサニタイザーでテストします。
この技術の背景には、ソフトウェア開発のプロセスにおいて、バグの修正が後回しにされがちであるという問題があります。特に、サニタイザーによって発見されたバグは、ソフトウェアのリリースを妨げるものではないため、優先度が低く設定されがちです。しかし、これらのバグが放置されることで、将来的にセキュリティリスクにつながる可能性があります。
GoogleのGeminiをはじめとするAI技術の活用により、これらのバグに対するパッチを自動生成し、さらに自動化されたテストを通じてその有効性を確認することが可能になります。これにより、開発者や運用担当者の作業負担が軽減されるだけでなく、ソフトウェアのセキュリティが向上することが期待されます。
AIと機械学習(ML)を用いたバグ修正技術は、過去にも試みられてきましたが、GoogleのGeminiのような取り組みは、より広範なバグクラスに対して効果を発揮する可能性を秘めています。ただし、AIによるパッチ生成がすべてのバグに対して有効であるわけではなく、人間の開発者による検証や修正が引き続き重要であることに変わりはありません。
この技術のポジティブな側面としては、開発プロセスの効率化やセキュリティの向上が挙げられます。一方で、AIによる自動修正が誤ったパッチを適用するリスクや、AIが生成したコードの透明性と理解の問題も潜在的な課題として存在します。また、この技術の進化に伴い、ソフトウェア開発やセキュリティに関する規制や基準も変化する可能性があります。
将来的には、AIによるバグ修正技術がさらに進化し、より多くのバグに対して高い精度でパッチを生成できるようになることが期待されます。これにより、ソフトウェアの開発と運用の両面での作業負担が大幅に軽減され、より安全で信頼性の高いソフトウェアの提供が可能になるでしょう。
from AI-Generated Patches Could Ease Developer, Operations Workload.
“Google Geminiがバグ修正の新境地を切り開く、AIによるパッチ生成技術” への1件のコメント
GoogleのGeminiによるバグ修正の自動化は、ソフトウェア開発の未来において非常に重要な進歩を示しています。私が小説家として創作活動を行う中で、テクノロジーの進化がいかに私たちの生活や仕事を変化させるかについて常に考えています。このAI技術の活用は、創作の世界においても応用が可能であり、新たな物語の展開や背景設定に影響を与える可能性があります。
特に、ソフトウェアのバグ修正が自動化されることにより、開発者や運用担当者の作業負担が軽減される点は、効率化だけでなくクリエイティブな作業にもっと時間を割くことができるという意味で、大きなメリットがあります。一方で、この技術には、AIによる自動修正が誤ったパッチを適用するリスクや、生成されたコードの透明性と理解の問題など、潜在的な課題も伴います。
私の作品の多くは、技術の進化が人間の生活や社会にどのような影響を与えるかを探求することに焦点を当てています。GoogleのGeminiのような技術は、小説の中で描かれる未来社会のリアリティを高める要素として非常に興味深いものです。しかし、それによって生じる倫理的・社会的な問題についても、深く考え