「パッチ」に潜む危険な罠
先日、Ruby1.9.2がリリースされました
思ったより早かったですね(`・ω・´) b
そこで、開発中のシステムのバージョンを1.9.1から変更できるのか
調査のために修正点の情報を集めていたのですが・・・
Ruby 1.9.2リリースとWEBrick脆弱性問題の顛末 - 西尾泰和のはてなダイアリー
・・・こんな記事を見つけました
大雑把な顛末は該当記事で確認してもらえばいいのですが、
本来は見つけた脆弱性をRuby開発コミュニティに報告し、
そのパッチを待ってから公開が「正しい」やり方です
今回はパッチ作成より前に脆弱性が公開されたため、
ゼロデイ攻撃可能な状態になってしまったのです(((((( ;゚Д゚)))))
同じようなことをGoogleの中の人がWindowsでやらかして、一時期大騒ぎになりました
Windowsヘルプに未修正の脆弱性が見つかる――情報公開に批判も - ITmedia エンタープライズ
Windowsの未解決の脆弱性を突く攻撃が多発、MSが注意喚起 - ITmedia エンタープライズ
これだけでもそれなりに問題なのですが、
「Appleがライセンスを明記しないままruby-devにパッチを投げてきた」
ことが最大の問題なのです
- Case1:パッチをそのまま取り込んだ場合
リリースしてから数年後・・・
林檎の弁護士says: おうおうおう、お宅のシステムで使ってる"るびー"ってのあるやん あれの中にうちのコードが入ってるんですわ でまあ、今度そのコードからライセンス料ちゅーのをいただくことにしたわけや お宅の会社の売り上げと"るびー"の貢献度からすると・・・ 今回は○○万$でどないや?
- Case2:ruby-devの中の人がパッチを書き直した場合
リリースしてから数年後・・・
林檎の弁護士says: おうおうおう、お宅のシステムで使ってる"るびー"ってのあるやん あれがどうもうちのコードをぱくってるらしいんですわ そんで、今法廷で係争中や もし、あのコードがうちの会社のもんって判決が出たら、 ○○万$はライセンス料をいただかなあきまへん 場合によってはあんさんの会社もうちの会社に訴えられまっせ? そこで・・・や とりあえず△万$くらいで手打ちにしまへんか?
えせ関西弁については目をつぶっていただくとして、
このような事例はいくらでもあります(((((( ;゚Д゚)))))
そこで、「投稿されたパッチを『絶対に』見てない人が、
脆弱性情報だけで書いた、パブリックドメインのコード」が
実際には取り込まれたわけです
もちろん、時間をかけてAppleに確認を取ることも可能だったでしょうが、
今回はすでにゼロデイ攻撃が可能になっており、
そんな時間がなかったと思われます
ちなみに、その「修正パッチ」はこちらで確認できますが・・・
WEBrickのXSS脆弱性 (CVE-2010-0541)
・・・(結果的には)たったの一行ですΣ(゚Д゚)ガーン
でも、その一行でRubyがAppleという一企業にコントロールされる恐れがあったと考えると、
OSSのライセンスって怖いですね・・・