易通电脑锁2006 V5.7.0.1 一劳永逸的自注册破解方法
【破文标题】易通电脑锁2006 V5.7.0.1 一劳永逸的自注册破解方法【破文作者】藍色の夢
【作者邮箱】[email protected]
【作者主页】https://www.chinapyg.com
【破解工具】OD,W32Dasm,ASPackDie
【破解平台】XP SP2
【软件名称】易通电脑锁2006 V5.7.0.1
【软件大小】3256K
【原版下载】http://www.etongsoft.net
【保护方式】壳,注册码,伪装文件夹
【软件简介】
易通电脑锁软件集电脑使用时间管理、定时系统控制亲作、多任务管理亲作、系统保护与修复、
日志记录与查询等一系列普通而实用的功能,是您电脑安全和使用管理的全新解决方案。
1.灵活的电脑使用时间管理:通过时间分段和累计使用时间两种时间控制方式对电脑的使用时间
进行全方位的控制管理。时间分段控制提供了7*24小时的时间控制表。用户可随意地设置每天电脑
使用时间段,系统为您提供了三种电脑状态选择,分别为:电脑正常使用状态、电脑锁定状态、电
脑关机状态。累计使用时间控制提供了每天累计使用电脑时间表,用户可随意地设置每天使用电脑
的总时间。当用户设置的累计时间使用完后,电脑将处于选择锁定计算机或关闭计算机状态。
2.全面的定时系统控制:本功能提供了自定、累计、延时、开机、系统无亲作等五种定时控制方
式。定时任务提供了定时关机、重启、注销、锁定、待机、休眠、打开程序或文件、关闭程序、提
醒等亲作任务。
3.贴心的多任务控制管理:您可以随意地按每年、每月、每周、每天、每小时等时间控制方式来
制定任务。可以添加、修改、删除定时任务。控制任务提供了定时关机、重启、注销、锁定、待机
、休眠、打开程序或文件、关闭程序、提醒等亲作任务。
4.方便的一键控制亲作:你可以随意地设置关闭计算机、重启计算机、锁定计算机、注销计算机
、待机、休眠的热键,通过您设置的热键,就可以快捷地执行关闭、重启、注销、锁定、待机、休
眠计算机的功能。
5.强大的系统保护与修复:Internet Explorer就是大家常说的IE浏览器,绝大多数用户都是使用
IE来浏览网页的。上网带来的主要问题就是安全问题,由于病毒或某些恶意程序给系统注册表造成
损坏,导致系统的某些重要功能被更改,给用户造成损失,您通过本功能就可轻松应对这些烦人的
事了。
6.详细的日志记录与查询:系统为您提供了计算机开关机日志和整个 Windows 系统的文件亲作
日志供用户统计查看。计算机开关机日志可以让你方便、详细地了解到您计算机的使用时间情况;
Windows文件亲作日志可以让你全面的了解到整个系统的文件亲作情况。
7.神奇的定时开机设置:本功能主要是让计算机定时自动开机。要实现自动开机,主板必须有相
应的支持才行,近几年生产的主板绝大多数都支持自动开机,我们只要在BIOS中进行相应设置即可
。不过不同主板、不同版本的BIOS设置方法会有所不同。一般常见的有以下三种品牌的CMOS:
Awards / AMIBIOS / Phoenix。
【破解声明】就在前两天刚刚破解了易通文件夹锁,感觉意由未尽,于是一鼓作气干脆再来一个!
=========================================================
【破解过程】
【分析过程】
前两天发表“易通文件夹锁2006 V3.0.5.0 一劳永逸的自注册破解方法”这篇文章的时候就有个想
法,是不是易通所有软件的注册方式都一样呢,于是上网下载,安装后惊奇的发现易通电脑锁注册
界面与文件夹锁惊人的相似,干脆一不做二不休一齐干掉它!
跟踪安装后发现在system32目录下写了个 CLockLogOn.dll 文件,用 PE-Scan 一看又是 ASP 的
壳,同样使用ASPackDie轻松搞定(不知为何易通所有软件都是ASP的壳,号称反汇编多强多强,连
个自主开发的壳都没有...当然,对于我们来说是件好事。为什么要脱它的壳?根据文件夹锁的破解
经验,猜想的注册程序就在这里,后面证明猜想成立,呵呵),启动OD调试,什么?找不到安装路
径!居然隐藏了安装文件夹,显示系统和所有隐藏文件后又发现双击进去就是控制面板(天,弄得这
么复杂有什么用啊,不如干脆用自己开发的文件夹锁加个密多安全啊,呵呵),这个好解决,右击
易通电脑锁 快捷方式,选属性->查找目标,怎么样,打开安装目录了吧,轻松跳过文件夹加密(这
方法绝对比在命令行下进去快n倍)!
启动OD,调用 CLockSvr.exe ,F9运行。。。什么,又被检查到了,居然还是反调试,没办法,
先隐藏OD吧(不会?看看前辈们的文章吧,这可是破解的基本功)。运行一看还是不行,弹不出注册
对话框,居然做得这么复杂!!无意中发现运行 CLock.exe 也能弹出注册对话框,挂OD一看居然
成功运行了。呵呵,漏洞百出啊。
接下来有两种方法定位:
1.下bp MessageBoxA断点。
2.根据前一篇文章中的 某些 ASCII 进行字符串定位(参看下文的代码注释)。
然后 F9 运行并填入假码 11111-22222-33333-44444 后断下,打开反汇编窗口,找到如下代码
进行分析(注册名:shenhaiyu)。
==========================================================
018E2E9A 8BC0 mov eax,eax ; 注册算法入口
018E2E9C 55 push ebp
018E2E9D 8BEC mov ebp,esp
018E2E9F B9 0B000000 mov ecx,0B
018E2EA4 6A 00 push 0
018E2EA6 6A 00 push 0
018E2EA8 49 dec ecx
018E2EA9^ 75 F9 jnz short clocklog.018E2EA4
018E2EAB 53 push ebx
018E2EAC 8BD8 mov ebx,eax
018E2EAE 33C0 xor eax,eax
018E2EB0 55 push ebp
018E2EB1 68 1E318E01 push clocklog.018E311E
018E2EB6 64:FF30 push dword ptr fs:
018E2EB9 64:8920 mov dword ptr fs:,esp
018E2EBC 8D55 F4 lea edx,dword ptr ss:
018E2EBF 8B83 04030000 mov eax,dword ptr ds:
018E2EC5 E8 8274FDFF call clocklog.018BA34C
018E2ECA 8B45 F4 mov eax,dword ptr ss:
018E2ECD 8D55 F8 lea edx,dword ptr ss:
018E2ED0 E8 9B5AF9FF call clocklog.01878970
018E2ED5 837D F8 00 cmp dword ptr ss:,0 ; 判断用户名是否为空
018E2ED9 0F84 80000000 je clocklog.018E2F5F
018E2EDF 8D55 EC lea edx,dword ptr ss:
018E2EE2 8B83 08030000 mov eax,dword ptr ds:
018E2EE8 E8 5F74FDFF call clocklog.018BA34C
018E2EED 8B45 EC mov eax,dword ptr ss:
018E2EF0 8D55 F0 lea edx,dword ptr ss:
018E2EF3 E8 785AF9FF call clocklog.01878970
018E2EF8 837D F0 00 cmp dword ptr ss:,0 ; 判断第1组注册码是否为空
018E2EFC 0F85 9A000000 jnz clocklog.018E2F9C
018E2F02 8D55 E4 lea edx,dword ptr ss:
018E2F05 8B83 10030000 mov eax,dword ptr ds:
018E2F0B E8 3C74FDFF call clocklog.018BA34C
018E2F10 8B45 E4 mov eax,dword ptr ss:
018E2F13 8D55 E8 lea edx,dword ptr ss:
018E2F16 E8 555AF9FF call clocklog.01878970
018E2F1B 837D E8 00 cmp dword ptr ss:,0 ; 判断第2组注册码是否为空
018E2F1F 75 7B jnz short clocklog.018E2F9C
018E2F21 8D55 DC lea edx,dword ptr ss:
018E2F24 8B83 14030000 mov eax,dword ptr ds:
018E2F2A E8 1D74FDFF call clocklog.018BA34C
018E2F2F 8B45 DC mov eax,dword ptr ss:
018E2F32 8D55 E0 lea edx,dword ptr ss:
018E2F35 E8 365AF9FF call clocklog.01878970
018E2F3A 837D E0 00 cmp dword ptr ss:,0 ; 判断第3组注册码是否为空
018E2F3E 75 5C jnz short clocklog.018E2F9C
018E2F40 8D55 D4 lea edx,dword ptr ss:
018E2F43 8B83 18030000 mov eax,dword ptr ds:
018E2F49 E8 FE73FDFF call clocklog.018BA34C
018E2F4E 8B45 D4 mov eax,dword ptr ss:
018E2F51 8D55 D8 lea edx,dword ptr ss:
018E2F54 E8 175AF9FF call clocklog.01878970
018E2F59 837D D8 00 cmp dword ptr ss:,0 ; 判断第4组注册码是否为空
018E2F5D 75 3D jnz short clocklog.018E2F9C
018E2F5F 68 10000400 push 40010
018E2F64 8D55 D0 lea edx,dword ptr ss:
018E2F67 B8 38318E01 mov eax,clocklog.018E3138
018E2F6C E8 8B76FFFF call clocklog.018DA5FC
018E2F71 8B45 D0 mov eax,dword ptr ss:
018E2F74 E8 B31BF9FF call clocklog.01874B2C
018E2F79 50 push eax
018E2F7A 8D55 CC lea edx,dword ptr ss:
018E2F7D B8 4C318E01 mov eax,clocklog.018E314C
018E2F82 E8 7576FFFF call clocklog.018DA5FC
018E2F87 8B45 CC mov eax,dword ptr ss:
018E2F8A E8 9D1BF9FF call clocklog.01874B2C
018E2F8F 50 push eax
018E2F90 6A 00 push 0
018E2F92 E8 9144F9FF call <jmp.&user32.MessageBoxA> ; jmp 到 user32.MessageBoxA
018E2F97 E9 F8000000 jmp clocklog.018E3094
018E2F9C 8D55 C8 lea edx,dword ptr ss:
018E2F9F 8B83 08030000 mov eax,dword ptr ds:
018E2FA5 E8 A273FDFF call clocklog.018BA34C
018E2FAA FF75 C8 push dword ptr ss: ; 第一组注册码 ebp-38=11111
018E2FAD 8D55 C4 lea edx,dword ptr ss:
018E2FB0 8B83 10030000 mov eax,dword ptr ds:
018E2FB6 E8 9173FDFF call clocklog.018BA34C
018E2FBB FF75 C4 push dword ptr ss: ; 第二组注册码 ebp-3C=22222
018E2FBE 8D55 C0 lea edx,dword ptr ss:
018E2FC1 8B83 14030000 mov eax,dword ptr ds:
018E2FC7 E8 8073FDFF call clocklog.018BA34C
018E2FCC FF75 C0 push dword ptr ss: ; 第三组注册码 ebp-40=33333
018E2FCF 8D55 BC lea edx,dword ptr ss:
018E2FD2 8B83 18030000 mov eax,dword ptr ds:
018E2FD8 E8 6F73FDFF call clocklog.018BA34C
018E2FDD FF75 BC push dword ptr ss: ; 第四组注册码 ebp-44=44444
018E2FE0 8D45 FC lea eax,dword ptr ss:
018E2FE3 BA 04000000 mov edx,4
018E2FE8 E8 071AF9FF call clocklog.018749F4
018E2FED 8D55 B8 lea edx,dword ptr ss:
018E2FF0 8B83 04030000 mov eax,dword ptr ds:
018E2FF6 E8 5173FDFF call clocklog.018BA34C
018E2FFB 8B55 B8 mov edx,dword ptr ss: ; 注册名送edx
018E2FFE 8B45 FC mov eax,dword ptr ss: ; 假注册码送eax
018E3001 E8 4E7AFFFF call clocklog.018DAA54 ; 调用注册算法call(1)
018E3006 84C0 test al,al ; 标志位检验
018E3008 74 4B je short clocklog.018E3055 ; 标志位判断,关键跳(但在此文不重要)
018E300A 68 40000400 push 40040
018E300F 8D55 B4 lea edx,dword ptr ss:
018E3012 B8 38318E01 mov eax,clocklog.018E3138
018E3017 E8 E075FFFF call clocklog.018DA5FC
018E301C 8B45 B4 mov eax,dword ptr ss:
018E301F E8 081BF9FF call clocklog.01874B2C
018E3024 50 push eax
018E3025 8D55 B0 lea edx,dword ptr ss:
018E3028 B8 7C318E01 mov eax,clocklog.018E317C
018E302D E8 CA75FFFF call clocklog.018DA5FC
018E3032 8B45 B0 mov eax,dword ptr ss:
018E3035 E8 F21AF9FF call clocklog.01874B2C
018E303A 8BD0 mov edx,eax
018E303C A1 78598E01 mov eax,dword ptr ds:
018E3041 8B00 mov eax,dword ptr ds:
018E3043 59 pop ecx
018E3044 E8 9F95FCFF call clocklog.018AC5E8
018E3049 B8 BC318E01 mov eax,clocklog.018E31BC ; ASCII "closeclocksvr"
018E304E E8 8595FFFF call clocklog.018DC5D8 ; 这个字串对于定位很重要
018E3053 EB 3F jmp short clocklog.018E3094
018E3055 68 10000400 push 40010
=======================================================
算法Call(1)
018DAA59 51 push ecx ; 算法Call(1)开始
018DAA5A 51 push ecx
018DAA5B 51 push ecx
018DAA5C 51 push ecx
018DAA5D 51 push ecx
018DAA5E 51 push ecx
018DAA5F 51 push ecx
018DAA60 51 push ecx
018DAA61 53 push ebx
018DAA62 56 push esi
018DAA63 57 push edi
018DAA64 8BFA mov edi,edx
018DAA66 8BF0 mov esi,eax
018DAA68 33C0 xor eax,eax
018DAA6A 55 push ebp
018DAA6B 68 D0AB8D01 push clocklog.018DABD0
018DAA70 64:FF30 push dword ptr fs:
018DAA73 64:8920 mov dword ptr fs:,esp
018DAA76 C645 FF 00 mov byte ptr ss:,0
018DAA7A B8 90A08D01 mov eax,clocklog.018DA090
018DAA7F E8 14F8FFFF call clocklog.018DA298
018DAA84 84C0 test al,al
018DAA86 74 0C je short clocklog.018DAA94
018DAA88 A1 78598E01 mov eax,dword ptr ds:
018DAA8D 8B00 mov eax,dword ptr ds:
018DAA8F E8 B01AFDFF call clocklog.018AC544
018DAA94 B8 449E8D01 mov eax,clocklog.018D9E44
018DAA99 E8 FAF7FFFF call clocklog.018DA298
018DAA9E 84C0 test al,al
018DAAA0 74 0C je short clocklog.018DAAAE
018DAAA2 A1 78598E01 mov eax,dword ptr ds:
018DAAA7 8B00 mov eax,dword ptr ds:
018DAAA9 E8 961AFDFF call clocklog.018AC544
018DAAAE B8 589F8D01 mov eax,clocklog.018D9F58
018DAAB3 E8 E0F7FFFF call clocklog.018DA298
018DAAB8 84C0 test al,al
018DAABA 74 0C je short clocklog.018DAAC8
018DAABC A1 78598E01 mov eax,dword ptr ds:
018DAAC1 8B00 mov eax,dword ptr ds:
018DAAC3 E8 7C1AFDFF call clocklog.018AC544
018DAAC8 803D 406C8E01 0>cmp byte ptr ds:,0
018DAACF 74 1D je short clocklog.018DAAEE
018DAAD1 6A 30 push 30
018DAAD3 B9 E4AB8D01 mov ecx,clocklog.018DABE4
018DAAD8 BA F0AB8D01 mov edx,clocklog.018DABF0
018DAADD A1 78598E01 mov eax,dword ptr ds:
018DAAE2 8B00 mov eax,dword ptr ds:
018DAAE4 E8 FF1AFDFF call clocklog.018AC5E8
018DAAE9 E9 C7000000 jmp clocklog.018DABB5
018DAAEE 8D45 F4 lea eax,dword ptr ss:
018DAAF1 E8 46FAFFFF call clocklog.018DA53C ; 调用根据硬盘号取得机器码的子程序
018DAAF6 8D4D F0 lea ecx,dword ptr ss:
018DAAF9 8BD7 mov edx,edi ; edi=注册名
018DAAFB A1 3C6C8E01 mov eax,dword ptr ds:
018DAB00 E8 47FCFFFF call clocklog.018DA74C ; 调用注册算法子程序
018DAB05 8B45 F0 mov eax,dword ptr ss: ; EDX中存的就是注册真码
018DAB08 8BF2 mov esi,edx ; !!!!!关键所在,请看后文分析!!!!!!!
018DAB0A E8 699FF9FF call clocklog.01874A78 ; 由算法call得出真正注册码
018DAB0F 0F85 A0000000 jnz clocklog.018DABB5
018DAB15 B2 01 mov dl,1
018DAB17 A1 28988D01 mov eax,dword ptr ds:
018DAB1C E8 07EEFFFF call clocklog.018D9928
018DAB21 8BD8 mov ebx,eax
018DAB23 BA 00000080 mov edx,80000000
018DAB28 8BC3 mov eax,ebx
018DAB2A E8 99EEFFFF call clocklog.018D99C8
018DAB2F 8D45 F8 lea eax,dword ptr ss:
018DAB32 50 push eax
018DAB33 B9 01000000 mov ecx,1
018DAB38 BA 17000000 mov edx,17
018DAB3D A1 3C6C8E01 mov eax,dword ptr ds:
018DAB42 E8 41FBFFFF call clocklog.018DA688
018DAB47 B1 01 mov cl,1
018DAB49 8B55 F8 mov edx,dword ptr ss:
018DAB4C 8BC3 mov eax,ebx
018DAB4E E8 D9EEFFFF call clocklog.018D9A2C
018DAB53 84C0 test al,al
018DAB55 74 50 je short clocklog.018DABA7
018DAB57 8D55 EC lea edx,dword ptr ss:
018DAB5A 8BC6 mov eax,esi
018DAB5C E8 9BFAFFFF call clocklog.018DA5FC
018DAB61 8B45 EC mov eax,dword ptr ss:
018DAB64 50 push eax
018DAB65 8D55 E8 lea edx,dword ptr ss:
018DAB68 B8 14AC8D01 mov eax,clocklog.018DAC14 ; ASCII "cpsn"
018DAB6D E8 8AFAFFFF call clocklog.018DA5FC ; 这个字串对于定位很重要
018DAB72 8B55 E8 mov edx,dword ptr ss:
018DAB75 8BC3 mov eax,ebx
018DAB77 59 pop ecx
018DAB78 E8 4BF0FFFF call clocklog.018D9BC8
018DAB7D 8D55 E4 lea edx,dword ptr ss:
018DAB80 8BC7 mov eax,edi
018DAB82 E8 75FAFFFF call clocklog.018DA5FC
018DAB87 8B45 E4 mov eax,dword ptr ss:
018DAB8A 50 push eax
018DAB8B 8D55 E0 lea edx,dword ptr ss:
018DAB8E B8 24AC8D01 mov eax,clocklog.018DAC24 ; ASCII "user"
018DAB93 E8 64FAFFFF call clocklog.018DA5FC ; 这个字串对于定位很重要
018DAB98 8B55 E0 mov edx,dword ptr ss:
018DAB9B 8BC3 mov eax,ebx
018DAB9D 59 pop ecx
018DAB9E E8 25F0FFFF call clocklog.018D9BC8
018DABA3 C645 FF 01 mov byte ptr ss:,1
018DABA7 8BC3 mov eax,ebx
018DABA9 E8 EAEDFFFF call clocklog.018D9998
018DABAE 8BC3 mov eax,ebx
018DABB0 E8 D38CF9FF call clocklog.01873888
018DABB5 33C0 xor eax,eax
018DABB7 5A pop edx
018DABB8 59 pop ecx
018DABB9 59 pop ecx
018DABBA 64:8910 mov dword ptr fs:,edx
018DABBD 68 D7AB8D01 push clocklog.018DABD7
018DABC2 8D45 E0 lea eax,dword ptr ss:
018DABC5 BA 07000000 mov edx,7
018DABCA E8 D19AF9FF call clocklog.018746A0
018DABCF C3 retn ; 算法Call(1)结束
=======================================================
【破解总结】
怎么样,看到代码后开始沾沾自喜了吧,居然和 易通文件夹锁 一模一样,接下来不用我说如
何破解你也应该会了吧(前提是你看了我之前的那篇文章)。
不废话了简短说明一下,程序在 018DAB08 的 esi 和 edx 两个寄存器中分别存放真假注册码。
而且接下来是将 edx 中的假码覆盖写入 esi 的真码,很明显是要将假码压入堆栈在 018DAB0A
调用比较call。
这时应该想到,把 018DAB08 的 mov edx,esi 改为 mov esi,edx 会将堆栈中存的假码全都换
成程序自己算出来的真码,不管程序运行到哪里都是用两个真码进行比较,自然就会成功注册了。
既然已经找到要改的地方了,接下来可以使用 W32Dasm 打开脱壳后的 CLockLogOn.dll 定位
到 018DAB08 将 8BD6 mov edx,esi 改为 8BF2 mov esi,edx,然后覆盖原文件,运行软件随意
输入用户名与注册码,再次成功注册了。
回来验证一下,将原文件覆盖回去,运行软件,嗯,仍然是注册版。只要保留修改后的
CLockLogOn.dll 文件就可以不用OD跟码,一劳永逸的让程序自己注册了。
这篇破文基本上抄袭我的上一篇破文,目的只是为菜鸟们提供简单的破解方法,技术含量较
低,而且很多分析是建立在前辈们的成果基础上的,希望大家不要用鸡蛋砸我哦,有兴趣的朋
友请自己动手分析学习啊^^
另外有朋友说我的文章是摘自看雪论坛的,呵呵,其实那是我自己发的,只是想多几个途径发表,不知道
是否犯了规矩,希望大家多指正.
[ 本帖最后由 藍色の夢 于 2006-12-27 13:40 编辑 ] 哥们,坐你的沙发了,我是丁浩然,干脆把易通电脑助手也搞了吧!易通电脑锁超级好用,希望下的朋友顶上!!!
[ 本帖最后由 kiss-you 于 2006-12-15 20:59 编辑 ] 顶顶顶,不顶不行了,真是厉害,可惜我还是菜鸟 电脑助手已经破解了,只是还没发表而已 兄弟真是太厉害了,你用不同的名字来发表文章引起误会.我再次表示道歉,以后多多向兄弟学习算法,希望能得到你的指教. 学习一下,你的分析,有时间我们多交流一下. 不错... 楼主历害!努力学习! 可以发一下是怎么破解的吗
很想学啊。 谢谢楼主分享,学习一下你的分析,
页:
[1]
2