一个HOOK API 的程序。。。搞了一个月了。一直没有思路。
c++吧
全部回复
仅看楼主
level 5
panlijun2004 楼主
程序是这样的。我需要做的一个外挂程序。。DLL注入(全局HOOK,修改IAT的)。有A,B,C,D
四个程序。A程序启动B ,B启动C, C 启动D,D是工作程序。。现在的麻烦是我分析道B 启动C,在道D, C是个几百KB的小程序。B 用ShellExecute启动C,然后C启动D ,C一瞬间就过去了,我没有办法拦截和暂停。求牛人们给个拦截和暂停的法。。搞了很久了。。
PS:这个程序是CF。望大家给我想想办法。。
2011年11月02日 18点11分 1
level 5
panlijun2004 楼主
D是CrossFire.exe C是launchcrossfire.exe B是CFSelWorld.exe A是QQLogin.exe
2011年11月02日 18点11分 2
level 12
用OD打开程序把第一个指令(一般是push e
bp
)改成int3然后保存,把OD改成默认调试器。这样程序一旦启动就会触发异常弹出消息框“XXX异常位于XXX要调试程序请点取消”,点取消,这样OD就会自动启动断在刚才的int3上,你再把它改回去即可正常运行。
2011年11月02日 18点11分 3
level 5
panlijun2004 楼主
数据到是分析好了,这情况我的程序该怎样写。。怎样拦截C和D,...拦截后用我的函数代替。。
ps:多谢回复。。
2011年11月02日 18点11分 4
level 5
panlijun2004 楼主
望乐天哥给我指条路啊。。。。
2011年11月02日 18点11分 5
level 12
启动程序没必要拦。DLL注入原理还懂吧,直接抓PID。
2011年11月02日 18点11分 6
level 5
panlijun2004 楼主
想了一下。我先去编码。。。一会见。。
2011年11月02日 18点11分 7
level 12
我给你提个思路你看看行不行:你启动外挂程序,外挂启动A,然后进入一个循环,它每隔一段时间扫描所有进程,如果这个进程的父进程的父进程的父进程是自己,就如何如何。
2011年11月02日 18点11分 8
level 5
panlijun2004 楼主
SetWindowsHookEx加DLL不成功。。 OpenProcess 加CreateRemoteThread 也不成功。。
我现在技穷了。。搞了一个多月。测试程序写了很多。。到头来还是个不成功。。
下一步。我可能要上驱动了。。这是最后的砝码。。我隐约预见到就算我写了驱动拦截也可能不行。。 我彻底的傻了。。。好失望哦!!!!

2011年11月02日 19点11分 10
level 12
你试试PID已知的情况下能否创建远线程。
2011年11月02日 19点11分 11
level 5
panlijun2004 楼主
OpenProcess +提权+CreateRemoteThread 也不行。。CreateRemoteThread执行失败。。其他进程可以。CrossFire.exe进程的CreateRemoteThread失败。。。失望中 。。
2011年11月03日 03点11分 12
level 12
你看下那个进程能不能用OD附加。OD附加的原理就是创建远程线程,如果OD能附加就说明还是别的地方有问题。
2011年11月03日 05点11分 13
level 12
也有可能是kernel32.CreateRemoteThread被它改掉了(之前看到过一个改MessageBoxW的)。首先调试一下看看CreateRemoteThread是否被改过。
2011年11月03日 05点11分 14
level 5
panlijun2004 楼主
又搞了一下。。OD附加不了啊。。。奇了怪了。。。
2011年11月03日 05点11分 15
level 5
panlijun2004 楼主
望大神指教啊 。我现在走投无路了。。。怎样看KERNEL32的CreateRemoteThread 的东西是否被该过..
2011年11月03日 05点11分 16
level 5
panlijun2004 楼主
用 stud_pe查看工作进程文件crossfire.exe只有两个IMPORT函数(LoadLibraryA和GetProcAddress).
2011年11月03日 05点11分 17
level 11
完全不懂你们在说什么
2011年11月03日 05点11分 18
level 12
看看目标进程和你自己的进程的CreateRemoteThread入口地址处的数据是否一样就行了
2011年11月03日 05点11分 19
level 12
OD无法附加就说明做了反调试处理。还是把入口指令改成int3然后试试,这样是不可能附加不上的。
2011年11月03日 05点11分 20
level 5
panlijun2004 楼主
好。我再搞搞。。。鉴于你们会贴的签名图都那么帅。以后我回贴也搞张签名图。。
2011年11月03日 05点11分 21
1