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

对某U盘登录锁的注册算法分析

朋友需要一个能把优盘变成电脑锁的软件以用来保护她新买的本本不受外人随意使用,正好前几天我看别人网站的时候看到一款这样的软件,当时介绍的版本已经很老了,我使用Google搜索了一下发现已经有新版本的程序存在了。以下为此软件的介绍:“Active Lock可以将任何一款普通的U盘变成您的Windows登录钥匙。启用Active Lock后,用户需要插入USB钥匙盘才能登录Windows操作系统,拔出U盘时自动锁住电脑。Active Lock采用Windows

GINA接口,无需安装驱动,不占用任何资源,也不产生任何进程。使用方法:打开ALock.exe,插入要作为登录钥匙的U盘,选择USB钥匙盘盘符,单击<启用>按钮。然后重新启动Windows操作系统即可。”

下载程序并安装,由于是一款共享软件所以需要注册。于是启动PEiD查看了一下程序是否有加壳

程序没有加壳是由Delphi编译生成的。分析Delphi程序的利器是DeDe,将其拖入到DeDe中进行分析,等待分析结束后,我们在界面找到了关于对话框的OK按钮事件地址:004AD74C。

将此地址记下以备用。选项卡创建一个“.MAP”文件备用。好了,到现在为止所有的准备工作都已完成,现在该主角上场来肢解这个程序了。运行Ollydbg(以下简称OD)并载入程序。待其分析完毕后使用插件Load Map载入刚刚生成的那个Map格式的文件,现在再来看OD中的代码你会发现很多的调用已经被解析出来了,点击OD界面。

在弹出的对话框中输入该才记下的地址:004AD74C。

从以上代码中可以看出地址:004AD78B处是一个关键调用,通过其返回值判断是否注册成功。

好了到此我们已经对整个的算法流程已经很清晰了,下面就用C#来写一个注册机吧,这样用起来会方便一些。运行Visual Studi0 2008,并新建一个C#项目。绘制程序界面。

由于前几天分析某软件的时候获取了该软件中一个计算MD5哈希值的Dll文件所以我在程序中直接引入此DLI使用。选择生成菜单下的生成XX项目(XX视你的项目名而定)至此任务就完成了,危险漫步测试了一下挺好用的:终于是不负所托。朋友拿到程序后很是开心。

通过本次的分析我们可以看出,欲善其事必利其器,在分析的时候选择一款好的分析工具能获得事倍功半的效果。希望大家在今后的道路上一帆风顺。

相关推荐