4

DLLの挿入について話しているサイト(http://www.codeproject.com/KB/DLL/DLL_Injection_tutorial.aspxなど)をいくつか見ましたが、EXEを機能させる方法に苦労しています。ヘルプ/ヒントをいただければ幸いです。

それを説明する方法を私が知っている最良の方法は、メモリ内でexeを実行する「RunPE」です。それはまったく役に立ちますか?

4

4 に答える 4

3

実行中の Python プロセスにコードを挿入する方法を尋ねている場合、必要なのはhttps://github.com/lmacken/pyrasiteです。

于 2011-09-19T19:49:29.450 に答える
1

ここで説明されているように、リフレクティブ DLL インジェクターを使用できます。Metasploit プロジェクトはこれを使用して、meterpreter プラグインをロードします。私の知る限り、これがDLLを注入する唯一の方法です.MSは公式にメモリからの「注入」をサポートしておらず、ファイルシステムからのロードのみをサポートしています。

低レベルでは、メモリ領域を割り当て、そこにコードをロードし、実行可能としてマークすることを禁止するものは何もありません。

これらの手法はいずれも Python 固有のものではなく、Python 関連のものでもないことに注意してください。これは win32 の問題です。

于 2011-08-23T16:02:06.927 に答える
1

あなたが話しているのは、より多くのものを使ってPythonでUPXを再実装することです。これを行うために必要なこと: すべての VirtualAlloc 呼び出しを VirtualAllocEx 呼び出しに変更します。すべての Loadlibrary 呼び出しを loadlibraryEX 呼び出しに変更します。再配置の修正を実装します。

より良いアプローチは、実行可能ファイルの代わりに DLL を出力するように UPX を微調整することでしょう。次に、いくつかの Python DLL インジェクション コードを使用して、それを別のプロセスにスローします。これを行うには、CTypes を頻繁に使用することになります。公正警告...

于 2012-03-05T01:31:52.973 に答える
0

この本をお勧めします http://www.amazon.com/Gray-Hat-Python-Programming-Engineers/dp/1593271921 - 特に独自のデバッガーの作成に関する章ですが、上記のメタスプロイトやその他のツールについても説明しています。

于 2011-09-19T20:35:05.400 に答える