[ホーム] > [サイバー攻撃大辞典 トップ] > [DLLハイジャッキング(DLL Hijacking)]


作成日:2020/09/16

DLLハイジャッキング(DLL Hijacking)

DLL ハイジャッキングとは


DLL乗っ取りとはOSのプログラム実行順序を不正に操作し、正規のDLLではなく不正なDLLを実行させる攻撃手法のことです。
WindowsのDLLとは、プログラムのコンパイル時にリンクするのではなく、プログラムの実行時に同時にロードされるライブラリです。
DLLをロードする場合、どのディレクトリに目的のDLLが存在するか検索します。
見つかったDLLをロードしますが、このDLLを検索する順序を不正に操作し不正なDLLをロードさせること攻撃を"DLLハイジャッキング"と呼びます。

特にDLLロードする関数がカレントディレクトリを検索対象とする場合、正規のソフトを不正なディレクトリ上で実行することにより、この不正なディレクトリ上に配置した不正なDLLを呼び出させることが可能となります。

その他「バイナリーの植え付け(Binary Planting)」「DLLプリロード攻撃(DLL Preloading)」「DLL 「DLL乗っ取り」とも呼ばれます。


攻撃例


正規のソフトウェアをsoftware.exeとする。このsoftware.exeは 実行時にfunc.dllをロードするとする。
このソフトウェアのショートカットをネットワーク共有上から実行するよう修正する。ネットワーク共有上には不正なdllであるfunc.dllを配置する。
ショートカットを修正されたことを知らないユーザはネットワーク共有上からsoftware.exeを実行するが不正なfunc.dllを実行してしまう。


対策


一般的にOSでは安全にDLLを検索する仕組みが提供されています。特にカレントディレクトリからDLLを検索する機能を無効化することが有効な対策です。







[ホーム] > [サイバー攻撃大辞典 トップ] > [DLLハイジャッキング(DLL Hijacking)]


本サイト内掲載されている情報は、誰もその正当性は保証しません。独自の調査により判明した事項を記載しており、内容に誤りがある可能性があります。
内容により発生したいかなる損害は誰も補償しません。自己責任で参考として閲覧してください。
本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。) Copyright(c) securitychecklist.net 2015 - 2020