アカウント名:
パスワード:
OSの提供するAPIに脆弱性があるなら分かるんだけど、他は何とかならないものかな。ハードウェアのテレメトリ読み取りに特権が必要というのも何だし、こういうサポートツールでよくあるドライバのインストールでもトリガーを引いた以降は署名確認もインストール処理もOSの責務だと思うので、ソフトの作りの問題に収束していく気がするのだが。
DLLハイジャックは難しいねぇ同名dllがsystemディレクトリにあれば回避できるけど同名dllがsystemディレクトリない場合はカレントディレクトリから読んじゃう
現状は気をつけて作らないとdllハイジャック可能がビルドの標準だからパス指定とハッシュ確認しないとdll使えないのがビルド時の標準にして旧ビルドツールは起動不可とかしないとどうにもならんかと
/*古い人はstatic dllとしてカレントディレクトリに置いとけばおk新人はよくわからんけどdllカレントディレクトリに置いとけばおkみたいな*/
> 同名dllがsystemディレクトリにあれば回避できるけど
Systemディレクトリから優先的に読み込むのはKnownDLLsレジストリにリストされたいくつかの主要なDLLだけですね、大抵はいくつか漏れます
JVNTA#91240916: Windows アプリケーションによる DLL 読み込みやコマンド実行に関する問題 [jvn.jp]
「アプリケーションディレクトリ型」の DLL 読み込みとは、アプリケーション起動時に当該アプリケーションと同一のディレクトリに設置された DLL ファイルが、システムディレクトリにある DLL ファイルよりも優先して読み込まれる問題です。
アプリ自身は読み込んでいなくてもDLLが動的ロードするときパスを指定し忘れるとか(MSのもの含っめて)よくある。根本的に回避するには、・kernel32.dll以外は遅延ロードにする・起動したら直ちにSetDefaultDllDirectories(LOAD_LIBRARY_SEARCH_SYSTEM32)するくらい必要
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell
なかなか特権昇格の脆弱性は無くならないね (スコア:0)
OSの提供するAPIに脆弱性があるなら分かるんだけど、他は何とかならないものかな。
ハードウェアのテレメトリ読み取りに特権が必要というのも何だし、こういうサポートツールでよくあるドライバのインストールでもトリガーを引いた以降は署名確認もインストール処理もOSの責務だと思うので、ソフトの作りの問題に収束していく気がするのだが。
Re: (スコア:0)
DLLハイジャックは難しいねぇ
同名dllがsystemディレクトリにあれば回避できるけど
同名dllがsystemディレクトリない場合はカレントディレクトリから読んじゃう
現状は気をつけて作らないとdllハイジャック可能がビルドの標準だから
パス指定とハッシュ確認しないとdll使えないのがビルド時の標準にして
旧ビルドツールは起動不可とかしないとどうにもならんかと
/*
古い人はstatic dllとしてカレントディレクトリに置いとけばおk
新人はよくわからんけどdllカレントディレクトリに置いとけばおk
みたいな
*/
Re: (スコア:0)
> 同名dllがsystemディレクトリにあれば回避できるけど
Systemディレクトリから優先的に読み込むのはKnownDLLsレジストリにリストされたいくつかの主要なDLLだけですね、大抵はいくつか漏れます
JVNTA#91240916: Windows アプリケーションによる DLL 読み込みやコマンド実行に関する問題 [jvn.jp]
Re:なかなか特権昇格の脆弱性は無くならないね (スコア:0)
アプリ自身は読み込んでいなくてもDLLが動的ロードするときパスを指定し忘れるとか(MSのもの含っめて)よくある。
根本的に回避するには、
・kernel32.dll以外は遅延ロードにする
・起動したら直ちにSetDefaultDllDirectories(LOAD_LIBRARY_SEARCH_SYSTEM32)する
くらい必要