Cuzっ 发表于 2015-2-6 21:31:50

call狙击工具测试版源码

本帖最后由 Cuzっ 于 2015-2-6 21:34 编辑

首先声明一下,由于时间问题,代码写的很糟糕,码积木形式的,C和++混合的 - -! 而且不是多么高明的技术,全是些大家用烂的东西^ ^   
   
本来想继续做下去的,但是时间不允许,也许我还是会继续做的.   
   
BIN的效果也和思路贴的效果有出入   

首先说一下几个弊端吧.

1:对CALL的扫描不太理想,有些call没有扫到,原因嘛,我认为是这样的.首先我们知道游戏一般都是基于对象的,拿C++来说,把功能认为是某一个对象中的成员函数,那么它的调用方式是根据对象指针找到函数表,然后用下面类似的语句调用的
mov eax,   
call eax   
所以当用代码中那种显式调用方式扫描的话效果就会不理想,所以我建议换一种方式来获取call,我试过了IDA分析完代码后,好多隐式被调用的函数在IDA的函数窗口中也是不显示的,所以可以采用模糊扫描的方式来处理,比如函数之间的ret与int3指令就可以作为参考,当然这只是一个设想,具体手法还是需要探讨的.欢迎大家跟帖发言探讨^ ^   
   
2:领空判断不理想,这里说的其实是这个公用输出函数,后来我想到如果不仅限于 CALL的获取,而获取本身的功能CALL呢 .问题出来了,一般功能调用都是同在主程序领空,然后用领空判断的方式显然不符合了,下面我就有了这样的想法,利用记忆方式.,首先安装初始化完毕后开启记忆功能,把所有调用过的call排除掉,然后关闭记忆功能,效果应该蛮理想的
   
当然还有好多想法,也不知道从哪说起

好了,下面就是源代码,编译环境VC 6.0 因为反汇编引擎,请在编译选项中加 /J   


uvgmn 发表于 2015-2-6 21:44:29

我只是路过,不发表意见

传奇 发表于 2015-2-6 21:49:31

路过路过~~~~~~~~~~~~~

hjwgjd 发表于 2015-4-2 10:15:56

大人,此事必有蹊跷!

aumkb 发表于 2015-4-2 13:17:46

边撸边过

20009400 发表于 2015-4-3 17:56:54

强烈支持楼主ing……

zen1666542124 发表于 2016-10-18 03:39:51

支持楼主,感谢楼主!
页: [1]
查看完整版本: call狙击工具测试版源码