これは、AVSとEDRを回避するためのシェルコードインジェクションの最新の手法です。この手法は、モジュールの踏みつけに触発されており、いくつかの類似点があります。この日付に関しては(23-01-2022)、Hollows-Hunterはそれを見つけません。
この手法の最大の利点は、モジュール全体またはPE全体を上書きするのではなく、1つの関数のみであり、ターゲットプロセスはターゲットモジュールから他の関数を使用できることです。
欠点は、野生のすべての機能で機能しないことです(しかし、それらのほとんどで機能するでしょう)、正確な説明は私のブログにあります:良い、悪い、踏みつけられた機能。
注:AVがこれにフラグを立てる可能性があります。署名がmsfvenom/metasploitの署名である場合は問題ありません。シェルコードを変更するか、暗号化する必要があります。
更新:不思議なことに、これは最初のPOC Avaliableではなく、RastamouseはC#でも同様のブログ投稿を書きました。
このようにプログラムにヘッダーを含めるかのどちらかを含めます。
# include " functionstomping.hpp "
int main () {
// Just get the pid in any way and pass it to the function.
DWORD pid = 3110 ;
FunctionStomping (pid);
return 0 ;
}または錆プログラムを使用してください。
cd functionstomping
cargo b
functionstomping.exe < pid >このプログラムを実行した後、リモートプロセスから関数を呼び出す必要があります! (デフォルトの関数CreateFileを使用した場合は、リモートプロセスから呼び出す必要があります!)。
現在、実行するシェルコードは計算機をポップするためだけですが、必要なのはunsigned char shellcode[]シェルコードに置き換えることだけです。 C ++ 17とvS2019を使用して、C ++ヘッダーとRustバージョン2021でプログラムをコンパイルして、Rustプログラムをコンパイルします(貨物の依存関係を見ることができます)。

このプロジェクトの原因として、コンピューター /プログラムに与えられるあらゆる種類の損害について、私は決して責任を負いません。私は喜んで貢献を受け入れ、プルリクエストをして、それをレビューします!
モジュール式
Cyberarkによる悪意のあるメモリをマスキングします
Rastamouseのバージョン