何となく Blog by Jitta
Microsoft .NET 考

目次

Blog 利用状況
  • 投稿数 - 761
  • 記事 - 18
  • コメント - 36186
  • トラックバック - 222
ニュース
  • IE7以前では、表示がおかしい。div の解釈に問題があるようだ。
    IE8の場合は、「互換」表示を OFF にしてください。
  • 検索エンジンで来られた方へ:
    お望みの情報は見つかりましたか? よろしければ、コメント欄にどのような情報を探していたのか、ご記入ください。
It's ME!
  • はなおか じった
  • 世界遺産の近くに住んでます。
  • Microsoft MVP for Visual Developer ASP/ASP.NET 10, 2004 - 9, 2011
広告

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

その他

わんくま同盟

同郷

 

なんか、おもしろい→IE 経由で FireFox の脆弱性」と「対処したようだ→IE 経由 FireFox の脆弱性」の続き。ネタ元は、「MS、WindowsのURI処理の脆弱性認める」(ITmedia エンタープライズ)。

マイクロソフトの製品はコマンドライン引数としては渡さず、DDE 経由で引き渡していたために大丈夫だったのではないかな?

いいたとえではないと思うけど、SQL インジェクションに対応するために、パラメータ渡しにしていた、みたいな?

なんにしても、OS レベルで「引き渡す」という仕様が先に存在しているので、それが自分にとって適切か、そうでないかは、渡される側でチェックするのが妥当なような気がする。

もちろん、「スペースを引数のセパレータとする」という仕様と、「引数にスペースが含まれる」という仕様が矛盾するわけで、この矛盾を回避する仕様が存在しているべき、という意味で、マイクロソフトに問題がある。

ここから先も、また、難しいですね。

単純に「二重引用符で囲まれる範囲は、スペースもひとつの引数とする」としたとする。ファイル名に二重引用符が存在しないことは、OS レベルで保証しているので、まぁ、妥当かもしれない。

じゃぁ、もし、二重引用符を引数としているアプリケーションが存在したら、そのアプリケーションはどうなるの?

それとも、「プロトコル名://」という、URI を示すときだけ、特別処理する?

う~ん、どうかなぁ?

昔、UNIX から DOS に移ってきて困ったのが、引数の展開処理。UNIX で、アスタリスクをコマンドライン引数に使うと、OS が展開してプログラムに渡してくれた。DOS の場合、アスタリスクがそのまま渡ってくる。自分で展開しやがれ、と。

これのイメージがあるので、「てめぇでチェックしやがれ」が基本なんじゃないかなぁ?と思ってみたりするのでした。

投稿日時 : 2007年10月30日 21:33
コメント
  • # re: マイクロソフトが折れたようだ(URI の不正処理問題)
    渋木宏明(ひどり)
    Posted @ 2007/10/30 22:37
    >OS が展開して

    シェルのお役目ですよん>展開処理
  • # re: マイクロソフトが折れたようだ(URI の不正処理問題)
    ちゃっぴ
    Posted @ 2007/10/31 2:44
    そもそも、long path name を採用した時点で、UNIX 互換 (POSIX 互換) を捨て去るべきだったんですが、簡単に捨て去るわけにもいかず、ぐだぐだな shell の仕様になったのが問題の本質です。

    とはいえ、下記書籍を読むと Windows の shell team の苦悩もわかるわけでして。。。

    Windowsプログラミングの極意 歴史から学ぶ実践的Windowsプログラミング!
    http://www.ascii.co.jp/books/books/detail/978-4-7561-5000-4.shtml

    結局のところ、互換性を捨てて新しい仕様に完全に移行するしかないと思うのが私の見解です。
  • # re: マイクロソフトが折れたようだ(URI の不正処理問題)
    Jitta
    Posted @ 2007/10/31 7:33
    渋木さん、ご指摘ありがとうございます。
    確かに、シェルのお役目です。


    ちゃぴさん、いつもありがとうございます。

    POSIX互換ですが、互換性を持つことにこだわらなければならないのでしょうか?どっかの国で互換性がなきゃ使わん!と言っているとかは別として。
タイトル
名前
Url
コメント