危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2289 浏览19378947

爆破之路见水印

废话不多说,危险漫步直奔主题。今天要破解的软件是Camcap,偶尔在已好久不用的文件里发现的,作者描述是支持USB摄像头及所有WDM驱动的摄影机拍照,完美支持XP SP3与Vista,照片存储为图像质量较好压缩比例较大的JPG格式的拍照软件,我们用的是试用版,照片有字幕,正式版本字幕将消失。

先来拍一下,看看效果,照片加了水印(包括作者信息和拍照时间)。我的爆破方向也由水印确定。大家知道,要获得当前时间,会利用一些函数,我们可以对函数下断,这个程序就用了GetLocalTime这个函数。废话不多说,动手吧。

一、脱壳

这个软件的壳是UPX 0.89.6 - 1.02/1.05 - 1.24 ->Markus&Laszlo,这个壳很怪,我用ESP定律来脱,倒是能正常运行,可是下不了断,而用资源修改工具像Restorator修改后壳便消失了,而且还能下函数断点。我是初学,如果老鸟知道还请不吝赐教。修改资源后载入PEID,DELPHI编写的。

二、对函数下断查看调用

将修改过的程序载入Ollyice,右键选择查找一当前模块中的名称(标签),找到KERNEL32.GetLocalTime一行,右键选择在每个参考上设置断点。程序设下了三个断点,现在按F9运行程序,单击F8,程序自动停在0040ADE4处,代码我就不贴出来了有需要的可以来找我要。

在0040ADDC处(即这段类似函数功能的头部)有两处CALL调用,经过我的测试,第一个CALL没用处,右击此处,选择转到-CALL来自005086D7。

005086CE处进行比较,若未注册则继续,否则在005086D5处跳过,知道了原理,我们将005086D5处的JE改为JMP,保存一下,再运行程序,作者信息还在,但烦人的时间已经没了。

那么作者信息又在哪呢?在005086D5处上下翻翻,发现可以的地方。

00508744处有一远跳,既然这样,将jl改为JMP试一下,右键复制到可执行文件,保存修改,在运行看看,哈哈,烦人的水印全没了。

三、修改“未注册版本”

这个修改很简单,在第一步时可以顺便修改下MYLANG资源,修改后保存即可,我稍稍改了下,不过软件好用就成,追求些表面文章也没啥必要。

总结一下,本次破解主要是依靠GetLocalTime函数,多少也算个思路吧,至于注册模块我没有分析,但爆破不太容易。另外,通过E盾,我们可以知道软件是现在C盘生成一个名为sita.bmp的文件,然后加水印并转换为压缩比高的JPG文件。文章写到这里就结束了,危险漫步与你的黑客生涯同在,还请大家多多支持!

相关推荐