首页
社区
课程
招聘
[原创]第一阶段第三题答案提交
发表于: 2008-10-9 15:58 2666

[原创]第一阶段第三题答案提交

2008-10-9 15:58
2666
出错函数:
00420D81  |.  E8 7CE0FEFF   call    <__snwprintf                0040ee02 f   libcmt:>
这个函数出错,经过跟踪程序,发现在调用这个_snwprintf时程序出错,观察函数的输入参数,觉得没有问题,google查询错误代码,发现原因为编译器编译时最小化时不加载浮点数支持,导致出现floating point support not loaded提示,具体为什么会这样能力有限没有找出。
解决办法:
google时查到了看雪,看到脱壳后函数不能使用的问题,看到bithaha添加导入函数 msvcrt.dll中的_snwprintf,用LoadPE添加函数修改00420D81的call解决问题。抄袭的,不知道会不会扣分

分析过程:
1。用od插件装载map文件,使函数容易识别
2。起初不知道怎么下断,尝试给多个函数下断全部失败,后来对按钮下断
bp IsDialogMessageW [[esp+8]]==000606CA && [[esp+8]+4]==202
来到系统领空,对代码段下断运行程序来到程序领空。
3。单步到系统领空后继续对代码段F2运行后来到消息处理部分。然后F8单步经过好长一段来到弹出错误对话框的函数处00412192,然后向上找函数调用处找到00420D81 处的_snwprintf
4,按照上面的思路添加导入函数,将原函数换成导入的函数,运行成功,修改完毕。

题目要求要分析文档,由于之前没写过这个不知道怎么才算分析文档,就没有写
根本出错原因的话我估计我是没办法搞定了,等看大牛们的分析
附件为修改好的exe,我的机器应该没毒

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 264
活跃值: (30)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
2
请在仔细考虑 !!!
2008-10-14 15:22
0
游客
登录 | 注册 方可回帖
返回
//