私のアプリケーションでは、 GetProcAddress や CreateProcess のようないくつかのAPIを使用して、アンチウィルスが悪意のあるとフラグを立てることがあります。
GetProcAddress
CreateProcess
私がやろうとしているのは、特定のAPIが監視されているかどうかをチェックしていれば、コードのその部分を呼び出さないということです。
特定のAPIがフックされているかどうかを確認するにはどうすればよいですか?
これは、Cで書かれたWindowsアプリケーションです。
ありがとう。
CreateRemoteThread
win32では、( SetWindowsHookEx()( http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990 )非常に小さな機能のみをカバーする機能) 。
SetWindowsHookEx()
フックを検出する方法は、フックの適用方法によって異なります。
フックを配置するには2つの一般的な方法があります:
フックを配置するさまざまな方法に関する詳細(賛否両論)については、ここをクリックしてください。 http://help.madshi .net/ApiHookingMethods.htm 。
フックする各方法は、それを検出するために異なるアプローチを必要とします。
上記のように配置されたフックを検出する方法については、「ApiHookCheckアルゴリズム」を参照してください。 http:// www.security.org.sg/code/apihookcheck.html をご覧ください。このページには、私が not テストしたサンプルソースがあります。