ウイルス対策プログラムの検疫機能を悪用してローカルでの権限昇格を可能にする攻撃 12
たびたび狙われるセキュリティソフト 部門より
ウイルス対策プログラムの「検疫」機能を悪用し、ローカルでの権限昇格を可能にする攻撃手法「#AVGater」について、オーストリアのITセキュリティプロフェッショナルで考案者のFlorian Bogner氏が解説している(#bogner.sh、Ars Technica)。
攻撃の仕組みは管理者権限でサービスを実行するターゲットアプリケーションのDLLと同名の攻撃用DLLを検疫から復元する際に、ディレクトリジャンクションを利用して正規のDLLを置き換えるというものだ。攻撃の流れとしては、ターゲットのインストールフォルダーと同名のフォルダーに攻撃用DLLを格納しておき、ウイルス対策プログラムに検出させて検疫に送る。このフォルダーをターゲットのインストールフォルダーのディレクトリジャンクションと置き換え、攻撃用DLLを復元すればターゲットのDLLが置き換えられる。あとはシステムを再起動すればサービスが起動して攻撃用DLLを読み込み、「DllMain」が管理者権限で実行されることになる。
ウイルス対策プログラムが検疫からファイルを復元する処理はSYSTEM権限で実行されるため、標準ユーザーでも特権の必要な場所にファイルを書き込むことが可能になる。Emsisoft Anti-MalwareとMalwarebytes 3(いずれも既に対策済み)を使用した実験では、ウイルス対策プログラム自体の「version.dll」を攻撃用DLLに置き換えてコードを実行することに成功したという。Kaspersky(こちらも対策済み)の場合はクラッシュして実行できなかったようだが、別のサービスのDLLは置き換え可能だったとのこと。
Bogner氏が問題をAVベンダーへ報告したのは昨年のことで、既にディレクトリジャンクションへの復元をブロックするなどの対策が進められているようだ。記事では上述の3社のほか、Trend MicroとCheck Point(ZoneAlarm)、IKARUS Security Softwareが対策済みベンダーとして挙げられている。今回の研究結果は10日にオーストリアで開催されたIT-SECX 2017で発表されている。
なお、Windows 10(バージョン1709)のWindows Defenderでは復元時にUACのダイアログボックスが表示され、ディレクトリジャンクションへの復元もできなかった。何年も前の古いバージョンのAVGでもディレクトリジャンクションへの復元ができないなど、復元時の動作はウイルス対策プログラムごとに異なるようだ。
まるでウイルス (スコア:0)
DNAへのメタファーもあったけど、これはほんとに
エンドサイトーシスじゃないか。
あとは何が出てくるんだろう
水平伝搬とか?(既にあるって?)
そんなものを復元するアホが悪い (スコア:0)
と、思ったが、復元するのが悪い奴なのか。
Re:そんなものを復元するアホが悪い (スコア:2, すばらしい洞察)
ウイルスが発見されたら即削除すればいいわけですから。
それなのにわざわざ検疫なる機能によってウイルス検知したファイルを保存しておくのは、
正常なファイルをウイルスだと誤検知したときに復活させるためですよね。
つまりこの機能が搭載されているということは、
誤検知する可能性があるぞーって自分で言っちゃってるような感じがします。
Re:そんなものを復元するアホが悪い (スコア:3)
それを理解したシステムを作るのは当然。
最初から100%にしろって言いがちな我が国がおかしい。
Re: (スコア:0)
検疫は保険的な意味で賛成です。
最初から100%にしろって言いがちな我が国がおかしい。
ってどこの国ですか?
私は日本国民ですがそんな感じはしないです。
どちらかというと妥協とか曖昧さを好んでいるような気がしますが。
言いたいことはわかるのですが、以下ちょっと面白い解釈が出来ました。
そりゃどんなものでも100%はないから。
どんなものでも→全て(100%)のものが
と解釈すると再帰的な文みたい。
Re:そんなものを復元するアホが悪い (スコア:2)
Re: (スコア:0)
誤検知を無くすことなんか不可能でしょ。問答無用で削除とか困る。
セキュリティが厳しい企業なんかは削除しちゃう設定なんだろうけど。
Re: (スコア:0)
バグゼロは有り得ないし、誤検知ゼロも有り得ない。
誤検知ゼロを謳ってる商品なんかあったら、そっちのが余程胡散臭いけど。
Re: (スコア:0)
なに変なフラグ立ててるんだよ!
ハッシュ値とか使ってないの? (スコア:0)
DLLハイジャックのときも思ったけど
Re: (スコア:0)
「そのファイルが元々あった場所」を書き換えてるような物だからファイルのハッシュをどうこうしても意味がない。
復元先となるフォルダが「実体の無いジャンクション」って時点でエラーにしろよって話になる筈。
そもそも隔離すべきファイルを見つけた時点で見つけたファイルは実体でないとダメで、復元も同じ。
#とはいえ、ジャンクションをそのファイルが元々あった場所として認識する馬鹿なAVもあったからなぁ…
#ジャンクションだからか削除に失敗してエラー出しつつ即再検知して無限ループで作業不能になったヨ
#しかも対象はハッキングツール分類の物だから別に