アカウント名:
パスワード:
どうみても仕様。こういうのをどや顔で脆弱性報告しちゃうのはどうかと思うし、受け付けちゃうのもびっくりする。日本のITスキルの水準がわかる事例。
msiファイルを置いただけのフォルダからDLLを読む必要がどうしてあるんかね。仕様とは思えないが?
MFC等のアプリで使用しているDLLを偽造してカレントに置いておけば、システムが勝手にカレントのDLLをロード(起動時に動的リンクされたライブラリを自動的に読み込む)してしまうのよ。
つまり、一切ランタイムを使わないでインストーラを作れって話になるんだけど。
システムディレクトリ等から読み込みたいのなら、そう指定すべきでは?元々カレントにあったDLLを上書きする、という話ならその通りですが。
動的リンクされたライブラリのロードは、OSがやります。その際、カレントディレクトリ、システムディレクトリの順で対象のDLLを探すので今回の話になるわけです。(動的リンクしたライブラリの読込場所は指定できない)
一応、動的リンクをやめて、全てのライブラリをloadlibraryで読み込む様にすれば、回避できるけど、普通はやらないね。(MFC等のクラスライブラリを使ってるとほぼ不可能だと思う)
なるほど、普通にMFC等を使おうとするとそうコンパイルされるわけですね。LoadLibraryできちんと指定していすればいいとは聞いていたので、MS製品はやってるのだろうと思ってました。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日本発のオープンソースソフトウェアは42件 -- ある官僚
イミフ (スコア:0)
どうみても仕様。こういうのをどや顔で脆弱性報告しちゃうのはどうかと思うし、受け付けちゃうのもびっくりする。日本のITスキルの水準がわかる事例。
Re: (スコア:1)
msiファイルを置いただけのフォルダからDLLを読む必要がどうしてあるんかね。
仕様とは思えないが?
Re: (スコア:0)
MFC等のアプリで使用しているDLLを偽造してカレントに置いておけば、システムが勝手にカレントのDLLをロード(起動時に動的リンクされたライブラリを自動的に読み込む)してしまうのよ。
つまり、一切ランタイムを使わないでインストーラを作れって話になるんだけど。
Re: (スコア:0)
システムディレクトリ等から読み込みたいのなら、そう指定すべきでは?
元々カレントにあったDLLを上書きする、という話ならその通りですが。
Re: (スコア:0)
動的リンクされたライブラリのロードは、OSがやります。
その際、カレントディレクトリ、システムディレクトリの順で対象のDLLを探すので今回の話になるわけです。(動的リンクしたライブラリの読込場所は指定できない)
一応、動的リンクをやめて、全てのライブラリをloadlibraryで読み込む様にすれば、回避できるけど、普通はやらないね。(MFC等のクラスライブラリを使ってるとほぼ不可能だと思う)
Re:イミフ (スコア:0)
なるほど、普通にMFC等を使おうとするとそうコンパイルされるわけですね。
LoadLibraryできちんと指定していすればいいとは聞いていたので、MS製品はやってるのだろうと思ってました。