浅谈流光4.7完全破解

/ns/hk/crack/data/20020810034545.htm

浅谈流光4.7完全破解





by lion
http://www.cnhonker.net
====================================================
1.

其实想完全破解流光,实在很难.
小榕是我的同事,破解他的流光好象不大..., 而且我如果想要总也可以要到流光的无限制key.
用了那个流光4.7测试版,但一直没有拿到正式版.
为什么还要破解呢,首先自己近来对软件破解比较感兴趣.:)
网上公布了不少的破解版本,都是不完整破解的,所以...,我就开始破解了.
现在把破解经过写出来, 也希望那些找不到流光破解方法的人看了能有些帮助.避免少走弯路.

安装完流光4.7以后,开扫...
限制IP的提示是挺讨厌的.:)我也不愿意看到它.
我用的机器是win2000,很多破解的软件都不能用.:(
一看文件大小就知道是压缩过的了,首先用Language2000看了看文件类型
知道是tElock加密的文件.版本比较低,是0.43
用Unpgui里的telock插件一分钟把它脱壳.脱壳后根本不用重建资源表
然后用W32dsm反汇编分析,果然已经不象以前版本那样可以看到字符串strings了.
有些人说是小榕经过处理了,我看它不见的原因是telock的压缩问题.:)
后来继续用ida 4.05来反汇编,
里面有很详细的英文字符串资料,
破掉了数字验证,时间验证等,但最后, 高级扫描和FTP扫描老不能用.
嘿嘿,大多数的人应该就破到这里就没办法继续了.
跟我来.:)
静态分析不成功,就来动态分析它一下.

2.

弄出softice,先破它的数字验证,
设断掉messageboxa,不成功.
设showwindow,老跟不对,
后来一想,数字验证要读文件的,就是那个PubAuth.key :)
设断点readfile, 按x 返回
成功中断,按F11返回读文件的程序领空.
d edx
呵呵,东东都出来的.:)
然后一直用F8跟踪...
跟着程序跑,
按了不少于1000下...

最后终于分析出了流光真正的加密和限制IP功能的要点所在.
想知道吗?
嘿嘿,先去喝杯咖啡.

3.

我回来了:)
我们继续...

其实后来发现,用lstrcpyna设断点,可以更快更有效的中断.
首先我们把PubAuth.key文件里的内容清空,改为1000或者任意个同样的或者连续字符.这里我用‘B‘来填充
启动流光, ctrl+d中断, bpx readfile, x后就中断了,我们可以按F11跳到ret,
d edx就可以看到11个加密过的字符.
这就是真正的key了.
它是怎么来的?
嘿嘿,
暂时不告诉你,
不停的按F11,如果你不怕错过就按F12也可以.:)
你可以等到流光的进度条快满了才设端点,这样你按的次数会少很多.;)
后来,我们可以看到, 程序打开了另一个文件,
这就是真正的PubAuth.key的内容了.
s o l ffffffff ‘BBBBBBBB‘
我们可以看到key的内容在内存的位置.
刚开始我们可以在内存 01C9EF98里找到它,我的是Win 2000 AD Server,你的可能会跟我不一样,然后后面跟着一段自身的加密串.
然后程序把自身的加密串和PubAuth.key文件的内容分别拷贝到了 020B8464 和 020C4254的内存空间.
所有东西都在这里了,dump吧.
呵呵

4.

你会发现dump出来的文件经过处理后,(怎么处理等会再说),虽然可以绕过数字验证,
但并不能让你有扫描国内IP的能力.
嘿嘿,你没有把程序完全跟下去吧...
现在我们来说说流光key的加密的真正要点所在

首先程序调用GetModuleFile取得自己的文件名,
然后读打开自己, 循环读取200h(512个)字节的数据,然后递交给加密程序加密.
至于是怎么加密的...我是看不懂, 太乱了
哪个高手有空的可以去跟跟,把keygen写出来.:)
加密程序把512个字节的数据加密成11个字符,字符集合为A-Z,a-z,1-9,;{等
然后把它存放到内存里
所有读取和加密完成以后,读取PubAuth.key文件的内容,然后判断.
注意了,
这里判断不只是一次判断.:)
是两次.....

通过IDA的静态反汇编我们可以很清楚的看到这些.
首先程序先验证程序是否完整,就是用PubAuth.key文件的内容和自身的加密串来比较,
这是一次判断
如果你的程序是脱壳过的,那都会提示"数字验证失败"的东东.
简单的避免这个你可以直接用16进制编辑器来编辑文件.修改跳转.
时间验证等其他功能都可以看静态反汇编代码,用编辑器修改跳转.
这个就不介绍了,以前都有人写文章说过.
但这种方法破出来的程序有很大问题
如,ipc无法破解,高级扫描加密传输老出问题......
所以,没有搞清楚流光具体的加密原理,这些破解是不能完全破解的.
我也没搞懂他的传输加密是怎么弄的......
第二次的判断是什么呢?
就是判断你是否有不限制IP扫描的权限!
而这个权限的判断就是在你的Key文件里.
奇怪吧.
也就是说,只要你完全了解了加密过程,
你自己也能弄个不限制IP的Key出来.

PubAuth.key文件大家都认为它只有数字验证的功能,
其实不是,验证不限制IP扫描的加密串也在里面.:)
我们可以根据刚刚我分析的加密机制来看看流光的exe文件跟PubAuth.key的关系.
:\>dir Fluxay47.exe
驱动器 D 中的卷没有标签。
卷的序列号是 8084-DE58

d:\ 的目录

002-04-04 13:46 869,888 Fluxay47.exe
1 个文件 869,888 字节
0 个目录 569,991,168 可用字节

:\>dir PubAuth.key
驱动器 D 中的卷没有标签。
卷的序列号是 8084-DE58

d:\ 的目录

002-04-04 13:46 18,700 PubAuth.key
1 个文件 18,700 字节
0 个目录 569,970,688 可用字节
看到了吗?
:)
流光程序为869888 byte,而PubAuth.key为18700 byte.
按照加密机制,他们的大小应该是 PubAuth.key.size = Fluxay47.exe.size / 512 *11 = 18689 Byte
但实际PubAuth.key的大小是18700,
多出来的这个是什么呢?
就是限制你扫描范围的加密串,加密后的通用密码.:)
流光第二个判断就是判断这个11个字符的!!!
好像流光的限制并没有我们想象的那么复杂!:)

所以,我们可以在不用编辑器修改二进制文件,
不用反汇编工具来一行一行分析代码.
而只需要在softice里设一个断点,
直接取得存放在内存里的加密串!!
而所有功能的破解只要这11个字符...
怎么获取?
内存里搜索你Key文件里最后11个字符...
静态汇编看跳转点...
...
自己看教程吧.我累了.

流光就这样被破掉了...
它的加密强度只是11个字符串而已.

不得不说流光是我见过最好的Win2000平台下的扫描工具
感谢小榕!给了我们这么好的武器,但请你们要知道,武器是用来杀鬼子的,而不是国内的同胞.
请不要拿国内的机器开刀.

终于写完了破解介绍.洗澡澡去.嘿嘿....

lion
lion@cnhonker.net
2002/5/13
=============================================================================================
PS:
送给大家一个前几天编译的扫描工具Nmap-2.54BETA34-Win32.zip

http://www.cnhonker.net/user/lion/nmap-2.54BETA34-Win32.zip
nmap & nmapfe for win32




来源:红客联盟