>_tech-draft
Vercelのアイコン
Vercel
動画公開日
タイトル

Vibecoding Promise and Peril

再生時間

28分 43秒

AIによるコード生成「Vibe Coding」の光と影:潜在的セキュリティリスクと対策

ポイント

  • AIによるコード生成「Vibe Coding」は非開発者にプログラミングの超能力をもたらす一方で、深刻なセキュリティリスクを内包しています。
  • 一般ユーザーからプロ開発者まで、AI生成コードには脆弱性が含まれる可能性があり、経験豊富なサイバー攻撃者との非対称な戦いに直面します。
  • 安全に活用するためには、ユーザー教育、プラットフォーム側のセキュリティ強化、そしてプロフェッショナルによるレビュープロセスが不可欠です。

導入:AIコード生成の「超能力」と「足元を撃つ銃」\n\n近年、AIによるコード生成、特に「Vibe Coding」と呼ばれるアプローチが急速に普及しています。これは、人々がかつてない方法でコンピュータを活用できる素晴らしい機会であり、まさに「超能力」を手に入れるようなものです。専門的なプログラミングスキルがなくても、誰もがコンピュータにタスクを指示できるようになることは、アクセシビリティを劇的に向上させ、社会に大きな変革をもたらす可能性を秘めています。ソフトウェアの購入やオープンソースの利用、あるいは他人にコードを書いてもらうことなく、コンピュータに意図した処理を実行させられることは、多くの人々にとって計り知れない価値があります。私たちはこの革命のまさに黎明期にあり、その可能性に大いに期待すべきです。\n\nしかし、この「超能力」は同時に非常に危険な側面も持ち合わせています。講演者はこれを「足元を撃つ銃(foot gun)」、いや「足元に撃つバズーカ(foot bazooka)」と表現しています。AIによるコード生成を利用してアプリケーションを構築する「Vibe Coding」において、一般の人々に悪影響が及ぶ事例が多数報告されています。\n\n## Vibe Codingが抱えるセキュリティリスクの現実\n\nVibe Codingが引き起こす具体的な問題は多岐にわたります。例えば、子供の野球リーグのスケジューラといった個人的な用途から、個人の医療記録システム、ビットコインシステム、あるいはクレジットカード番号や運転免許証といった機密性の高い個人データを扱うアプリケーションまで、重要なシステムがAIによって生成されたコードで構築されるケースがあります。\n\n### プラットフォームのデフォルト設定の不備\n\n特定のプラットフォームでは、デフォルトのセキュリティ設定が不十分であるために、これらのリスクがさらに増大している状況も指摘されています。これは、Superbaseのような特定の技術スタックの責任ではなく、AIによるコード生成プラットフォーム側がデフォルトでセキュリティを考慮した設定を提供していないことに起因します。これにより、ユーザーは意図せず脆弱なアプリケーションを構築してしまう可能性が高まります。\n\n### 専門家でも発生するAI生成コードの脆弱性\n\nこの問題は、AIコード生成プラットフォーム上で直接Vibe Codingを行う一般ユーザーに限った話ではありません。プロのソフトウェア開発者がAIツールを利用してコードを生成する場合でも、セキュリティ上の問題が発生する可能性があります。\n\n「Backspench」という学術論文では、AIコード生成エージェントがバックエンドコードを作成する際にセキュリティ脆弱性を含んでしまう可能性について、実証的な研究が行われています。研究者たちは、セキュリティ上の脆弱性を含む可能性のあるプロンプトを作成し、それを複数のコーディングツールと大規模言語モデル(LLM)に対してテストしました。その結果、生成されたコードの正確性とセキュリティ上の欠陥の両方が評価されました。\n\nこの研究は、新しいモデルが登場するたびに継続的に更新・公開されており、Backspench.comで詳細を確認できます。結果として、LLMはコード生成において多くの間違いを犯すだけでなく、多くのセキュリティ上の欠陥も導入することが明らかになりました。\n\n### LLMの進化と残る課題\n\n喜ばしいことに、LLMのセキュリティリスクは改善の傾向にあります。例えば、OpenAIの製品ファミリー内でも、GPT-5はGPT-4.1やGPT-4.0と比較して、同じプロンプトを使用した場合に脆弱性が減少しています。講演者の会社による内部テストでも、AnthropicのClaude Sonnet 4.5がGPT-5をわずかに上回り、最も良い結果を示しているとのことです。\n\nしかし、これらの改善にもかかわらず、課題は残されています。現在、回帰テストを通過し、実際に正しいとされるコードであっても、その約20%に何らかのセキュリティ脆弱性が含まれているのが現状です。これは、セキュリティの専門家として決して満足できる数字ではありません。\n\n## 経験豊富な攻撃者との非対称な戦い\n\n現状は、まるで「Fallout」シリーズの「War. War never changes.(戦争は決して変わらない)」という言葉を彷彿とさせると講演者は述べています。プロとしてのソフトウェア開発経験がないVibe Coderたちは、言わば「スリングショットとバックパック」だけを与えられ、鋭利な棒を持ったミュータントが徘徊する世界に放り出されているようなものです。彼らはすぐに「食い物にされてしまう」状況にあると比喩しています。\n\nなぜなら、悪意ある攻撃者たちは、ゼロからコードを「発明」しているわけではないからです。彼らは20年以上にわたり、ウェブアプリケーションやモバイルアプリをどのように侵害するか、どのようにリバースエンジニアリングするか、そして悪意ある行為をいかにして金銭化するかについて、専門的な知識と技術を蓄積してきました。\n\n### MITRE ATT&CKフレームワークが示す脅威の複雑さ\n\nセキュリティ業界では、これらの脆弱性を分類し、定量化するために様々なフレームワークが用いられています。その一つが「MITRE ATT&CKフレームワーク」です。これは、攻撃者が効果的な侵入を行うために必要な一連のステップ、いわゆる「キルチェーン」をモデル化したものです。\n\nキルチェーンの主要なステップ:\n* 偵察 (Reconnaissance)\n* リソース開発 (Resource Development)\n* 初期アクセス (Initial Access)\n* 実行 (Execution)\n* 永続化 (Persistence)\n\nこれらのステップには、それぞれ数十から数百もの異なる技術が存在します。MITREは米国政府が資金提供する組織であり、これらの複雑な情報を整理し、セキュリティコミュニティ内で脅威アクター(APT28、UNC3886、Lapsusなどの国家支援型グループや金銭目的のプロフェッショナルグループ)を追跡し、共通言語で議論するための標準を確立しています。\n\nVibe Coderたちが「頑張ってね」とツールを与えられて直面しているのは、attack.mitre.orgで公開されているような、プロの攻撃者たちが使用する既知の攻撃チェーンや技術が満載の世界です。Vibe Coderたちがこれら全てを理解できると考えるのは、現実的ではありません。しかし、これまでのAIコード生成ツールの利用では、あたかもそれが可能であるかのような前提があったのです。\n\n## より良い未来のために:問題の分割と対策\n\nでは、私たちはどうすればこの状況を改善できるのでしょうか。エンジニアとして問題を解決する際と同様に、この複雑な問題を個々の要素に分解して考える必要があります。\n\n根本的に、AIコード生成ツールの利用は大きく二つの異なるカテゴリーに分けられます。一つは...(講演はこの先で途切れているため、具体的な二つのカテゴリーについては言及されませんが、問題解決へのアプローチとして問題分割の重要性が語られています)。\n\nVibe Codingの技術は日進月歩で進化しており、セキュリティリスクは依然として存在するものの、改善の兆しも見られます。しかし、その強力な力を安全に活用するためには、ユーザー教育、プラットフォーム側のセキュリティ強化、そしてプロフェッショナルなレビュープロセスが不可欠となるでしょう。\n\n## まとめ\n\nAIによるコード生成「Vibe Coding」は、非開発者にもプログラミングの「超能力」をもたらし、アクセシビリティを大きく向上させる革新的な技術です。しかし、同時に多くのセキュリティリスクも内包しており、これを「足元に撃つバズーカ」と形容できるほど重大な問題です。\n\n一般ユーザーが意図せず脆弱なアプリケーションを生成してしまうリスクや、プロの開発者でさえAI生成コードにセキュリティ上の欠陥が含まれる可能性が、実証研究によって示されています。経験豊富な攻撃者が常に存在することを考慮すると、現在のAIコード生成のセキュリティレベルはまだ十分ではありません。\n\n私たちは、この問題を個々の要素に分解し、技術の進化と同時にセキュリティ対策を講じていく必要があります。AIの強力な力を安全に、そして責任を持って活用するための継続的な努力が求められます。\n\n参考動画: https://www.youtube.com/watch?v=QQhzTBAWLaI