00:00:00来てくれてありがとう。残ってくれてありがとう。アレックスです。Corridorという小さな会社で働いています。今回は
00:00:09「バイブコーディング」
00:00:11について少しお話しします。セキュリティの観点から見て、
00:00:15興味深いことがいくつか起こっています。まず、
00:00:18私はAIを使ったコード生成の大ファンです。これは、
00:00:22人々がこれまでになかった方法でコンピューターを活用できる素晴らしい機会だと思います。会場には多くのプロのソフトウェア開発者がいらっしゃいます。コマンドラインからコンピューターを使ったり、
00:00:37幼い頃からコーディングをして育った私たちは、
00:00:41これが一般の人々にとって何を意味するのか、
00:00:44本当には理解していません。しかし、
00:00:47史上初めて、
00:00:48一般の人々が、
00:00:49長い間利用できるべきだった方法でコンピューターを活用できるようになるのです。コーディングはスーパーパワーです。ソフトウェアを購入したり、
00:01:00オープンソースを使ったり、
00:01:02他の人にコードを書いてもらったりすることなく、
00:01:05コンピューターに何かを頼めるようになること、
00:01:09それがスーパーパワーなのです。
00:01:11バイブコーディングは、
00:01:12それを何百万人もの人々に提供しています。これは信じられないことです。私たちは、
00:01:17誰もがアクセスできるようになるこの革命の始まり、
00:01:20まさにその始まりにいることを非常に喜ぶべきです。それはまた、
00:01:24驚くべき「フットガン」(自爆ツール)でもあります。「フットガン」というのは、
00:01:28おそらく控えめな表現でしょう。まるで、
00:01:30これらの人々に「足元バズーカ」を与えているようなものです。
00:01:34一般の人々がバイブコーディングアプリを使っているときに起こる悪いことの例が、
00:01:39次から次へと出てきています。中には、
00:01:42子供のリトルリーグのスケジュールのようなちょっとした楽しいものや、
00:01:47個人データを入力するものもあります。医療記録システムやビットコインシステム、
00:01:52個人データを保持するもの、
00:01:54人々のクレジットカード番号を取得するもの、
00:01:57運転免許証を保存するものなどをバイブコーディングしている人もいます。バイブコーディングアプリを使って重要なものを作成している例はたくさんあります。おそらく、
00:02:08名前は挙げませんが、
00:02:09私の後ろに名前がはっきりと見える競合プラットフォームの中には、
00:02:14非常に貧弱なデフォルト設定を使用しており、
00:02:17人々にとってこれを容易にしていないため、
00:02:19特に状況を悪化させているものがあります。そして、
00:02:23Superbaseのようなものの非常に悪いデフォルト設定を非常に簡単に使わせてしまっています。これはSuperbaseのせいではありません。
00:02:33単に、
00:02:33バイブコーディングプラットフォームやその他のプラットフォームが、
00:02:38これらのものをデフォルトで安全に設定していないだけなのです。これは良くありません。そして、
00:02:44プラットフォーム上での直接的なバイブコーディングだけでなく、
00:02:48プロが利用する場合についても、
00:02:50私たちは実際に優れた経験的学術データを持っています。これは
00:02:54「Backbench Academic Group」
00:02:58という素晴らしい論文で、
00:03:00ぜひ読んでいただきたいものです。彼らは、
00:03:02セキュリティ脆弱性を持つ可能性のあるバックエンドコードを作成するかもしれないコーディングエージェント用のプロンプトを多数作成しました。そして、
00:03:12これらのプロンプトを多数のコーディングツールやLLMに対してテストしました。そして、
00:03:181つ目に生成されたコードが正しいか、
00:03:202つ目にセキュリティ上の欠陥があるかをテストしました。彼らの功績として、
00:03:25新しいモデルが登場するたびにこれを更新し、
00:03:28公開し続けています。
00:03:29ぜひ確認してみてください。そして、
00:03:32ご想像の通り、
00:03:33LLMは多くの間違いを犯すだけでなく、
00:03:36多くの欠陥も生み出します。現在、
00:03:39これは良い方向に進んでいます。
00:03:41写真を撮る必要はありません。backspends.comに行けば、
00:03:45もっと読みやすいバージョンがあります。また、
00:03:47彼らのコードはすべてオープンソースなので、
00:03:50ご自身で再現できます。
00:03:51まず、
00:03:52これは良い方向に進んでいますよね?たとえば、
00:03:55製品ファミリー内、
00:03:56OpenAIの製品ファミリーを見ても、
00:03:59正しい方向に向かっています。GPT-5は、
00:04:01GPT-4.1やGPT-4.0などよりもはるかに優れています。同じプロンプトを使用しても、
00:04:08脆弱性は少なくなっています。
00:04:10さて、ここでの問題の一つは、これらのプロンプトとテストが現在オープンソースであることです。
00:04:14そのため、
00:04:15テストに対して過学習の問題が発生する可能性があります。私たちも同じことを見てきましたが、
00:04:20弊社ではこれを社内に取り込み、
00:04:22独自のテストを使用しています。そして、
00:04:24同じ結果を確認しています。実際、
00:04:26私たちのテストでは、
00:04:27勝者はClaude Sonnet 4.5でした。これはまだ一般公開されていませんが、
00:04:32AnthropicはGPT-5よりもほんの少しだけリードボードを上回っています。いずれにせよ、
00:04:37正しい方向に向かっています。
00:04:39しかし、
00:04:40それでも、
00:04:40ここで上位にある、
00:04:42実際の正しいコードの回帰テストをパスしたものでも、
00:04:45その20%に何らかのセキュリティ脆弱性があるとしたら、
00:04:49それは素晴らしいとは言えません。
00:04:52セキュリティの専門家として、私が本当に見たいと思うものではありません。
00:04:56私はFalloutシリーズの大ファンです。「戦争は決して変わらない」、
00:05:02ですよね?私には、
00:05:03私たちがここでやっていることは、
00:05:06バイブコーダー、
00:05:07特にこれまでプロとしてソフトウェアを書いたことのない人々に、
00:05:12基本的な武器、
00:05:13つまりパチンコとバックパックを与え、
00:05:16研ぎ澄まされた棒を持ったミュータントでいっぱいの世界に送り出しているようなものです。そして彼らはすぐに食い物にされてしまう、
00:05:25そうですよね?なぜなら、
00:05:27悪者たちがコードをゼロから発明しているわけではないからです。20年以上にわたり、
00:05:33プロの攻撃者たちは、
00:05:35ウェブアプリケーションやモバイルアプリへの侵入方法、
00:05:39これらのリバースエンジニアリング方法、
00:05:42そして特に悪意のある行為を行うための金融モデルの構築方法を解明してきました。そして今、
00:05:49奇跡的に新しい方法でコンピューターを利用できるようになった全く新しい世代の人々が、
00:05:55ソフトウェアのバグを収益化することを生業とするプロフェッショナルたちと対峙しているのです。これは、
00:06:03セキュリティ業界がこれらの脆弱性を評価し、
00:06:06定量化する方法に反映されています。そのうちの一つがMITRE ATT&CKフレームワークです。セキュリティでは、
00:06:15軍事から「キルチェーン」という概念を借用しましたが、
00:06:19これは基本的に攻撃者として効果的な侵入を行うために必要なステップの考え方です。それが、
00:06:26偵察、
00:06:26リソース開発、
00:06:27アクセス、
00:06:28実行、
00:06:29永続化など、
00:06:30左から右へのステップです。そして、
00:06:32下にはさまざまなテクニックのカテゴリがあります。それぞれのカテゴリには、
00:06:38時には数十、
00:06:39数百もの異なるテクニックが存在します。これはMITREのトップレベルに過ぎません。MITREは米国政府が資金提供している組織で、
00:06:49この過度に複雑なチャートを作成し、
00:06:52これらすべてを分類することで、
00:06:54セキュリティコミュニティのさまざまな脅威アクターを追跡し、
00:06:58野外で目にするものについて話すための標準的な言語を持つことができます。だから私たちは、
00:07:05これらのツールをかわいい「Vaultの住人」たちに与えて、
00:07:10「頑張ってね」と言っているようなものです。そして彼らが足を踏み出すのは、
00:07:15これらすべてのことを行う悪者でいっぱいの世界です。attack.mitre.orgに行けば、
00:07:22既知の攻撃チェーン、
00:07:24さまざまな脅威グループ(AP-228や29、
00:07:27UNC-3886など)によって実際に発生した既知の事柄のリストを見ることができます。これは、
00:07:35中華人民共和国国家安全部やロシアのSVR、
00:07:38あるいはLapsus$のようなプロの金銭目的のグループの全リストのようなものです。そして、
00:07:45これらは彼らがさまざまな被害者を攻撃するために使用したテクニックです。バイブコーダーがこれらすべてを理解するという考えは、
00:07:54まったく馬鹿げています。しかし、
00:07:57これまでは事実上、
00:07:58それが前提となっていました。では、
00:08:01どうすればもっと良くできるでしょうか?まずできることは、
00:08:05エンジニアとして問題を解決したいとき、
00:08:08問題を細分化し始める、
00:08:10ということですよね?そして実際、
00:08:13ここには全く異なる2つの問題カテゴリがあります。1つ目は、
00:08:17これらのツールの使用を2つの主要なカテゴリに分ける必要があるということです。1つ目は、
00:08:24実際のバイブコーディングです。バイブコーディングについて話すとき、
00:08:29私はプロのソフトウェアエンジニアではない人々、
00:08:33つまり一般の人々を意味します。つまり、
00:08:36普通の趣味を持っている人々です。だから、
00:08:39この部屋にいない人々、
00:08:40ですよね?木曜日の午後にこの会議に来ないような人々、
00:08:45Chip AIにいるよりももっと良いことをする人々、
00:08:49悪気はありませんが。そしてこれは良いことです。ここにいられて嬉しいです。私もここにいます。でも、
00:08:56もしあなたがここにいるなら、
00:08:58あなたはバイブコーダーではありませんよね?私たち働く人々は、
00:09:03AIを使うとき、
00:09:04おそらくAIアシストエンジニアリングをしているのでしょう?
00:09:09つまり、
00:09:09バイブコーディングとは、
00:09:11彼らのためだけに作られた新しいツールを使って、
00:09:13史上初めてこの種の機能にアクセスできる人々を指します。だからまず、
00:09:17問題の全体的な種類と、
00:09:19人々がこれらのツールを使用する方法を区別する必要があります。そして、
00:09:22AIアシストエンジニアリングをバイブコーディングと呼ぶのをやめるべきだと思います。おそらくAIアシストエンジニアリングには、
00:09:30もっと良い用語を考え出すことができるでしょう。しかし、
00:09:33これはオートコンプリート、
00:09:34タブ補完、
00:09:35カーソルから、
00:09:36プロのエンジニアがやりたいことをしている間に、
00:09:38バックグラウンドで4つか5つの異なるエージェントを派遣してさまざまな仕事をさせる、
00:09:43といったことまで多岐にわたります。そして、
00:09:45それらのエージェントが自律的に動作していても、
00:09:48エンジニアは依然として責任者であり、
00:09:50何をしたいのかを知っています。それはバイブコーディングとはまだ大きく異なります。バイブコーダーは、
00:09:56多くの場合、
00:09:57完全に機能するプラットフォームに依存していますよね?だから、
00:10:00彼らはエンドツーエンドで事実上すべてをやってくれるプラットフォームを必要としています。彼らは物事を一つずつ組み立てていくわけではありません。彼らは結果を記述します。彼らには望む結果があります。それは英語でも、
00:10:12彼らが話すどんな言語でも可能です。彼らは視覚的にそれを行っているかもしれませんよね?だから、
00:10:17GUIなどでレイアウトできるプラットフォームがたくさんあります。V0はその素晴らしい例です。そして彼らには望む結果があります。彼らは、
00:10:25そこにどうやって到達しようとしているのかを必ずしも説明しているわけではありませんし、
00:10:30そうすることはまずありません。彼らはしばしばグリーンフィールドから始めます。
00:10:34そのため、
00:10:35バイブコーディングプラットフォームが行うことを既存のコードベースや既存のアーキテクチャに合わせる必要がないという利点があります。これはセキュリティの観点からは実際には素晴らしいことです。それについては後で話しましょう。しかし、
00:10:48これはバイブコーディングプラットフォームにセキュリティの観点から多くの利点をもたらします。なぜなら、
00:10:54既存のAWSや、
00:10:55とんでもないことに、
00:10:56自己ホスト型アーキテクチャに合わせる必要がないからです。
00:11:00ここでの欠点は、
00:11:01彼らが自分で出力を安全にする能力がほとんどないことです。だから、
00:11:05「なぜこのエラーが出るの?」とか「私のビットコインはどこに行ったの?」といった、
00:11:11人々がツイートしている問題に行き着くのです。Xで「私のビットコインはどこに行った」と検索すると、
00:11:17たくさんのツイートが見つかりますよね?なぜなら、
00:11:20それは多くの理由で起こりますが、
00:11:23バイブコーディングが、
00:11:24人々がそうツイートする理由の一つになっていることが判明しているからです。彼らは出力を見て、
00:11:30それが安全かどうかを判断する能力がないからです。一方、
00:11:34AIを使って仕事をより良くしているソフトウェアエンジニアは、
00:11:38エージェントを監督するプロフェッショナルです。
00:11:41繰り返しになりますが、
00:11:42それは「関数を書き始めたので、
00:11:44残りを完成させてほしい」というくらい単純なことかもしれません。あるいは、
00:11:48「このバグがあるので、
00:11:49このバグに取り組んで修正してほしい」というくらいのことかもしれません。そして、
00:11:53それは30分間あなたのために働くエージェントを派遣することかもしれません。しかし最終的には、
00:11:58彼らはもっと具体的な要求を伴う、
00:12:00望むコンポーネントを記述しているでしょう。だから、
00:12:02彼らは「これが私が望むステップの層だ」というように、
00:12:05望む出力よりもはるかに具体的なものを求めています。そして彼らは、
00:12:08「まず計画を立ててくれ。その計画を編集し、
00:12:11エージェントに計画を戻して、
00:12:12ステップバイステップで実行させる」というように、
00:12:15計画を立てることもできます。さて、
00:12:16これらの人々にとっての欠点は、
00:12:18既存のコードベース、
00:12:19そして多くの場合、
00:12:20要件、
00:12:21コンプライアンス要件、
00:12:22アーキテクチャ要件を扱っていることが多いことです。AIアシストエンジニアリングを行っている場合、
00:12:27通常はグリーンフィールドから始めるわけではありません。だから、
00:12:30このような人にとっては、
00:12:32何らかのセキュリティ計画を立てるのが簡単ではありません。しかし、
00:12:35うまくいけばセキュリティスキルを持っており、
00:12:37このタイプの人であれば、
00:12:39頼りになる専任のセキュリティチームがいるかもしれません。だから、
00:12:42これらの人々は非常に異なるセキュリティ要件を持っており、
00:12:45私たちは彼らを助けることができます。彼らには独自のソリューションが必要です。では、
00:12:49AIコーディングプラットフォームで作業している人々、
00:12:52特にこれらの人々を助けるために、
00:12:54グループとしてどのようなソリューションができるでしょうか?
00:12:56では、バイブコーダーは何を必要としているのでしょうか?まず第一に、彼らは「設計によるセキュリティ」を必要としています。
00:13:01「設計によるセキュリティ」について話すとき、私たちはしばしば最終製品について話していますよね?
00:13:04これは多くの場合、
00:13:05SaaSプラットフォームがデフォルトで優れた認証オプションを持ち、
00:13:09すべての設定がデフォルトで安全であり、
00:13:10意図的にそれらの安全な設定をオフにする必要がある、
00:13:13といったことを指します。AIコーディングの観点から本当に望むのは、
00:13:16バイブコーディングの設定、
00:13:18アーキテクチャ、
00:13:18コードが「意見を持っている」こと、
00:13:20つまり、
00:13:21特定のやり方を推奨するものであることです。AIコーディングエージェントが、
00:13:24「使用すべきコンポーネントはこれであり、
00:13:26これらをどのように設定すれば最初から正しく機能するか」について、
00:13:29非常に明確な意見を持っているべきだということです。Superbaseの例や、
00:13:33あらゆる種類のデータベースについて話しました。ロールレベルセキュリティについても意見を持っているべきです。
00:13:39デフォルトでは、
00:13:40ユーザーはデータへのアクセスがほとんどないか、
00:13:43まったくないべきであり、
00:13:44必要に応じて明示的にデータへのアクセスを許可すべきである、
00:13:48という意見を持っているべきです。そうですよね?
00:13:50何でもアクセスできて、
00:13:52後からブロックするようなバックエンドデータベースがあってはなりません。これについて強い意見を持ち、
00:13:58ユーザーに代わって決定を下すべきです。なぜなら、
00:14:02このシナリオではバイブコーダー自身がそれらの決定を下すことはまずないからです。また、
00:14:07依頼されたプロジェクトが、
00:14:09快適に実行できる範囲外であるかどうかを検出するべきでしょう。いくつかのバイブコーディングプラットフォームでは、
00:14:17「医療記録システムを作ってください」と頼むと、
00:14:20それが実行され、
00:14:21「はい、
00:14:21どうぞ。これが医療記録システムです」と返されます。ここにいるCEOのジャック・ケーブルが、
00:14:27あるバイブコーディングプラットフォームでこれを試したところ、
00:14:31「これがあなたの医療記録システムです。HIPAA準拠です」と返されました。ええ、
00:14:37速報です。それはHIPAA準拠ではありませんでした。
00:14:40プロとして、
00:14:41公開企業のCSOである私から言わせてもらえば、
00:14:43それは真実ではありませんでした。「HIPAA準拠です」と言うだけで、
00:14:46魔法のようにHIPAA準拠になるわけではありません。そういう仕組みではないのです。そして彼が指摘しました。
00:14:51「これはHIPAA準拠ではないと思います」
00:14:53。私は
00:14:53「ああ、"
00:14:54いや、
00:14:54その通りですね。そうは思いません」と言いました。すると、
00:14:57いくつかの変更が加えられ、
00:14:58「これでHIPAA準拠です」と。それでも違いましたよね?これは、
00:15:01もし私がバイブコーディングプラットフォームを構築しているとして、
00:15:04医療記録システムを作るように頼まれたら、
00:15:06おそらく「いや、
00:15:07それはできません。それは悪い考えです。お客様は間違った場所にいらっしゃいます
00:15:10」と言うようなことです。「
00:15:11私のビットコインを保管するシステムを作ってください
00:15:14」というのも同じです。私は「
00:15:15いや、
00:15:15それはできません。それは良い考えではありません。あなたのビットコインを保管するつもりはありません。それは盗まれます。そのビットコインは北朝鮮に直行し、
00:15:22ロケットの購入に使われるでしょう。あなたのビットコインは他のことに使うべきです」と言うでしょう。
00:15:26バイブコーディングプラットフォームは、
00:15:29その限界を知るべきです。そして、
00:15:31人々の個人情報を保存するような中間的なことを依頼された場合、
00:15:34それは許可するが、
00:15:35多くのセキュリティ機能を有効にし、
00:15:38可能であれば、
00:15:38多くのバイブコーディングプラットフォームのようにセキュリティエージェントを導入するような、
00:15:44中間的なものがあるべきです。データを保存したいと言えば、
00:15:48「よし、
00:15:48データベースサーバーが必要だ」と言います。ビデオを再生したいと言えば、
00:15:53「よし、
00:15:53ビデオCDNが必要だ」と言いますよね?だから中間的なことはありますが、
00:15:57「いや、
00:15:58それは悪い考えだ。それはあなたのためにやらない」というようなものもあるべきです。そして最後に、
00:16:04彼らが必要としているのは、
00:16:05コードレビューを可能にするパートナーとの連携です。なぜなら、
00:16:09バイブコーダーは「ああ、
00:16:11私はすでにソフトウェアレビューツールと関係がある」とは言わないでしょうから。
00:16:15それは彼らが持ち込むものではありません。だから、
00:16:19データベースパートナーとの基本的な関係があるように、
00:16:22それが基本製品に組み込まれていることを望むでしょう。
00:16:25セキュリティにおける
00:16:27「父権主義」
00:16:27あるいは
00:16:28「母権主義」
00:16:29(お好みで)は許容されます。その能力を持たないユーザーに代わって決定を下すことは問題ありません。これはセキュリティ業界がこれまで恐れてきたことだと思います。なぜなら、
00:16:39セキュリティ担当者は、
00:16:40他人に代わって下した決定について責任を問われることを恐れているからです。これはセキュリティ担当者によくある問題で、
00:16:47私たちは綱渡りを用意します。そして誰かが綱から落ちたら、
00:16:51「ああ、
00:16:51しまった、
00:16:52ごめん。綱渡りの仕方が分からなかったんだね。それは君のせいだよね?
00:16:56」と言うようなものです。それは良くありません。私たちは、"
00:17:00人々がその隔たりを安全に渡れるように最善を尽くし、
00:17:03もし誰かが落ちた場合には、
00:17:04ある程度の責任を負う方が良いのです。物事をそれほど難しくするのは良くありません。これらのケースでは、
00:17:11少し父権主義的になり、
00:17:12特に非専門家が使用すると分かっている製品を構築している場合は、
00:17:16決定を下すことは問題ありません。では、
00:17:18もし誰かが専門家だったらどうでしょうか?専門家が使う製品を構築している場合は?これは、
00:17:23Cloud CodeやCursorのようなもの、
00:17:26あるいは人々がより専門的であることを期待する製品に近いでしょう。さて、
00:17:31Cloud Codeは興味深い課題です。なぜなら、
00:17:34それは一般の人々も、
00:17:35ここにいる人々も両方使っていますよね?だから、
00:17:38もしあなたがAnthropicのプロダクトマネージャーのような立場なら、
00:17:42「バイブコードモード」のようなモードを持つべきか?事前にテストを行うべきか?といった問題になります。
00:17:48どのように関与したいのか正確には分かりませんが、
00:17:51プロダクトマネージャーの観点からは興味深い課題があると思います。ユーザーに代わって実際に物事を処理する
00:17:55「バイブコードモード」
00:17:56を、
00:17:57いつから有効にするのか、
00:17:58それともユーザーにより多くの機能を与えるのか、
00:18:00その境界はどこにあるのでしょうか?
00:18:01だから、Cursorのようなものは、おそらくプロのエンジニアだけが使うべきでしょう。
00:18:05だから、
00:18:06プロのエンジニアも「設計によるセキュリティ」を必要としています。しかし、
00:18:11それは異なる方法ですよね?たとえば、
00:18:13プロのエンジニア向けに「設計によるセキュリティ」を行う場合、
00:18:17おそらく広範なアーキテクチャ上の決定を下すようなことはしないでしょう。しかし、
00:18:22あなたがしていることは、
00:18:24GPT-5で20%の時間、
00:18:26Grokの状況では60%の時間で起こると話したような、
00:18:30単に愚かなセキュリティミスを犯すような間違いをしないことです。そうですよね?デフォルトで欠陥のないコードを作成し、
00:18:37記述する必要があります。そして、
00:18:39少なくともユーザーに促し、
00:18:41「ねえ、
00:18:42デフォルトでこれをより良くできますか?」と問いかける必要があります。そして、
00:18:47デフォルトで良いアイデアではない決定をしようとすることです。これらのエージェントが実際かなり苦手としているのは、
00:18:54全体像を捉えることです。
00:18:56皆さんも経験があると思いますが、
00:18:58コーディングエージェントに「非常に多くのことを行う、
00:19:02信じられないほど複雑なシステムを構築したい」と尋ねると、
00:19:06「素晴らしい、
00:19:07今すぐコードを書き始めます
00:19:08」となるでしょう。それは私たちがソフトウェアを構築する方法ではありませんよね?20人のチームで信じられないほど複雑な分散システムを構築するのに、"
00:19:19ただファイルを開いてコードを書き始めるわけではありませんよね?PRD(製品要件定義書)があり、
00:19:25設計会議があります。
00:19:26要件は何だろうと考え、
00:19:28多くのプロダクトマネジメントを行います。いくつかの例外はありますが、
00:19:32ほとんどの場合、
00:19:33コーディングエージェントはただコードを書き始めたいだけです。それが彼らの知っていることです。彼らはすぐにそれに飛び込みます。だから、
00:19:42これらのものが少しペースを落とし、
00:19:44計画段階を踏み、
00:19:45「アーキテクチャとデザインを策定しよう」と、
00:19:48もっと慎重になることが望ましいと思います。そして、
00:19:51APIのドキュメント化、
00:19:52入力検証の方法のドキュメント化などを行うべきです。この種のアーキテクチャにおける一般的な欠陥をどのように防ぐのか?
00:20:00「異なるサービスを持つことになるものを設計している場合、"
00:20:03それらの異なるサービス間でどのように認証を行うのか?」これは、
00:20:07プロのエンジニアであっても、
00:20:09開始時に前もって行うべき、
00:20:11非常に思慮深いことであり、
00:20:12ほとんどのコーディングエージェントは決して考えないことです。
00:20:16そして、
00:20:16AIセキュリティエージェントを持つ能力も必要です。面白いことの一つは、
00:20:21小さなスタートアップで働いているか、
00:20:2322歳だと、
00:20:24ソフトウェアを書くのはソフトウェアエンジニアだけだと思いがちですが、
00:20:29この部屋には多くのプロフェッショナルがいらっしゃいます。
00:20:33プロフェッショナルとして、
00:20:35特に規制された会社や、
00:20:36飛行機を製造するような重要なことをしている会社で働いていると、
00:20:40ソフトウェアエンジニアだけでなく、
00:20:42セキュリティエンジニア、
00:20:44セキュリティアーキテクト、
00:20:46プライバシーエンジニア、
00:20:47コンプライアンス担当者、
00:20:49そして弁護士もいることに気づきます。分かっています。私たちはこれらの人々全員の大ファンというわけではありませんが、
00:20:56彼らは実際に重要な仕事をしています。これらの人々が存在する理由、
00:21:00そして彼らがコードベースに影響を与える理由があります。なぜなら、
00:21:05ソフトウェアで悪いことが起こってきたからです。だから私たちは、
00:21:09なぜソフトウェアを書くのか、
00:21:11なぜコンプライアンス規則が必要なのか、
00:21:13なぜプロダクトマネジメントがあるのか、
00:21:16なぜプライバシー法があるのかなど、
00:21:18あらゆる種類の規則を考案してきました。私たちがしてきたことは、
00:21:22ソフトウェアエンジニアの仕事を、
00:21:2440時間の週労働時間を20分間のGPU時間に変換したことです。しかし、
00:21:29他のすべての人々は依然として40時間労働で働き、
00:21:32会議室で互いに交流し、
00:21:33MCPを介してではなく、
00:21:35バックグラウンドで10個のエージェントがコードを吐き出しているソフトウェアエンジニアと同じ速度で作業することはできません。私たちがさらにすべきことは、
00:21:44AIコーディング時代において、
00:21:46重要な仕事を持つ他のすべての人々がソフトウェアエンジニアと同じくらい効率的になれるようなメカニズムを構築することです。なぜなら、
00:21:55結局のところ、
00:21:56企業には依然として本当の責任を持つ人間がいるからです。実際、
00:22:00コーディングエージェントを持つソフトウェアエンジニアがひどい仕事をすれば、
00:22:05これらの人々の中には刑務所に行く可能性さえあります。私は公開企業のCISOを3回務めました。それは恐ろしい仕事です。私がよく言う冗談のようなもので、
00:22:14真実ではありませんが、
00:22:16少し真実味があるのは、
00:22:17CISOという言葉がギリシャ語で「最初に屠殺されるヤギ」を意味する、
00:22:22ということですよね?しかし、
00:22:23最近CISOであることは本当に恐ろしいことです。なぜなら、
00:22:27何百、
00:22:28何千、
00:22:28何万もの他の人々がしているかもしれないことについて非難されるからです。あなたはそれを本当に制御することも、
00:22:35理解することもできません。そして、
00:22:37それはこれらの人々全員が5つのバックグラウンドエージェントにコードを書かせるようになる前もそうでした。だから、
00:22:45コンプライアンス、
00:22:46プライバシー、
00:22:47安全性、
00:22:47セキュリティに関して信じられないほど重要な仕事を持つこれらの人間が、
00:22:52物理世界で守らなければならないルールが依然として施行されていることを理解し、
00:22:57ある程度の認識を持てるような方法を見つける必要があります。Corridorでは、
00:23:02AIコーディングをエンタープライズ対応にするために、
00:23:05まず標準化が必要な領域が2つあると考えています。将来的にはもっと増えるでしょうが、
00:23:11少なくともこの2つから始める必要があります。1つ目はテレメトリー、
00:23:15そしてセキュリティワークフローです。テレメトリーについては、
00:23:19ブログ記事を書く予定です。おそらく来週公開されるでしょう。セキュリティエージェントは、
00:23:24自分たちがしていることすべて、
00:23:26ユーザーとのすべてのやり取りをプッシュアウトする必要があると考えています。これは、
00:23:32企業であれば、
00:23:33人々がエージェントで何をしているのか、
00:23:35誰が誰としてログインしているのか、
00:23:37プロンプトを完全に可視化し、
00:23:39エージェントがどのツールを呼び出しているのか、
00:23:42そして特にどのようなコードが生成されているのかを、
00:23:46一元的に確認できる必要がある種類のものです。私たちの製品は実際に可視性を提供しますが、
00:23:51すべてのコーディングエージェントがどのように機能するかをリバースエンジニアリングすることでそれを行わなければなりません。それは少しハック的で、
00:24:00あまり楽しくありません。コーディングエージェントがこれをサポートしてくれれば、
00:24:06はるかに良いでしょう。
00:24:07ここで最も進んでいる企業はAnthropicです。Claude Codeはテレメトリーに基づいた標準をサポートしており、
00:24:13それは素晴らしいオープン標準で、
00:24:15かなりクリーンです。現在の出荷バージョンでは、
00:24:17必要なものの70%が備わっています。将来のバージョンでは、
00:24:20私たち全員が必要とするものの90%を出荷するようです。だから、
00:24:24まずAnthropicがすべてを出荷し、
00:24:26次に他のすべての企業がそれをコピーすれば素晴らしいでしょう。しかし、
00:24:29すべてのコーディングエージェントが、
00:24:31全員が何をしているかのテレメトリーを取得できる能力を持っていれば、
00:24:34本当に素晴らしいでしょう。それは最初のステップに過ぎません。何が起こっているかを知ることは、
00:24:39あらゆるセキュリティソリューションの最初のステップです。そして、
00:24:43これがMDM、
00:24:43つまりデバイス管理によって設定できれば、
00:24:45本当に素晴らしいでしょう。だから、
00:24:47エンタープライズのCISOとして、
00:24:49MDMプロバイダーを使って全員のマシンに「ねえ、
00:24:51すべてのテレメトリーをこの場所に送ってくれ」とプッシュダウンできるでしょう。そうすれば、
00:24:56エージェントをすべてのマシンに送り出してそれを引き出そうとする必要がなくなります。2つ目の、
00:25:01より重要で興味深い領域は、
00:25:02その会話を標準化するメカニズムが必要だということです。話したように、
00:25:06ソフトウェアエンジニアとセキュリティエンジニアはコーヒーを飲みながら会話し合っていました。
00:25:10ええ、
00:25:11セキュリティエージェントとソフトウェアエージェントが、
00:25:13かつて人間が行っていたことを再現するために、
00:25:16互いに会話するための標準的な方法が必要です。そして、
00:25:18それはある程度決定論的である必要があります。
00:25:20繰り返しになりますが、
00:25:22私たちは現在、
00:25:22自社製品でこれを行っていますが、
00:25:24無理やり押し込んだような形です。そして、
00:25:26それは非決定論的です。LLMの気分次第なのです。そして、
00:25:30もしコーディングエージェントに30分間バックグラウンドで何かをするように依頼した場合、
00:25:34それがセキュリティエージェントと話して「これが私の計画です」と言い、
00:25:38計画についてフィードバックを受け、
00:25:40さらに「これが私のコードです」と言ってコードをチェックさせ、
00:25:43すべてのバグをチェックさせ、
00:25:45そしてすべてのバグを修正する、
00:25:47ということができれば素晴らしいでしょう。これらすべてがエンジニアの関与なしに行われます。そしてセキュリティチームはチェックリストで
00:25:54「うん、"
00:25:54すべて修正された」と確認する、
00:25:56これは素晴らしいことです。では、
00:25:58現在私たちCorridorが提供しているものは何かというと、
00:26:01今日、
00:26:02正式リリース(GA)しました。エンタープライズ顧客はいましたが、
00:26:05今日GAとして出荷したのは、
00:26:07VR IDプラグインと連携し、
00:26:09MCPを介してコーディングエージェントに接続するものです。何かを依頼すると、
00:26:13それが私たちに計画を送ってきます。そして私たちはそれを使って、
00:26:16コードベースに特化したセキュリティコンテキストを提供できます。それは一般的なセキュリティアドバイスを提供するだけでなく、
00:26:23企業がその会社固有のセキュリティルールを持つことを可能にします。例えば、
00:26:27あなたが大手銀行で、
00:26:28「社会保障番号はこう扱う」「クレジットカード番号はこうトークン化する」といったルールを持っているとします。それが、
00:26:34コーディングエージェントがそもそもその仕事を正しく行うことを確実にするために、
00:26:38そのセキュリティエージェントに提供できるコンテキストです。そして、
00:26:42そのルールが提供されたことを確認するために、
00:26:45バックエンドでそのコードをスキャンします。そして、
00:26:47IDEプラグインからテレメトリーも収集します。だから、
00:26:50これらすべてのインタラクションを確認し、
00:26:53プラグインがその役割を果たしていることを確認できます。そして、
00:26:56みんなが使っている未承認のコーディングツールもすべて見ることができます。皆さんの誰もが、
00:27:01セキュリティチームによって承認されていないコーディングツールを仕事に持ち込むことはないでしょう。この部屋には間違いなく多くのルール遵守者がいることでしょう。というわけで、
00:27:10私たちはすでにこれをやっていますが、
00:27:12これが多くの異なるコーディングエージェントがサポートする標準的なものになり、
00:27:16多くの人々が私たちと競争したり、
00:27:18私たちの製品をコピーしたりできるようになれば、
00:27:21非常に素晴らしいでしょう。
00:27:22それで構いません。多くの人々がこの種の作業を行うことで、
00:27:25この分野の「クリネックス」(代名詞)になれることを嬉しく思います。しかし、
00:27:29私は、
00:27:30コーディングエージェントとセキュリティエージェントがここで関係を持つことが未来になると考えています。ちょうどセキュリティエンジニアとソフトウェアエンジニアが、
00:27:38最近では完全に友好的で、
00:27:40まったく競争的でも困難でもない関係を持っているように。
00:27:42本日、これを正式リリース(GA)し、VercelのAIエージェントマーケットプレイスで提供を開始しました。
00:27:48だから、
00:27:49私たちはそこに、
00:27:50トップにいます。corridor.devで私たちをチェックするか、
00:27:53Vercelのマーケットプレイスで私たちを見つけてください。そこにある唯一のセキュリティ製品です。その点でのVercelとのパートナーシップに深く感謝し、
00:28:02本日この時間を与えてくださったことに感謝いたします。私たちと話したい場合は、
00:28:06CEO兼共同創設者のジャックと私が廊下でお待ちしています。いずれにせよ、
00:28:10AIコーディングエージェントというこのスーパーパワーを何百万人もの人々に提供しつつ、
00:28:14そこにいる悪者たちから彼らを守るために、
00:28:17ここで私たちにできることはたくさんあると思います。とにかく、
00:28:20アレックスです。alex@corridor.dev。もし話したいことがあれば、
00:28:24廊下でお待ちしていますか、
00:28:26メールをください。どうもありがとうございました。Vercelにも大変感謝いたします。良い一日をお過ごしください。