何となく Blog by Jitta
Microsoft .NET 考

目次

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

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

その他

わんくま同盟

同郷

 

chrome.exe の アップデートで別のプログラムを起動させる方法(関心した事とか、どうかねこれと思った事とか)より:

ようは、そこに配置されている、たしかに想定通りの名前のファイルが、本当にバイナリとして正当であるかどうかを、なにも検証してないのです。

http://builder.japan.zdnet.com/blog/trackback/27013848/

普通に、「脆弱性」ではないかと思うのですが、いかがでしょう?

せめて、自社の署名があるかどうかのチェックぐらいはして欲しい。

Vista は Program Files への書き込みでアラートが出るけど、XP はチェックないからなぁ。当面、XP での使用は要注意ってことで。

投稿日時 : 2008年9月23日 11:13
コメント
  • # re: えっと...
    NyaRuRu
    Posted @ 2008/09/24 10:11
    >せめて、自社の署名があるかどうかのチェックぐらいはして欲しい。

    Visual Studio 2005 Extensions for Windows Workflow Foundation のインストーラで,似たような挙動がありました.
    これは ZIP 自己解凍形式の署名済み exe ファイルなのですが,このファイルと同じディレクトリに setup.exe というファイルがあると,無条件でそれを起動してしまいます.
    しかも順序が厄介で,まず Visual Studio 2005 Extensions for Windows Workflow Foundation インストーラが Microsoft の署名付きで昇格を求め,特権を得た上で,ファイルの正当性の確認なしに setup.exe を起動します.

    この件をマイクロソフトのセキュリティレスポンスチームに問い合わせてみたのですが,「セキュリティの脆弱性」にはあたらないとの回答を頂きました.その理由は,自動解凍ファイルと同じフォルダに setup.exe が存在しないことを確認したうえで,Visual Studio 2005 Extensions for Windows Workflow Foundation を実行することが容易に可能だから,とのことです.

    exconn:10664
  • # re: えっと...
    Jitta
    Posted @ 2008/09/24 10:12
    NyaRuRuさん、コメントありがとうございます。

    申し訳ございませんが、いったん削除しました。リンク先が MVP 専用なので、リンクを外しました。
  • # re: えっと...
    Jitta
    Posted @ 2008/09/24 21:28

    改めて、NyaRuRuさん、コメントありがとうございます。

    > Visual Studio 2005 Extensions for Windows Workflow Foundation のインストーラで,似たような挙動がありました.
    えっと、これは、ZIPed exe を、自分で配置(保存)するのですよね?
    たとえば、My Documents に置いたとして、そこにすでに setup.exe があると、解凍するのではなく、すでにある setup.exe を実行してしまう、と。

    これは、Extensions インストーラの問題ではなく、自己解凍形式の ZIP ファイルを作る段階での問題、あるいは自己解凍形式の ZIP を作るツールの問題ではないでしょうか。そして、人が ziped.exe を保存して実行するのだから、その前に setup.exe がないことを確認してよ、と。この、「同じディレクトリに setup.exe がないことを確認して、実行してください」という情報がアナウンスされているなら、何ら修正の必要はないと思いますが、そうではないのなら、やはりなんらかの修正は必要かと思います。

    それに対して、chrome の場合は、アップデート用のファイルは、おそらく chrome 自身がダウンロードしてくると思います。また、chrome を実行するときは、スタートメニューなどのショートカットを使用するでしょう。つまり、実行するものがあるディレクトリを目視確認するわけではない、という違いがあります。また、ネタ元に書いてある内容からは、自分がダウンロードしたものかどうかを確認していないと読み取れます。(ダウンロードサイトから持ってきたものか、誰が置いたものか、確認していない)

    そして、私が思ったのは、悪意のプログラムが、ニセ chrome (オープンソースなのだから、コードを手に入れられますよね?そうすると、悪意のコード、たとえばポストする内容を特定のサイトにも送るように細工した chrome を用意することも可能です)を new_chrome として配置することも可能、というわけです。そして、同じ chrome なのだから、利用者は気づかずに使い続けることでしょう。

    そこで、「XP では云々」です。ダウンロードしたものは %USERPROFILE% にあっても、プログラム本体は %PROGRAMFILES% にありますよね?そうであれば、Vista の場合、昇格したプロセスでなければ、%PROGRAMFILES% にアクセスできません。何らかの実行ファイルが %PROGRAMFILES% に置こうとした時点で・・・ユーザがだまされれば同じかorz
    ああ、%PROGRAMFILES% に置くと、Vista の場合に昇格しなきゃアップデートできないから、%USERPROFILE% に置いたのか!?
  • # re: えっと...
    NyaRuRu
    Posted @ 2008/09/24 21:40
    >Vista は Program Files への書き込みでアラートが出るけど、XP はチェックないからなぁ。当面、XP での使用は要注意ってことで。

    とあったので,(Chromeとは関係無いのを承知の上で)書いたのですが,JittaさんがChromeと関係あると勘違いしていたのならその辺訂正お願いしたいです.
  • # re: えっと...
    NyaRuRu
    Posted @ 2008/09/24 21:46
    >そして、私が思ったのは、悪意のプログラムが、ニセ chrome (オープンソースなのだから、コードを手に入れられますよね?
    >そうすると、悪意のコード、たとえばポストする内容を特定のサイトにも送るように細工した chrome を用意することも可能です)を new_chrome として配置することも可能、というわけです。
    >そして、同じ chrome なのだから、利用者は気づかずに使い続けることでしょう。

    少なくともVistaでは,%USERPROFILE% に配置されたchrome.exe を誰でも警告なしに書き換えられるため,new_chrome.exe を経由するようなまどろっこしいことをせずに直接 chrome.exe を置き換えれば良いのではないでしょうか?
  • # re: えっと...
    Jitta
    Posted @ 2008/09/24 22:24
    > 直接 chrome.exe を置き換えれば良いのではないでしょうか?
    私は chrome をインストールしていないのでわかりませんが、もしかすると、%USERPROFILE% から起動しているのかもしれません。で、起動中のプロセスの元となっているファイルを上書きできないので new_ として保存し、次回起動時に new_ があれば、上書きしてから………なんか、書いていておかしなことを書いているような気がしてきた。インストールしてみるか。。。
  • # re: えっと...
    NyaRuRu
    Posted @ 2008/09/24 23:27
    >私は chrome をインストールしていないのでわかりませんが、もしかすると、%USERPROFILE% から起動しているのかもしれません。

    Google Chrome は全て %USERPROFILE% 以下にインストールされます.
  • # re: えっと...
    通りすがり
    Posted @ 2008/09/26 21:30
    ちょっとよくわからないのですが、どういうところが脆弱性なんでしょうか?
    悪意のあるプログラムが動けるならすでにある程度なんでもありですよね?

    確かにチェックする方がより安全だとは思いますが、オープンソースではそれも案外難しいのでは?
  • # re: えっと...
    Jitta
    Posted @ 2008/09/30 20:46
    通りすがりさん、コメントありがとうございます。

    離席しているときにいたずらができます(ぉぃ

    通信内容は、だますことができます。よって、chrome でないなにかをダウンロードさせ、それを足がかりにすることができます。←実際に試してみたい。ローカルな環境なら、何台か繋いで、端と端をサーバー/クライアントにする。真ん中に攻撃者がいるとする。クライアントからの問い合わせに、サーバーより早く偽りの返答を返せば、だまくらかすことができるはず。
  • # re: えっと...
    通りすがり
    Posted @ 2008/10/01 23:03
    お?
    ひょっとしてユーザへの問い合わせなしに勝手にダウンロードして配置しちゃうんですか?
  • # re: えっと...
    Jitta
    Posted @ 2008/10/02 0:06
    ごめんなさい。インストしてないので、わかりません...
タイトル
名前
Url
コメント