从这集视频中,学到了以下两点:
一、在内存中搜索字符串
1、为什么要在内存中搜索字符串呢?

因为这个程序被UPX加壳了,而我们暂时不想脱壳,所以直接载入OD运行起来后,搜索出来的字符串是这样的:


2、方法
载入OD后运行,在工具栏中选择带 “m" 的图标。点击最上面那一行地址,随后输入要查找的字符串 .asp

第一个找到的不是需要的,因为前面看飘零的源码得到的经验:网址都是以 .asp结尾的,且地址前面是密钥。在窗口中右键选择“下一个”,会继续寻找,直到找到的结果的地址位于程序的地址空间。
二、登录按钮变灰,不可用的解决方法
1、 使用OD的API断点工具,在“限制程序功能”标签页中,把这3个API全选上。

2、还是看飘零的源码,知道了这个登录按钮是在程序刚运行就被禁用变灰的,所以第一次断下来,就是在禁用登录按钮

我们看堆栈窗口中,断下来的是EnableWindow这个API。在下面有两个参数,第一个是hWnd不管它;第2个是Enable = FALSE, 对应的值是0。
那么我们来到调用这个API的地方,只需让第一个push 变为push 1就可以了。

总结一下,上面这两点中都用到了前面对于飘零源代码研究的结果。如果,没有前面的研究,那这里根本不知道连接服务器的地址的格式,是无从下手的。先从使用了这项技术的简单的东西开始研究,总结出这个技术的模式或套路来;然后才能用到复杂的东西上去。
网友评论