
このプロジェクトは、高度なDLLハイジャック手法のデモンストレーションです。これは、「Adaptive DLL Hijacking」というブログ記事と併せて公開されました。このコードを理解するために、まずその記事を読むことをお勧めします。
このプロジェクトは以下の要素で構成されています:
VSソリューション自体は、4つのビルド構成をサポートしており、それぞれが機能のプロキシを行う4つの異なる方法に対応しています。これにより、将来的にさらに多くの手法を拡張可能な形でデモンストレーションできるようになります。
各手法の目標は、正当なDLLに機能をプロキシしながら、コード実行を正常にキャプチャすることです。各手法は、静的および動的シンク状況が処理されることを確認するためにテストされています。これは、原始的な手法やバリエーションのすべてを網羅しているわけではありません。上記のブログ記事で詳細が説明されています。
明らかに正しくないDLLを使ってハイジャックシナリオを準備します
> copy C:\windows\system32\whoami.exe .\whoami.exe
1 file(s) copied.
> copy C:\windows\system32\kernel32.dll .\wkscli.dll
1 file(s) copied.
現在の構成で実行すると、エラーが発生するはずです
> whoami.exe
"Entry Point Not Found"
kernel32を変換してwkscliのプロキシ機能を提供します
> NetClone.exe --target C:\windows\system32\kernel32.dll --reference C:\windows\system32\wkscli.dll --output wkscli.dll
[+] Done.
> whoami.exe
COMPUTER\User