1

自分のカスタム関数のいずれかOpenProcess()または関数呼び出しをフック/迂回する方法はありますか?ReadProcessMemory()

それなし:

  1. Zw/NtOpenProcess のカーネル ドライバーには、展開のためにルートキットの悪用またはドライバーの署名が必要です。
  2. すべてのプロセスに .dll を挿入し、スパムのようにリソースを浪費し、多くのアンチウイルスに警告します

HANDLE他のプロセスが PID のベクトルのメモリを取得または読み取るのを防止しようとしています。

4

1 に答える 1

1

カーネルモードで呼び出しをグローバルにフックしない場合は、すべてのターゲットプロセスに入る必要があります。dll が最も簡単な解決策ですが、もっとハックで面倒なことを行うこともできます。

OpenProcess と ReadProcessMemory (なんて偶然でしょう!) と WriteProcessMemory を使用して、すべてのターゲット プロセスを変更します。目的の関数をフックし、フィルター関数を使用して目的の機能にパッチを適用します。

誰かがあなたがしていることを知り、それを防ぎたいと思った場合、あなたにできることは何もないことに注意してください. 彼はあなたのコードに再度パッチを当てるか、いくつかの直接 asm 呼び出しを使用して API (SYSCALL) を呼び出すことができます。

于 2013-06-03T17:19:09.933 に答える