VS2010でコンパイルされたすべてのMFCアプリに脆弱性ってのは過小報告?
VS2010 でコンパイルされた全ての単体 MFC アプリケーションに脆弱性が存在- livedoor ニュース
VS2010 でコンパイルされた全ての単体 MFC アプリケーションに脆弱性が存在 - スラッシュドット・ジャパン
というニュースがあったので、Windows 2000環境に 偽 dwmapi.dll をインストールしてDLLが読み込まれるか試してみました。
Safari4/5 の場合、モジュールが組み込まれちゃってますね。
こちらは、パナソニックの拡大ツール、これもアウト
こちらはパナソニックPC情報ツール
これは、Snagit 9というツール。
全部Windows 2000上で検証。
ここに列挙したのは、私のPC上で DLLやEXE内に DWMAPI.DLLの文字列が組み込まれているソフト。
dwmapiが組み込まれてしまった問題のありそうなアプリは「x」を付けました。
Visual Studio 2010 Project
x 妖精大戦争
- Core Temp
- Debugging Tools for Windows
Visual Studio 2008 Project
x Felica Updater
x Snagit 9
x Super Mapple Digital 11
x Panasonic PC情報ビューア
x Lunascape
x Panasonic OptView
x Corel Video Studio Pro X3
- Google Chrome
- iTunes
- Adobe Air 2.5
- IME2010
- SilverLight4
- FlashPlayer 10.1
Visual Studio 2005 Project
x Safari 4
x Safari 5
- 360desktop
- Picasa 3.8
- Firefox
- OpenGL Extenssions Viewer 3.0
- Steam
- Stardoc Impulse
- Office 2007
- VMPlayer 3.1
? Panasonic Display Helper
? quanp
? Inter Video WinDVD 8
Visual Studio 2003 Project
- Panasonic Wireless Manager
- Office 2003
- Java6
Visual Studio 6 Project
- VistaBootPro 3.3
Other
- Shock4way3D
見ての通り、 Visual Studio 2010だけでなく、 VC++2008 や VC++2005 でコンパイルされているアプリでも問題が発生しました!
たぶん、このダミーで組み込んだ dwmapi.dll を最初から 最初に読み込みに行く、system32に組み込んでおけばよいのかもしれませんが、影響範囲は相当広そうですね。
こちらは Visual Studio 2008でコンパイルされた Felica Updater を Dependency Walker でプロファイル実行したところ。
思いっきり動的にロードされてます。
関連サイト:
JVNVU#707943: Windows プログラムの DLL 読み込みに脆弱性
マイクロソフト セキュリティ アドバイザリ (2269637): 安全でないライブラリのロードにより、リモートでコードが実行される
WindowsのDLL読み込みに脆弱性--コード実行の危険性:JVN発表 - セキュリティ - ZDNet Japan
system32に置いてテストしてるみたいですけど、フルパスで自前でLoadLibraryしてるソフトがあったとして、それは脆弱性にはならないと思うんですがどうでしょ
system32に置いてテストしてるみたいですけど、フルパスで自前でLoadLibraryしてるソフトがあったとして、それは脆弱性にはならないと思うんですがどうでしょ
フルパス指定でLoadLibrary または、SetDllFolderしてたら大丈夫だったはずなのですが、残念ながら対応してるのは SetDllFolderを使ってる、Safari 5だけじゃないかと思います。
フルパス指定でLoadLibrary または、SetDllFolderしてたら大丈夫だったはずなのですが、残念ながら対応してるのは SetDllFolderを使ってる、Safari 5だけじゃないかと思います。