由于我在学习电子方面的东西,想找一个示波器,但一般的示波器价格昂贵,所以在网上找到了这个虚拟的示波器,由于本人不知这个东西的实际效果,所以拉回它的软件看看实际效果,但这个虚拟的东西一方面要一些硬件的东西(购买他的硬件的话会免费送注册码),另一方面还必须要注册后才能使用。不过不试用怎么知道实际效果如何呢?于是花了点时间看看它的注册过程,跟踪的过程中由于有一处非常规的反跟踪及注册过程的复杂性,花费了很多时间才搞定,到最后才发现这个软件居然自己预留一个万能注册码。详情请看下文。 了解注册相关信息 首先用PEID查看一下,发现软件加了一个压缩壳ASPACK,使用工具或手动把它脱下,这步很容易,不细说。再用PEID查看,发现是用VC++编写。运行一下程序,当点击打开电源按钮时,会弹出注册框, 可以看到注册码为32位,估计用到MD5(用算法查看软件可以看出真是用到MD5)。现在我们输入假码:987654321,点击确定,程序要求重启,看来是重启型验证加密程序,对于这类程序的破解,注册信息一般放在注册表或放在安装目录的文件中。打开程序安装目录,发现当前有一个INI文件,打开这个INI文件,发现我们输入的987654321就在里面。到这里,我们已经初步总结这个软件的加密方案:加壳+重启验证,注册码放在安装目录下的INT文件中。 挫败反跟踪 好了,现在是OllyDbg出马了(OllyDbg是一个动态调试工具,相关的使用技巧请参看黑防往期的文章,为了叙述方面,下面简称为OD)。 用OD载入目标程序,试F9运行一下程序,发现非法指向错误,然后就会自动退出,但不用OD加载程序则运行正常。 看样子,OD动态跟踪不了,是不是想到用SOFTICE?不过作为一个系统逆向的爱好者,怎么不深入看看,是什么导致这种错误,又怎么去避免这种错误? 如果你也这样想,Follow me,看看我们怎么挫败它。请注意BAADF011这样的数字,一般这是系统分配内存时没有初始化时的数据,分配使用到的API有LocalAlloc及HeapAlloc,现在我们通过跟踪这两个API,看看那里没初始化。先按CTRL+F2重启程序,再在代码窗口中按CTRL+N,打开导入表窗口,找到两个API,右击选“Find references to import”,在弹出的窗口中在所有的API上按F2下断点。F9运行程序同时注意FLAGS参数,看到0043d362的地址处的值了吗?现在将这句改为PUSH 8,意思是让HeapAlloc分配内存时将它初始化为0。再运行一下程序,现在OD不会退出了吧。为了方便也可以把修改后的代码拷贝到可执行文件,再另存为另一个文件。 可以看到这处非常有意思的反跟踪,利用HeapAlloc分配内存是没初始化为0,后面在程序中有一些代码如果发现没有初始化,就会把这些非0的东西当作指针使用,就会出现非法调用的问题了。 跟踪注册过程 对于注册信息放在文件中的重启型程序,一般用注册文件作为字符串查找关键地方,但你会发现自己会迷失在程序初始化的代码中。现在我们使用一
孕妈妈在怀孕期间的生活习惯和饮食习惯都会对胎宝宝有一定的影响。每个父母都希望自己的孩子长得干干净净,白白胖胖的,但多数的宝宝身上或者脸部出现胎记,而且非常不易去除,对宝宝日后的生活和学习都会带来影响。...
中国十大黑客排名是什么?有什么事迹? 孤单剑客、冰叶、中华特攻 (King Xer)、冰雪封情。goodwell作为我国黑客界最早安排创始人,掀开我国黑客前史的序幕。goodwell领导下绿色兵团在网...
许久没有对博客 调整了,在这里首先给大家拜个晚年,祝大家在新的一年里事业辉煌、万事如意,这段时间里未能更新博客提供相关技术文章我表示歉意,在年假的这段时间,无意在新闻上注意一个比较科技的词“3D打印”...
不想保留联系方式,但倾注过大量时间、心力和感情的记忆太珍贵。 使用电脑微信备份聊天记录,只选择ta的聊天记录就好。 备份以后就和ta说再见吧,delete…… 聊天记录恢复以后,...
相信现在有很多的朋友们对于住房公积金封存可以取吗?都想要了解吧,那么今天小编就来给大家针对住房公积金封存可以取吗?进行一个介绍吧,希望小编介绍的内容能够为大家起到帮助哦 面对封存该怎么办?1....
网赚项目,这四个字好似有无穷的魔力,让很多的心甘情愿的花费N多的时间和金钱去追寻。真想用一句话来形容:众里寻他千百度 。蓦然回首 ,那人却在,灯火阑珊处。其实每天写文章,真的是很头痛的一件事情 ,如果...