0

オリジナルに適用したXXX.EXE結果であるがあり ます。ホストプロセスがあり、CreateProcessを呼び出します。ホストプロセスに は復号化メソッドがあり、の任意のブロックを復号化できます(ホストプロセスはAESキーを知っているため簡単です)。AES.EXEXXX.EXE.EXE

復号化を実行する簡単な方法を見つけたいと思います。.EXE可能であれば、全体.EXEをメモリに保存しないようにします。

ReadFileのフックをインストールして、によって呼び出されたときにその場で復号化しようとしましたCreateProcessが、CreateProcessも呼び出すため、これは機能しませんCreateFileMapping。おそらくカーネルモード関数を使用してファイルを読み取るため、スタックします。

誰かアイデアはありますか?

4

1 に答える 1

0

あなたがやろうとしているのは、実行中のものを難読化するために、基本的にパックされた実行可能ファイルを実行することです。パッカーを使用すると、通常どおり実行可能ファイルを実行でき、残りのバイナリをアンパックする難読化/暗号化されていないコードの小さな断片が含まれます。

バイナリ全体を一度に解凍する必要のないパッカーもあれば、そうするパッカーもあります。ただし、これはマルウェアがリバース エンジニアリングをより困難にするためによく使用する手法です。これにより、ウイルス対策会社はパックされたソフトウェアをマルウェアとしてマークします。

独自の実行可能ローダーを作成して、残りの実行可能ファイルを復号化したり、インポートされた関数をロード したりすることができます。この記事では、Windows ローダーに関連する手順について説明します。

于 2013-01-09T15:25:50.197 に答える