流出したソースコードからIE 5の脆弱性が発覚 81
ストーリー by Oliver
BUGBUG 部門より
BUGBUG 部門より
MIYU曰く、"米SecurityTracker社が
先日WEBに流出したWindowsのソースコードから、Internet Explorer 5に存在している「リモートから任意のコードが実行できる脆弱性」が発見された事を報告していると
INTERNET Watchが伝えています。
これは、ビットマップファイルに仕掛けをしてInteger Overflowを起こすものですが、原因になっているのはWindows 2000の「win2k/private/inet/mshtml/src/site/download/imgbmp.cxx」だという事です。現在マイクロソフト社のサイトでは対応がされていない様ですが、この脆弱性はInternet Explorer 6には影響しないそうです。(SecurityTracker社の報告書)
危惧されていたとおり、流出したソースから脆弱性が発見されたわけですが、ウイルスの登場という形でなく、セキュリティー会社からの発表という形だった事は不幸中の幸いでしょうか。記事ではIE5のユーザーに対して、IE6もしくは他のブラウザへの乗り換えを勧めています。"
報告元はsecuritytrackerではない (スコア:3, 参考になる)
大変申し訳有りません (スコア:1, 参考になる)
Full-disclosure ML。
報告者は、gta@hush.com
大変申し訳無い事をいたしました。
Watchの記事自体が誤りであるというご指摘ですね。
見つかった脆弱性の性質には誤りは無いのでしょうか ?
毎度おなじみという事のようですが、
私の様な素人にもわかる様にそれがどういう性質のMLか、
いつそれが公開された物なのか等詳細を記載していただけると
大変有り難いのですが、…… お願い出来ませんでしょうか?
# 以後このようなミスをしない為にも是非お願いします
ミスをした当人(MIYU)です
Re:大変申し訳有りません (スコア:2, 参考になる)
コードが書かれているとおりなら、脆弱性の内容に誤りはないです。また、問題の投稿は、Full-disclosure ML に、SecurityTracker 社の記事にあるように、2/14 に行われたものです 。ここまで書くと探すには困らないかと。なお、実際の投稿には Subject はありますが、PC 的にアレな代物なので SecurityTracker 側でカットされています。
で、このメーリングリストですが、セキュリティ関係の欠陥を議論する普通のメーリングリストです。月三千通ベースなので、やや小規模でしょうか。ただし、このテーマのメーリングリストは多くないのと、題名の通り情報は隠さず開示して議論 (欠陥の内容、回避など) を行うことを標榜しているため、穴指摘はあります。穴の技術的な詳細が、パッチが出た事後にでも開示される場って少ないので (特にこの関係の話は新規の種類の欠陥、ってのが少なくない)、貴重な場の一つではあります。
Re:報告元はsecuritytrackerではない (スコア:1)
# Securitytracker の記事は、もちろん価値がありますが FYI ですよね。
Re:報告元はsecuritytrackerではない (スコア:1)
#第一、管理者であるというなら、BUGTRAQ とここと、ほか数カ所は読んでいて当然かと。他の人に教えて、ってのは呆れた甘え以外としか思えません。
この脆弱性は (スコア:2, 興味深い)
発見される確率が非常に低かったものなのでしょうか?
それとも、遅かれ早かれ発見されたはずのものだったのでしょうか?
この問題は、ソースの秘匿性の是非に関する主要な論点の一つ
だと思うのですが、今回の件はその事に対する例証の一つになる
のではないでしょうか。
# たとえば見せるなら最初から見せ、隠すなら徹底的に隠すべしとか。
Re:この脆弱性は (スコア:2, 興味深い)
ただ、「ソースが無い」状態は「ソースがある」状態よりも遥かに「数」が
多いので「見当がつきやすい物は見つけやすい」とも言えるでしょうし。
//シェア(ユーザー数)が少なければ当然見つかる確率も下がる…:P。
ソースがあり、それを眺める時間と理解する能力があり、更に頭の中で組み立てる
事ができる人なら、実行環境のみの状態よりも遥かに多くの「ミス」を見つけられる
事は望めると思うのです。
書いた本人が気がつけば良いのですけど、詰まらないミスをしてランタイムエラーを
だして「うぎゅぅ…」状態になって探すって言うのもありですから、「書いてる時に
は解らないしビルドした時だって解らない(だからランタイムエラー)」そして
おまけに「滅多にそう言った条件に遭遇しない」ならそれは潜在的なバグとして
日の目を見ないで終わるかもしれません。
MSの考え(MSだけとは言いませんけど)はこの「日の目を見なけりゃ解らない」
派で、オープンソースは「とにかく見つけて潰せ」と言った積極的な姿勢だと思う
のですけど。
どちらが良いかはあたしには解りませんけど、言える事は「MSはオープンソース
をけなしてる(?)暇なんか無いのじゃないの?」って事かも:P。
----
:oすずめのおやどはどこじゃろぉ
('>ぴよぴよ
Re:この脆弱性は (スコア:1)
ソースがあっても、穴の数は増えません。
# 目の数は増えますけどね
# 1,2,たくさん
補足いたします… (スコア:1)
//「目の数」と同じ意味です。
失礼致しました。
----
:oすずめのおやどはどこじゃろぉ
('>ぴよぴよ
Re:この脆弱性は (スコア:1)
もちろんそれはオープンソースにも言えることですですし、オープンソースのほうが悪意を持つユーザが見ることができる確率は多いでしょうけどね。
ただ、社会基盤としてソフトを見るなら多くの人(数的には、時間的にはお金をもらう職業プログラマが見るクローズドも同じくらいなのかもしれないですが)見ることが出来て修正ができる分オープンなソフトのほうが、セキュリティ的観点以外から見てもいいように思います。
Re:この脆弱性は (スコア:1)
んー、それこそが「オープンの穴」である「錯覚」だと思うんだけどね。
「見られること」と「検証していること」はまったく別の話だってことをまず理解しないと。
みなさんがソースでもバイナリでも持って来るときに、
どれだけの人がソースに目を落としているか非常に疑問です。
おそらくほとんどの人はバイナリだけ落としてるのでは?
誰も見てないのであればソースなんてないのと同じですよね。
結局、今のオープンソースのセキュリティは、
「誰かが見ているであろうと言う期待」と言う薄氷に過ぎず、
それは「誰も見られないから見つからないであろうと言う期待」と、
レベル的には何も変わらないんですよね。
実際、信者達があれだけ「完全にセキュアなんだ!」と豪語してたqmailにしたって、
蓋を開けてみれば「なんでそんなバカな」と言うぐらい簡単な仕組みでBoFがあったりするし、
結局「誰かが気が付くまで」と言うポイントはクローズでもオープンでも変わらないんだよね。
そこを理解せず単に「見られる」ことが「安全である」と強調するのは、
「赤信号、みんなで渡れば怖くない」を地で行く行為だと思うけど。
#オープンソースは「参加する事」で初めて威力を発揮するもの、
#誰かに期待するならどっちでも同じだと思いますが。
Re:この脆弱性は (スコア:1)
Re:この脆弱性は (スコア:1)
#まぁなんか我ながら意味不明な文章だしな・・。
多くの目があるからセキュリティは安心なんて書いたつもりはなくて、多くの人が携われるから社会基盤として「安心」して使えると書いたつもりです。
ソースプログラムレベルでのセキュリティという観点でいえば、コードの質を保つ体制が重要であってその方法のひとつにオープンソースがあるだけだと考えます。
#もちろん、オープンであることの意味はほかにもいろいろあります。
もう少しわかりやすくいえば、
オープンだろうがクローズだろうが、コードの質を保つ努力をしなけりゃ同じこと、でもオープンソースだと後々便利なことがおおいよ?どっち使う?って話です。
前半部分については、たとえクローズドソースで隠し通したとしても、複数人で開発している限り、オープンソースより確立は低いかもしれないけど悪意のソースを閲覧できる人がいないとは言い切れないよね?それって概して言えば実は危険度ってそんなにかわらないんじゃないの?って話です。特にクローズドソースだと気がつかない被害が多く出てそうな気がします。(まぁ実害が出たって話聞かないですから、杞憂かもしれませんけどね)
#とりあえずオープンソースだから安全だとはおもってないってことで。
Re:この脆弱性は (スコア:0)
・最初から見せる→事前検診、対処療法
今回ソースの一部が出回っただけでセキュリティ上の問題が発見
されたわけですけど、自社以外の期間にソースチェックをして貰う
ということは無かったんでしょうか。
Windowsのソースコードが含まれています. (スコア:2, 参考になる)
汚染を気にする人は辿らない方が賢明かと思います.
Re:Windowsのソースコードが含まれています. (スコア:2, 参考になる)
将来的に「このコードは流出したWindowsのソースコード由来のもの云々」と争うときには身は白ければ白いほどいいわけですし。
Re:Windowsのソースコードが含まれています. (スコア:2, 興味深い)
そのうちこんな事になるかも(ぉ
15 名前:仕様書無しさん 投稿日:03/10/14 (火) 00:34
ttp://www.hoge.net/~foo/index.html
16 名前:仕様書無しさん投稿日:03/10/14 (火) 00:34
>15ソース張るな
リンク先ソースコード注意
Re:Windowsのソースコードが含まれています. (スコア:1)
# すばらしいことだ
Re:Windowsのソースコードが含まれています. (スコア:1)
# ブラウザで、ブラウザも含む何かをクラッシュ
ということは… (スコア:1)
え?私?見るわけないじゃないですかぁ~(汗
----------------------------------------
You can't always get what you want...
Re:ということは… (スコア:1)
少しオフトピ (imgbmp.cxx) (スコア:1)
# Microsoft 流って .cpp かと思ってた。
Re:少しオフトピ (imgbmp.cxx) (スコア:1, 参考になる)
流出したソースコードはMainsoftが使用していた物らしく、
問題のファイルの全部がMicrosoft製だとは限らないようだ。
ちなみに、MainsoftはWindows向けアプリケーションを
UNIX環境に移植するためのツールとかを作ってる会社。
Windows Source Leak Traces Back to Mainsoft [betanews.com]
やはりオープンソースの方が・・・ (スコア:1)
Re:やはりオープンソースの方が・・・ (スコア:1)
ちゃんとしたデザインなしに実装するから問題が発生しています。
それは、最近の Open Source な開発モデルにもありえます。
# とりあえず 10% でも作ったら勝ち(プロダクト スタート)
# Linux なんてまさしく、それ。
「多くの人の目でチェックされた方が安全」
とか言われる人もいますが、それ以前にやるべき事があります。
もちろん、おっしゃった本人は、デザインがあたりまえのようにできる人ですが、
それを聴いてる人達の level が低く、意味を読みとれないのは残念ですね。
昔の人は、いきなりコンピュータの前に座ったのではありませんよ。
Re:やはりオープンソースの方が・・・ (スコア:1)
昔の人がいきなりコンピューターの前に座らなかったのは、メンテナンスとかバグ防止とかデザインというよりも、コンピューターというリソース自体が非常に高価で、あまり長時間使えないから、「コンピューターの前に座れる貴重な時間を無駄にしない」という面が大きかったのではないでしょうか。
昔も今もソースの汚いシステムは存在していますし。昔はソフトウェア工学も未発達でデザインもへったくれもないし。
Re:やはりオープンソースの方が・・・ (スコア:1)
その為に、デザインやアルゴリズムを練るでしょう。
当時それが、手段であったか、目的であったかと言われれば、
手段であったと思いますが、結果として素晴らしい事だったと。
で、現在はコンピュータに無尽蔵に触れますので、
手段としてデザインやアルゴリズムを練っても無駄だと。
このようなバグを含んでしまう可能性は (スコア:1)
素人がやりがち(ってのはさすがにないと思うけど)。
経験の浅いプログラマが書きそう。
経験が豊富なプログラマでも書いちゃいそう。
誰が書いてもはじめはこんなバグを含んじゃうもんだ。etc...
ソースを見ないとわからないってのは
もちろんなんですがバグの症状から診断するとどんな感じなんでしょう。
と、ついでにプログラマの方々が他人のソースを読んだときに
抱く感想ってのはいろいろあると思うんですが
チームを組んで行うプログラムでも
個人の個性ってのはやっぱり出ちゃうものなんでしょうか?
書式、ロジックいろいろあるからやっぱり一概にはいえないのかな。
天才の書くコードはどんなに規則で画一的なものを目指してもやっぱり
わかっちゃうものなのか、また逆に粗野な人の書くコードも
わかっちゃうもんなのか。
素人な自分が興味のわくところをつらつら書き続けてしまって
なんだか論旨が定まってない気がします。
つか日本語としてもちょっと変かも。不快に思う方がいたらゴメン。
Re:このようなバグを含んでしまう可能性は (スコア:1)
本当のところはソースコードを見ないと分かんないのは、ご理解いただけるとして、私の感想です。
Integer Overflow自体はそれほど多くないと思うけど、この類いのミスは経験を積んだプログラマでも うっかりやっちゃうことはあると思います。(桁落ちとか) もちろん、気をつけているんですが、似たようなミスを昨日やっちまったばかりだし。あ、ひょっとして私が間抜けなだけ?(笑)
普通はその部分をちょっと動かすと、明らかに変な動作をすることが多くてすぐに分かるんですが、なまじまともな計算結果を出すこともあって、現象が出るまで分からないこともあります。今回は、そんなケースだったんでしょう。
もう1つ、プログラムに個人の個性が出るか。個性に技量や信条を含めれば、出ると思います。チームでプログラムを組む場合には、書式など決められる所は、チームや会社単位でルールを決めますし(それでもチームや会社の個性は出る)、全体に関るならチーム内で吟味するんですが、実装方法は担当者の裁量に任せられる所も多いので、そこで個性が出るような気がしています。ただ、個性といっても、プログラムを書いている人も経験を積んだり、こちらから教えたりするんで、「三つ子の魂百まで」みたいな永続的なものじゃなくて、その時点でのsnapshotみたいなもんですが。
ただ、ソースファイルは誰が書いて、誰が修正したかをちゃんと管理するのが普通だし、わざわざ「このソースは誰が書いた?テスト」なんてことをやったことはありません。そんなテストをすると見方が変わるかもしれませんね。
vyama 「バグ取れワンワン」
やっぱり (スコア:1, すばらしい洞察)
部分的に漏洩したソースとはいえ、ちょっとソースが見られた
だけで、こんなのが見つかるようだと、全ソースが公開されて
多くの人の目でチェックされた方が安全っぽい。
実際、セキュリティホールを見つけていても、
本当に悪用したい人は公開しないでしょうし、
やられる前に、穴を塞ぐにはオープンソース化が一番だと感じた。
Re:やっぱり (スコア:2, 興味深い)
Re:やっぱり (スコア:1, すばらしい洞察)
会社員は自分の仕事に忙しいってだけの事だと思うが。
ごく一部のソースから (スコア:1)
少なくともあと67個くらいは脆弱性がありそうですね。(40GB÷600MB≒67)
Re:ごく一部のソースから (スコア:1)
「ゴキブリは1匹見つけたら20匹はいると思わなくちゃ」
#この点についてパッチは出るのかな…出ないわな…IE新しくしろってか…
ちょ、直撃かっ!? (スコア:0)
まさに Windows 2000 Pro + IE 5.5 を使ってます。
INTERNET Watch の記事では「IE 5」としか書いてませんでしたが、
やっぱり 5.5 もあるんでしょうね、この脆弱性。
業務上の都合もあるのでおいそれと IE 6.0 には移行できないのですが、
なんとか出来ないか上司&担当者と掛け合ってみねば……
5.5 は論外 (Re:ちょ、直撃かっ!?) (スコア:1)
Re:ちょ、直撃かっ!? (スコア:1)
Copyright (c) 2001-2014 Parsley, All rights reserved.
Re:ちょ、直撃かっ!? (スコア:1)
被害を受ける可能性は常に存在します。
フォルダ表示だって、実態はIEのコアが使われてる場合も。
だから、ブラウザ換えれば安全と思うのはそもそも誤りかと。
Re:ちょ、直撃かっ!? (スコア:1)
といってるので、
> 心配ならIE以外のブラウザを使えばいい話では?
というのは余計無理では。
流出とはいえ (スコア:0)
古いOSはサポート打ち切る代わりにソース公開やってくれれば良いのに。
#現行OSより良い物が出てくるかも…
Re:流出とはいえ (スコア:2, すばらしい洞察)
Re:流出とはいえ (スコア:1)
Re:流出とはいえ (スコア:1)
俺以外の誰かです。
Re:流出とはいえ (スコア:1, 興味深い)
#あまりにも出来すぎた話なんで、つい陰謀論の一つも考えたくなるよなあ。
Re:流出とはいえ (スコア:1)
ではないです。むしろ少数の人間に知られるよりは、ましで
しょう。と、みんな思ってくれるに一票。
Re:流出とはいえ (スコア:1)
Re:流出とはいえ (スコア:1)
Re:流出とはいえ (スコア:1)
#まあ、動作確認や副作用ないかの検証に時間がかかるのは理解してますが。
漏れたコードの入手先 (スコア:0)
拾って見るぶんには問題ないのでしょうかね?
#毎号集めようなのでAC
#P2Pならありそうですけどね。
Re:漏れたコードの入手先 (スコア:1)
これを問いつめることがでいるのはMS社だけなのでは?
法的にはなんらかの対抗措置をとることが可能としても、それを行うことが、MS社にとってプラスになるかと考えると、そうとも断言できません。(利用者からの評判など)