(ZT)用特征码秒杀各程序语言按钮事件

来源:互联网 发布:java 接口有什么用 编辑:程序博客网 时间:2024/04/30 03:26

在玩一个cm, 用查壳软件看是vc6写的,但是看.data区末尾时,有65个?AVCxxx PAVCxxx ?AV_xxx 的字符串,有点怀疑是E语言写的cm了。

易语言的按钮函数是有特征码的,且与vc6不同。
去找了资料,在找到的按钮特征码处下断点,除了启动时,命中一次后. 其他时候,都是按钮按下才命中,说明这cm真的是E语言写的。命中后,单步一下,里面果真是对应的按钮处理逻辑(e.g. 按下按钮后,会弹出另外一个对话框, 连UI上显示的提示都能看到).

找到的按钮事件资料

original url : http://www.cnblogs.com/huhu0013/archive/2011/03/31/2000707.html

1  2010-10-30, 13:43:54  用特征码秒杀各程序语言按钮事件作者:小童工具:OllyDbg、Delphi程序一个、易语言程序一个、MFC程序一个----------------------------------------------------------------------------------------------------------------------------------------------------------《《《Delphi程序》》》特征码:FF 93 20 01 00 00 5B C3 53-----------------------------------------------------------------------------《《《易语言程序》》》特征码:FF 55 FC 5F 5E 89 5D F4特征码来源:krnln.fnr-----------------------------------------------------------------------------《《《MFC程序》》》RELEASE特征码:FF 55 14 EB 7F FF 75 0C特征码来源:MFC42.DLLDEBUG特征码:FF 55 FC E9 48 04 00 00 33 C9特征码来源:MFC42D.DLL-----------------------------------------------------------------------------使用方法:OD载入程序---F9运行---Alt+M打开内存镜像---Ctrl+B搜索特征码---Ctrl+G跳到找到的地址---F2下断---点击按钮---断下后F7进入CALL(此处即为事件代码)说明:对于Delphi程序和易语言程序,根据目前测试的情况来看,都是一击必杀,例无虚发   对于MFC程序只取了VC++6.0的特征码   易语言程序下断后,可能界面没出来就断下了,这是因为断下的是[启动窗口创建完毕事件]或[时钟周期事件]----------------------------------------------------------------------------------------------------------------------------------------------------------欢迎暴力测试,有问题楼下说明!4  2010-12-25, 00:53:10我也贡献下:得到按钮响应函数地址的方法:1、在MFC42.DLL的偏移0x23BA处下断点,进入这个函数后,遇见的第一个CALL就是进入程序空间2、下消息断点WinDbg中的断点:MFC程序:bp User32!IsDialogMessageA ".if( poi( poi(esp+8) ) == 控件的句柄 and poi( poi(esp+8) + 4 ) == WM_LBUTTONUP ){}.else{gc}"OD中的断点:vcbp IsDialogMessageA [[esp+8]]==控件的句柄 && [[esp+8]+4]==WM_LBUTTONUPVB, Delphi, CBuilder bp CallWindowProcA [esp+8]==控件的句柄 && [esp+0c]==WM_LBUTTONUP在OD中的消息断点,断下来后,在可执行程序的代码断设置访问内存断点,然后F9,注意观察内存断点停下来的地方,多次F9后,就可以看到按钮响应函数了
原创粉丝点击