かたつじさん、最近このポッドキャストみたいな、OSSを話すようなポッドキャストを始めてみたんですけど、
結構最近、もう本当にこの直近3ヶ月とかでもそうなんですけど、OSSで起きた問題というか、なんというかなんですけど、ちょっと多くないですかね?
いや、ほんと多いですね。
ちょっとなんか、どうなってんだっていうぐらいなんですけど、ちょっと今日はそんな話していけたらなと思うんですけど。
そうですね、ちょっとね、数が多すぎるで、どこまで話せるかよくわかんないし、自分もね、ちょっとびっくりしてるというか、
もうなんか急速にね、我々が好きだったOSSが終わりつつあるんじゃないかっていうぐらい、本当にね、最近ちょっとやばいですね。
ちょっと崩壊が見え始めてきたみたいな、そんな予兆が感じられるんですけど、個人的には。
いや、自分も感じてますよ。
ちょっとどこから話していければなと思うんですけど、なんかあったりします?印象的なこれみたいなの。
本当にどっから話すかなんだけど、時系列的にちょっと前っていうと、そのXZの事件は結構やばかったかなと思っていて。
なんかちょっと詳細教えてもらってもいいですかね、XZの件について。
なんかXZって結構前からLinux、特にLinuxとかで使われてるのかな。
Gzipとかって結構古くから使われてる圧縮形式じゃないですか。なのでXZにした方が小っちゃくなるんですよ、ファイルとかが。
なので結構XZを使って、Gzipとかよりも小っちゃくした上でファイルダウンロードして展開するみたいなのって結構使われてたんですよね。
特に大きいファイルを扱うようなところで。
一般的に使われてるようなファイルフォーマットというか、圧縮形式だったって感じですね。
圧縮形式で、もちろんLinuxだったらマップとインストールとかで入るような超有名ソフトウェアです。
そのXZにバックドアが仕込まれるっていう事件が結構あったんですよね。
これが結構入り組んでてというか、もともとのメンテナーの人がちょっと忙しいってなって、その協力者が現れたんですよね。
この人がジアタンっていう名前で、なんか中国系っぽい名前なんですよね、名前は。
で、その人がステア化とかじゃなくて、ステア化で突然プルリグだけ送ってきたみたいな感じじゃなくて、
もう数年かけてちゃんとした変更とか送ってきて、この人は大丈夫そうみたいな信頼を得てたんですよね。
実績をちゃんと作ってたってことですよね。
しかもそれが何ヶ月とかじゃなくて、数年単位でちゃんとやってたってことなんですね。
で、なんか突然変なコード入れ始めたんだけど、なんかそのコードもなんかよく見るとちょっと変みたいな。
よく見ないと分からないってことですよね。ちゃんとレビューをしないと分からないレベル。
いや正直ね、ちゃんとレビューして分かるか結構怪しかったんですよね。
確かね、ドットがあるかないかみたいな。
すごいですね。
僕も最近ちょっと目があんまり見えなくなってきてるんで、正直あれ気づけた自信ないですね。
普通にメンテナーだったとして。
自分がメンテナーだったとして、最近あんまり目が見えてないからドットがあるかないかで、
そんなバグ、脆弱性とか埋め込まれてるとか気づきようがないですよね、正直。
そうですね。
で、この人が、ジアタンって人が結構やばいやつを入れてきたと。
で、それが結局SSHに悪影響を及ぼしていて、それでなんかうまいこと乗っ取れるみたいな、そういうことをやってきたんですよね。
で、これがやばかったのが、あのね、これUbuntu 24.04をおそらく狙ってきてたんですよ。
もう特定のディセレビューションのみって感じだったんですね。
特定というか時期的に、そのつい先日も26.0に出ましたけど、Ubuntuって2年に1回LTSが出るんですよ。
LTSだと長期間メンテナンスしないといけないじゃないですか。
そうですね。
なのでUbuntuは結構そのLTSにみんな突っ込みたいんですよ、ソフトウェアを、新しいやつを。
そこに突っ込まないと。
長期メンテナンスで入るタイミングで、まあいろいろ入れていきたいっていう。
入れていきたいし、それに入んないとLTS2年間入んないから、みんな入れたいんですよ。
なので結構そこのゴタゴタで突っ込もうとしてたような時期に出してるんですよね。
ちょっとゴタついてた時ってことですよね、ちょっとリリースマネジメントっていうか、作業が立て込んでた時に入れてたっていう。
なのであんまり世間的に言われてないんですけど、自分は絶対あれ24.04狙いだったんじゃないかと思っていて。
だからね、つい先日26.04出たんですけど、その時もまたXZみたいなの来るんじゃないかと思って、ちょっとハラハラ自分はしてたんですけど。
幸い今のところは出てないかな、それについては。
これに関しては本当にヤバいバックドアをLinux全体に仕込もうとしたっていう本当に激ヤバ事件でしたね。
これ成功してたらどういうデメリットというか、どういうバックドアが仕込まれてたんですかね。
これ確かSSHがおかしくなってて、もう外からSSH入れちゃうみたいな、そういう脆弱性だったはず。
もう普通に侵入できる。
普通に侵入できちゃうっていう。
なるほど。
で、しかもなんかさっきJia Tanっていう人ってなんか中国っぽいよねって言ったんですけど、なんかいろいろ調査されてて、なんか多分中国じゃないんですよね、この人。
検証の仕様ないかもしれない。
検証仕様がないし、あとこのジアタンって人が確かそのXZの前は特に活動しなかったと記憶しているので、乗っ取る意味が多分ないんですよね。
なるほど。他のプロジェクトに関わってないと、このXZだけ、いやー難しいですね。
いやーこれ本当にね、難しいし、やっぱり自分もいくつかOSS抱えてる人間なんで、
自分が例えば年取って死にますとか、もう引退したいですとか、なんかそうなることって全然あるじゃないですか。
そうですね。
その時に自分のOSS誰かに任せられるかっていうと、難しいですよね。リアルの知り合い以外に任せられないんじゃないかなって正直思ってますね。
なんかもうちゃんと対面で会って、何年間か信頼関係がある人じゃないとって感じですね。
そうですね。もうなんかネットだけでやり取りしてる人とか、これもう信じられないですよねって話になる。
無理ですよね。物理でなんかこう信頼関係結べないと結構厳しいですね。こうなってしまうと。
ちなみにじゃあ、ちょっとこのXZ事件のことだけ話しててもあれだなと思うんで、ちょっといろいろ。
本当にいろいろあるからね。
いろいろあるんですけど、次取り上げるとしたらどうですかね。どこらへん行きましょうか。
日本で話題になったのは、やっぱりその炎のOSSのところですね。そのNode.jsのライブラリーで炎っていうのが結構最近流行ってるし、
日本人が作ってるっていうのもあって、結構日本だと話題になりやすいかなっていうところで、
実際クラウドフレアワーカーズとか、あのあたりで簡単に動くし、実際便利なんですよね。僕も使ってるし。
僕もこの収録システムで使ってますね、実際に炎を。
やっぱその炎にプルリクエストを大量に送りつけられてるんですよね、今。
AIスロップって名前がついてるらしいんですけど、そのAIがもうなんか、例えば脆弱性見つけて勝手にプルリクを送りつけるとか、石を送りつけるとか、
そういうので、メンテナーの人がもうこれどうすんだみたいな、さばききれなくなってしまっているっていうのが、今の炎であって、
これもう炎だけじゃなくて、いろんなレポで起こってるんですよ。日本語で発信してくれてるのが炎が多いから、結構よく話題に上がるってところですね。
まあ日本語で目にしやすいってことですよね、炎に関しては。
似たような問題がいろんなところで起こってて。
たかちん 本当に有名なOSSだったら大体起きてるんじゃないかなと思う。
もう起きまくってますよ。
たかちん 問題ですね。ちなみにこのAIスロップって名前ついてるんですね。なんか、AIスロップって言うと、
AIで生成された文章をとりあえず読まずに、受け手に雑に投げるみたいな。
そういう意味ですよ。本当に読んでんのかみたいな報告が結構来てるっていうのもある。
たかちん そういうニュアンスが結構増えてるっていうか、もう本当に投げつけられてるって感じなんですね。
それでメンテナーは何なんだこのプリクエストってなってしまうし、
あと脆弱性とかになってくると、やっぱりよくわかんないから無視ってわけにもいかないんですよね。
本当に有用な報告の可能性もあるから、ちゃんと見ないといけないってなるし、
もしそれが何か問題あったときに、何かどっかに報告するとか、リリース方法考えるとか、何かそういう色々あるじゃないですか。
そうなってきたら、いやもう大変ですよね。そんなのが一件二件どこじゃないってなると。
たかちん そもそもその有用なやつを見分けられないですよね。情報量が多すぎて。
情報量が多すぎて見分けられない。
たかちん だから一律クローズするしかないんだけど、ちょっとなんかどうするんだろうって感じですよ。
結局、たぶん未来としてはAIで大量に送りつけられたやつを、AIで意味があるやつだけをフィルターして。
たかちん フィルターするみたいな。
たかちん 来るのか、いやそれより前にそもそも報告できないようにするんじゃないかみたいな気もするし。
運用上はクローズするみたいな感じになりそうですよね。結局現実的には。
たかちん そうで実際あの最近GitHubでプリクエストをそもそも送らないっていう機能ができたんですよね。
プリクエストを受け付けてないっていう設定できるようになったんですよ最近。
リポジトリの設定で。
たかちん そうですね。ちょっと一昔前だったらそれGitHubの存在意義否定ではっていうのもあったけど、結構現実的になってきてるっていうのがもう今のOSSの現実ですよね。
ただもうGitHubの運営の方もそういう問題があるっていうのを認識して、リポジトリの設定でオプトアウトではあるだろうけども、
プリクエストを受け付けないという設定を入れないといけないっていう時代になってしまったってことですね。
たかちん そうですね。で実際あの今真面目にそれ検討し始めてるのがタンスタックっていうライブラリーですね。
これものJavaScriptの有名なライブラリーですけど、先日侵入されたんですよね。
サプライチェーンですかね。
たかちん サプライチェーンアタックで、なんか変なコード仕込まれたバージョンをリリースされているっていうのがタンスタックで。
これはNPMでリリースされているものですかね。
たかちん そうですね。NPMでリリースされていて、ただあのちょっと多分この後また話すと思うんですけど、
別の事件だとNPMでダウングレード、そのちゃんとした認証通ってなくて、ちょっとダウングレードしたような方法でリリースされていたっていうのがあったんだけど、
タンスタックに関してはもうその正規のルート、GitHub Actions経由の正規のルートで更新されているから、
もうその本当に本人がやったような、実際のレポのオーナーがやったのと同じ権限でNPMが更新されちゃったっていうのがタンスタック。
じゃあ正規の更新手段を使われたんですかね。
たかちん 正規の更新手段がGitHub Actions経由だったんで、それを使われたんですよ。
なるほど。ちなみにこれはどう攻撃されたんですか。
たかちん 自分もそんな詳しく追ってないんですけど、そもそもGitHub Actionsのプルリクエストターゲットっていう機能があって、
そのトリガーする時にプルリクエストターゲットをトリガーすることができるんですけど、僕この機能を使ったことないんですよ。
あれですか。ブランチを指定できるわけではない。
たかちん ブランチ、プッシュとかオンプッシュとか設定できるじゃないですか。
はいはい。
たかちん あそこにプルリクエストターゲットっていうのを書けるんですよ。
なるほど。
たかちん で、これをやるとフォークした時にフォークからのプルリクエストでも、
そのフォーク元のベースレポジトリのコンテキストで動かせるらしくて、
上手く使うと便利なこともあるらしいんですけど、正直プルリクエストターゲットで事故って多すぎるんで、
自分はもう一律で禁止にした方がいいんじゃないかなと思ってる機能ですね。
たかちん 本体の方のギターバーアクションズのシークレットとかを使って、
ギターバーアクションズが動くことがフォーク先からでもできるってことですよね。
フォーク先からのプルリクエストでできちゃうって話ですね。
たかちん で、できちゃうってことですね。
たかちん 勝手にプルリク送るだけで実行ができちゃう。
で実行できちゃうっていう権限。
たかちん これダメですよね。
結構強い権限ついちゃうから、いやこれダメ。
そもそも機能としていけてないと僕は思っていて。
たかちん ですよね。シークレットを触れることになっちゃうんだから。
だからこれギターブ自体が一律で動かなくするとか、
そういう対応したほうがいいんじゃないかなって自分は思ってるんだけど。
今後どうなるかですね。
たかちん これタンスタックに関してはもうつい先日でしたっけ?
最近で。
実際タンスタックはもうプルリクエスト受付の辞めようかって話も出てるんですよね。
たかちん なるほど。
たかちん 閉じてしまってコアメンテナーというか、ちゃんとコミット権持ってる人だけでやっていくみたいな感じなんですね。
そうです。もともとタンスタックって名前からも分かる通り、
タンさんって人が基本的には一人でずっとやっているプロジェクトなので、
たぶんそれでも全然いいんですよね。
たかちん なるほど。タンスタックのタンって名前だったんですね。
そうですね。
たかちん そうなんですね。なるほど。
たかちん ちょっとそこが狙われてしまったっていう。
それで、ギターアクションズのキャッシュをわざと汚染して、
実行した時に変なコードを紛れ込ませられるようにしているっていうのが攻撃されたらしくて、
おそらくタンスタックだけじゃなくて、有名なOSSのプルリクエストターゲットを使ってるやつは、
もう全部調べられていて、リストアップとかされてると思うんですよ。
たかちん 自動でできますもんね。
絶対されてるんですよ。だから有名OSSでプルリクエストターゲットを使ってるやつは、
もう全部狙われてると思ったほうがいいと思ってますね。自分は。
たかちん 厳しいですね。これはもう使わないほうがいいですね。
そう、これ使わないほうがいいです。
たかちん GitHubがデプリケートにしていく差もするべきなんじゃないかな。
自分はずっと思ってるんだけど、どうなるかちょっとわかんなくて。
たかちん どうですかね。
これを意識して、たぶんつい最近また出た機能があって、
NPMのほうで出た機能があって、要はさっき言った通り、
GitHub Actions経由でNPMの正規ルートで更新されちゃったわけじゃないですか。
たかちん そうですね、タンスタックに関しては。
タンスタックに関してはですけど、
それを防げないので、GitHub Actionsからは、
GitHub ActionsとかCEIからはステージとパブリッシングしかできないっていう権限が追加されて。
たかちん なるほど、一旦ステージに乗せとくみたいな感じなんですかね。
一旦ステージングエリアみたいなのに乗せられるようになって、
GitHub Actionsからはそこまでしかできなくて、
本当にパブリッシングしたい場合は、そのNPMの権限を持っている人が、
NPMにログインをしてポチッと押さないといけないっていう。
たかちん なるほど、一旦スタックしとくよっていう感じですね。
ポチッと押すだけなんだけど、人間が手で押さないといけない。
たかちん 絶対にAPI経由とか、そういうのじゃなくてブラウザでやってもらうっていう感じなんですかね。
2FAが必要なんですよ、この場合。
たかちん だから自動ではできなくて、人間が必ず二段階認証でログインしてポチッて押すっていう。
たかちん なんかNPMって、昔から知ってますけど、
こういうライブラリーの公開するような場所って、基本的に気軽にアップデートできるよだったりとか、
公開できるよっていう感じじゃないですか、基本的には。
もともとはそういう思想ですよね。
たかちん そんな感じじゃないですか、やっぱりライブラリーなんて使ってもらって、
アップロードしてもらってなんぼなんで、そこがどんどん防御せざるを得なくなってきますよね。
便利にするとそこが狙われちゃうから、わざと不便にするっていう機能ではある。
たかちん ですよね、このNPMのステージとパブリッシングに関しては完全に。
完全自動でパブリッシュはそもそも物理的にできなくされてるってやつなんで。
たかちん だから今までだったらGitHubでリリースタグ打ったらGitHub Actionsが走って、
そこでNPMにパブリッシュしてたっていうフローが完全にできなく。
そう、できないっていう設定ですね、これが。
たかちん なかなか世知辛い世の中になってきたなって感じなんですけど。
CIで全部やるなんて時代遅れになりつつある。
たかちん 自動化なんて甘えだって感じですね。
ちゃんと人間が押せと。
たかちん 人間の温かみのあるクリックをしろと、そういう話ですね。
それを強制する機能で、今回の単スタックについて言うと必要だよね、この機能。
たかちん 単スタックぐらい有名だと絶対やらなきゃダメでしょっていう感じですよね。
有名になったらセキュリティガチガチにしていかないといけないっていう、結構難しくないと思ってて。
最初どうするのっていう、一番最初はどうすればいいのっていうお話にもなってくるわけで。
新しいNPMのパッケージを公開するときに。
たかちん たぶんデファクトに今後なっていくんじゃないかなと思っていて、
ステージとパブリッシングは。結構ねちゃんと作り込まれてて、
ステージパブリッシングしかできない権限みたいなのをつけられるようになったんですよ。
なのでちゃんと設定すれば、もうその絶対パブリッシュ直接できなくなるんですね、
キットアップアクション経由で。でもそこまでちゃんと作り込まれてるから、
もうこれ使えってことなんだと思うんですよ、スタンスとして。
NPMとしてはね。
たかちん NPMのスタンスとしてちゃんと作り込んできてるから、たぶんこれを使えってことなんだと思うんですよ。
なるほど。かなり難しい。
NPMが影響範囲がでかすぎるっていうのが、そもそもの問題点なのかもしれないですけどね。
いろんな依存するようなライブラリーがいろいろ含まれてる。
プラスおそらくAIによって勝手に増やされる依存とかもあったりするのかなと思うんですけど。
NPMインストールを勝手にされてしまうとか、そういうのもあったりするのかなと思ってて、AIによってね。
たかちん それで言うと、ちょっと前にアクショスっていうHPクライアントですね。
これも先日サプライチェーンアタックされたんですけど、
自分が前にAIにNode.jsのコードを書かせてたら、アクショスめちゃくちゃ使ってきたんですよね。
たかちん 何で使うんですかねっていう話がありますけど。
たかちん アクショス使ったコードが参照したコードに多いからガーって使ってきたんだと思うんですけど、
今ってNode.jsにフェッチ入ってるからほとんどの形成必要ないんですよね、アクショスって。
たかちん フェッチでいいじゃんって。
たかちん そう、フェッチでいいじゃんって思うのに、何も言わないと使ってくるんですよ、ガンガンアクショス。
たかちん なので、そういうAIが一昔前のコードを見て、よく見るコードだからそれを真似して勝手にパッケージ依存を増やしていくっていうのも、今実際起こってることなんですよね。
たかちん そうですよね。これで何が問題になるかって言ったら、きっとちょっとエンジニアリングじゃなかった?仕事、全然非エンジニアの方がバイブコーディングとかしてる中で、絶対気づかずに入っちゃうじゃないですか。
たかちん そうなんですよ。最近思ってて、アクショスが入ってることに僕はフェッチでいいじゃんって思ったんですけど、絶対そういうバックグラウンド持ってない人気づかないじゃないですか。
たかちん そう、絶対。で、分かんないし、アキヨスじゃなくてもいいよねっていうことも分からないし、プラスアキヨスが問題になってますよって言うのにもう気づけないんだろうなと思ってて。
たかちん そう、そうですよね。だからこそアクショス狙われたんですよね。サプライチアタックした時の影響力がかなりでかいから。
たかちん なんでね、どうしようって感じなんですけどね、AIを使う側のリテラシーっていうのがどこまでAIで防御できるのかっていう話でもあるんですけど。
たかちん そうなんで結局アクショスのサプライチアタックは結構本当にびっくりだったし、自分もやっぱりアクショスに依存するコードがAI吐きまくってるのを以前見てたから、いやマジ怖いなって思ったんですよね。
たかちん いやめちゃくちゃ怖いですね。ちなみにこのアキオス、アキシオス、アキシオスって言うんですかね。
たかちん まあ分かんない。読み方分かんないけど。
たかちん ずっとアキオスって読んでた。このアキシオスに関しては、ちょっと前ですよね、これは。今年入って。
たかちん からかな。
たかちん でも3月ぐらいですかね。
たかちん 結構ね、連鎖的に起こってるんですよ、そのサプライチアタックって。
たかちん そうなんですね。
たかちん 結構割と最初の方に起こったのが、TJ Actions Changed Fileってやつ。
たかちん これもね、結構有名なアクションやつで、ギターアブアクションズで読み込んで使えるサドパーティーのアクションで、
たかちん 変更されたファイルの一覧を取るために結構便利で、結構広く使われてたんですよ。
たかちん リフを取るみたいな感じですかね。
たかちん そんな感じですね。
たかちん ギターアブアクションズの中で使うリフ。
たかちん ライブラリーみたいな感じ。
たかちん なので結構気軽にみんな使ってたんですよ、このChanged Files。
たかちん これがサプライチアタック受けて、ここから結構連鎖的にいろんなものが起こってて、
たかちん アクションズは確かそれの一つだった気がしますね。
たかちん そうなんですね。このTJ Actionsは2025年の3月に攻撃受けている、去年の1年前ですよね。
たかちん そうですね。
たかちん そこから連鎖が発生してるんですね。
たかちん 1ヶ月おきぐらいにどんどこどんどこ来たりとかしていた気がする。
たかちん あれなんですかね。最初に入られて、そこからのもうちょっと違う有名なやつ行ってみたいな。
たかちん これに依存してるライブラリーとかレポ多いから、そこからちょっとずつちょっとずついろいろ行ったっていうのがありましたね。
たかちん 本当に手繰り寄せて手繰り寄せてというか、ちょっとずつ情報を集めていって、
たかちん いろんな有名なところに入っていくって感じのことをしてるんですかね、攻撃者は。
たかちん そうですね。明らかに攻撃者の攻撃レベルもどんどん上がってて、
たかちん ちょっと前までボンミスみたいな変なコースを書いて動いてねえじゃんみたいなそういうのもあったんだけど、
たかちん もっとなんかどんどんどんどんレベル上がってるんで。
たかちん だってもちろんAI使ってますもんね。
たかちん そう、あっちもAI使ってきてるし、いやもう本当にね、あっちも進化してるんですよ、明らかに。
たかちん てかこっちも進化しないといけないですけどね、もうどうにか防御がかかるもん。
たかちん そう、防御も進化しないといけなくて、だから、例えばそのギターバークションズって、
たかちん V、なんだっけ、アットマークV1.0とか、なんかそういう設定すると勝手にマイナーバージョンアップは勝手に上がってくるんですよね、ギターバークションズって。
たかちん ギターバークションズのパッケージですかね、アクションですかね。
たかちん ギターバークションズですね。あれ、なんか勝手にバージョン上がってくるようにできるんだけど、
それもうダメだよねっていう感じになってきていて、ちゃんと全部ハッシュ値で固定しようよって、ギターバークションズに関しては完全になってますね。
たかちん そのマイナーバージョンのアップデートであったとしても、固定バージョンを入れるようにしないといけない。
たかちん そう、固定のハッシュIDで全部完全に固定するっていうのが、今一般的になっちゃいましたね。
たかちん でもGitHubの設定で強制できるんですよ。
たかちん そういう設定あるんですかね。
たかちん 設定あって、自分の会社は結構頑張って設定したんだけど、やったほうがいいですね、これは。
たかちん いやもう、なんていうんですかね、そこら辺もデフォルトでマジでやってみてくれって感じなんですけどね、GitHubのところに関しては。
たかちん 前からちょいちょい話してるリノベートっていう、自動でバージョンアップしてくれるやつがいるんですけど、そういうリノベートとセットで考えないといけないんで、
たかちん これ強制されちゃうと、たとえばバグ修正とかあったときに入らなくなっちゃうんで。
たかちん だから、信頼するバージョンだけ通したいですよね、やりたいこととしては。
たかちん そう、で、信頼できるんだったら勝手にバージョン上がってほしいんだけど、なかなかそうは言ってられないので。
たかちん 信頼ができなくなってるんですよね。
たかちん その信頼がなくなってるのが、今のOSSの問題なんですよね。
たかちん シンプルにちょっと信頼性が揺らいでるっていうところが、今のOSSの最大な問題。
たかちん そう、何を信じたらいいか分かんなくなってるのが、今のOSSだし、で、やっぱりソースコードが公開されているから、
たかちん AIデスキャンして何か問題見つけて、で、攻撃するっていうのが完全にもう自動化されてるんですよね。
たかちん だから、誰が狙われるか分かんないし、もうなんかOSS自体を信頼していいのかっていう問題がもう完全に紛失しちゃっている。
たかちん だから、もうOSSとして公開しない方がいいってこともありえますよね、普通に。
たかちん 今直近だと、ソースコード公開するとAIにスキャンされて何か問題を攻撃されるから、公開する方がリスク高いってなってしまっているのが今ですね。
たかちん いやー、難しいですね。だから、攻撃する余地があるソフトウェアに関してはって感じですよね。
たかちん でも、攻撃する余地がないソフトウェアなんてあるのかって話があって、超短い、数行の子だったらあるかもしれないけど、
たかちん やっぱ、実際に使われている人気のあるある程度大きいソフトウェアになったら絶対何かあるんですよ。
たかちん まあ、そうですよね。
たかちん だから、本当にね、今結構ヤバい時代に生まれてしまったなという感じがします。
たかちん ちなみに片辻さん的に、いろいろ今まで話し聞いてた中でいろんなチップスあったかなと思うんですよ。そのギターアクションの設定だったりとか。
たかちん あとはNPMのステージドのやつだったりとか、そういういろんな防御の設定とかがある中で、
たかちん どういう姿勢でOSSと見き合っていったらいいかみたいなのあったりします?
たかちん 一応幸いのことに、そのAIによって、その研究側も防御側も結構発達してきてるんですよ。
たかちん なので、一応今言ったやつって、そのXセットについては違うんだけど、それ以外の最近のやつについては、もうだいたい1日以内ぐらいに見つかってるんですよね。
たかちん 攻撃が行われたとしても、24時間以内にはリカバーできてるってことですよね。
たかちん 最近のやつは基本全部できているって状況で、なので、ちょっと遅らせる、すぐ更新するんじゃなくて、
たかちん 1日とか2日とかちょっと様子見るっていうのが必須になってきたなっていうのが最近ですね。
たかちん だからさっきのギターバーアクションズのやつも、マイナーアップデートがあったからすぐに更新されるってなってしまうと結構厳しいですよね。
たかちん 結局、実際あるあるなんですけど、リノベートとかDependabotとかその手の自動更新されるやつ入れてて、
たかちん せっかくハッシュコミットIDで固定してても、更新されたらすぐにそのプリクエスト作っちゃって、それがギターバーアクションズで実行されちゃったら、結局意味ないんですよね。
たかちん そうですよね。
たかちん なので、リノベートとかはそういう機能あるんですよ。その1日を遅らせる、24時間遅らせるとか、そういうのを設定かけばできるし、
たかちん で、NPNとかもそういう設定が生えたんですよね。ちょっと遅らせるみたいな設定が。
たかちん なので、今後そういう1日遅らせるとかがもう当たり前になるだろうなっていう。
たかちん ってかもうみんな怖すぎて、すぐにアップデートするっていうのはみんな怖くて多分もうできないと思いますよ。
たかちん 何あるかわかんないですからね。
たかちん そうなんですよ。だからもうみんな今1日待つっていう、1日2日待つっていうのがベストプラクティスというか、もう多分必須になってきているのが最近ですね。
たかちん じゃあちょっと、アップデートがあったとしても落ち着いてというか、
たかちん ちょっと様子見る。
たかちん ちゃんとそのバージョンアップに関して意識的に慣れってことですよね。使う側としては。
たかちん ちょっと様子見るというか、すぐに飛びつかないっていう話ですよね。
たかちん でけどこれもこれで欠点はあって、やっぱりじゃあ逆に超致命的な脆弱性が出て、
たかちん もう今すぐ今日中にアップデートしないとヤバいですみたいなのもあり得る。
たかちん あり得ますね。
たかちん 例えば結構昔だけど、Javaのlog4jっていう脆弱性が結構出たときに、
たかちん 僕のサクラのBPSとかもめっちゃ来てたんですよ。ロシアからそのlog4j狙うようなリクエストがめちゃくちゃ来てたんですよね。
たかちん なんでもうなんかlog4jが発表されました、でもうすでに攻撃始まってます。
たかちん 今すぐアップデートしてくださいみたいなのもあるはあるんですよね。
たかちん そうですね。
たかちん そうなんだ。そういうのは1日遅らせちゃうと気づけない可能性も全然ある。
たかちん 難しいですよね。今聞いてて1個思ったのが、両面来たらどうなんだろうっていう。
たかちん そうですね。例えばパッケージ生存の中で依存しているライブラリで、1つは今日順にアップデートしないといけないけど、
たかちん もう1つは今日侵入されて今対応中ですみたいになっていたときに、どうなっちゃうんだっていうのは結構ある。
たかちん 同時に来たりだったりとか、あとは今すぐアップデートしてくださいが、もし嘘だったらどうするのか。
たかちん そうですね。それはもうなんか人とかAIにスキャンさせるしかないと思ってるんですよ。
たかちん 実は僕も前妄想してたんですけど、もうサブンが来たときに全部サブンを見てAIにレビューさせて問題ないかっていうのを全部レビューさせればいいんじゃないかって思ったんですよ、昔。
たかちん 昔って数ヶ月前とかかな。ちょっと前にそういうこと思ったんですけど、NPMってめちゃくちゃ更新来るじゃないですか。
たかちん しかも依存してる量も多いし、そうなるとめっちゃ金かかるんですよ、これ。真面目にやろうとすると。
たかちん 全ソースコード、依存しているソースコードを。
たかちん 依存しているソースコード全部見ないといけないし、あとサブンがあったらそのサブン全部見ないといけない。
たかちん お金かければできるけど。
たかちん そう、AIでお金かければできるけど、めっちゃお金かかるじゃないですか。
たかちん めちゃくちゃかかる。
たかちん そしたら、なんと以前も紹介したフラットセキュリティさんっていうセキュリティ会社がタクミガードっていうサービス出してきたんですよ。
たかちん これが、今NPM以外もあるんだけど、最初はNPMで出してて、まさに今言ったようなことやってる。
たかちん そのNPMのリポジトリのプロクシーサーバーみたいな動きをするんで、URL書き換えれば普通にNPMとして使えるんだけど、
たかちん 全サブンをAIとかいろんなパターンマッチとかいろいろな方法でチェックしていて、
たかちん ちょっと怪しいなってやつは人間がチェックしてるから、その落ちてこない。NPMインストールした時に。
たかちん タクミ側ですでにレビューされてるから安全だよねみたいな。
たかちん AIでレビューさせて、大丈夫そうってやつは普通に使えるから、NPMインストールですぐに更新がすぐに降ってくる。
たかちん で、ちょっと怪しいなってやつは人間が目で最終的には見てるらしいんだけど、なんかそうやってちゃんとちゃんとチェックしてくれるっていう。
たかちん いいですね。ちょっとなんかタクミの宣伝チックになっちゃったんですけど。
たかちん まあ宣伝チックになっちゃうんですけど、タクミガード、実際自分の手元実は入れててタクミガード。なんかめっちゃ怖いんですよね。
たかちん 例えばなんかそのNPMインストールCodeXとかってやって、CodeXアップデート結構頻繁にやってるんですよ、僕。
たかちん CodeXよく使うから。このCodeXが攻撃されたら終わるなと思って。
たかちん めっちゃ怖いから、僕の手元グローバルに、ホームディレクトリに.npmrc置いとけば全体読んでくれるから、そこタクミのやつにしましたよ、僕。手元のMac。
たかちん すごい。それは無料で使えるんですか?
たかちん そうですね。レートリミットとかはいろいろあるんで、使い放題ってわけじゃないんですけど、僕一人が使う分には全然無料ですよ。
たかちん じゃあ一人ずつが使う分には問題なさそう。
たかちん まあそうですね。IPアドレスで制限とかかかったりするから、会社とかで使うと多分レートリミットいっちゃうし、
たかちん あとGBA経由だと結構レートリミット厳しいので、そこは認証とかしないと使えないと思うんですけど。
たかちん じゃあちょっと防御面に関してはそういうタクミガードだったりとか、きっといろんなサービスだったりとかツールとか今後もいろいろ出てくるかなと。
たかちん いやでもどうすかね。めちゃくちゃ金かかるんで、タクミガードみたいなやつって僕も思いついてたんですよ。ただ、金がめっちゃかかるって問題があるんですよ。
たかちん それでいうとタクミガードが継続されるかどうかは。
たかちん 継続されるかだいぶ僕怪しいと思っていて、これとんでもなく金かかるからやばいよなと思っていて。
しかもさっきGBAだとレートリミットが厳しいって話したんですけど、これは一応認証登録すれば、登録して認証すれば一応結構レートリミット大きくなるんですよ。
たかちん なので認証すれば、大体の会社多分動くんですよね。
同時にGBA同時並列でたくさん動かしたら厳しいかもしれないけど、大体の会社多分動くんですよ。
それぐらいレートリミット大きくできるんで、これ無料で今んとこ使えちゃうので、なかなかね、これは大変だなと思ってます僕は。
たかちん ちょっと継続性は問題ではありつつも、現状であれば。