問題タブ [detours]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
475 参照

c++ - Detach で Detours を使用して API をフックするとクラッシュする

.dll を explorer.exe に挿入することで、迂回して NtQueryVolumeInformationFile をフックしようとしています。

dllをイジェクトしようとするまでは正常に動作します。.dll を取り出した後、explorer.exe がクラッシュします。

OS: Windows 7 32bit コンパイラ: Visual Studio 2012 with Detours 3.0 ライブラリ

DllMain.cpp: http://pastebin.com/6PgZcdhi Header.h: http://pastebin.com/BGQ527Ym

誰かが問題を理解するのを手伝ってくれることを願っています。私はこの問題に2日間取り組んでいますが、手がかりがありません.

助けてくれてありがとう:)

0 投票する
1 に答える
1327 参照

c++ - Application Crashes when hooked with MS Detours and Injected with Withdll.exe

I am hooking FindNextFile() using MS Detours. I have configured the Detours library successfully and wrote a dll named "Detuors.dll" and an application named "FNFSend.exe". The following is the code:

DLL:

Both the codes compiled successfully with no errors. The application calls FindNextFile() recursively and the dll hooks it and write the counter to a file.

I then used the tool named "withdll.exe" that is provided by detours library itself to create a process with a dll injected in it. So I injected my dll into the application using command:

withdll /d:Detuors.dll "C:\FNFSend.exe"

After injection, the function is hooked successfully, i.e. the file is made in the dirctory but suddenly the application crashes. After debugging in visual studio, I saw the exception in "output.c" as follows:

Kindly help in rectifying the problem.

0 投票する
1 に答える
193 参照

windows - 整数メモリ アドレスを静的メンバ関数ポインタに変換する

バイナリ実行可能ファイルのメンバー関数を迂回しようとしています。関数のシグネチャとメソッドの VA しか知りません。Detours Express 3.0 に含まれている「メソッド」サンプルの助けを借りて、次のことを思いつきました。

エラーが表示されます:

0 投票する
2 に答える
1418 参照

c++ - Detours 3.0 フック GetProcAddresss()

私は使用しています:

MS対10

迂回路 v3.0 Express

完全なソース コードDLL :

GetProcAddress が受け取った関数のリストを表示しようとしました。しかし、開始後、プログラムはエラーで閉じられます: " ACCESS_VIOLATION , UNABLE_TO_READ "

誰かがそれを修正する方法を尋ねることができますか?

0 投票する
1 に答える
5390 参照

c++ - 16進数の関数へのポインタにDetourAttach()を使用するには?

迂回ライブラリを使ってチュートリアルを作ろうとしています。

古いバージョンの detour ライブラリ v1.5 では、関数 DetourFunction を使用してアドレスを定義していたため、DLL は関数を探す場所を認識していました。

たとえば、次のように使用できます。

http://www.moddb.com/groups/ibepex/tutorials/function-hookingを参照してください

ただし、新しいバージョンでは、関数は次のように変更されています

ここで、ppPointer は迂回先のターゲット ポインターへのポインターです。

ターゲット関数のアドレスが 16 進数形式 0x01006F10 でわかっているので、これをどうにかして ppPointer の引数として使用したいと考えています。私はただ書いてみました:

コンパイルはうまくいきますが、私のプログラムは思ったように動作しません。プログラムはそのアドレスから関数を決してキャッチしないようです。

したがって、基本的に私の質問は、16 進アドレスへのポインターを正しく使用したか、次に、DetourAttach() の使用方法に根本的な間違いがあるかということです。