好友
阅读权限10
听众
最后登录1970-1-1
|
【软件名称】: Inpaint
【下载地址】: http://www.theinpaint.com
【软件语言】: C++
【使用工具】: OD,Peid
【操作平台】: Win7 32
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
前言:
第一天来吾爱,也是第一次发帖,所以格式也就只好借鉴一下小Y的了。。。。。。。。
当然,看此贴最少也得会OD和Peid吧。如果你什么都不懂,就先去看看恒大的教程吧,讲的很详细。
进入正题
1.查壳。
无论拿到什么软件,破解第一步总是也必须是查壳。。。。
什么都没找到!
告诉新手们一个方法,就是点开右下的“→”然后再核心扫描,这就可以看是否有壳了。(只是我的看法,大牛可以说说你们的想法)
C++,无壳!
2.收集信息
打开软件
点栏中的Help再点Enter the serial Key
输入假码,再点击OK,这时候会弹出错误窗口
有了这个还不好办?OD载入,搞起!
定位好这个注册失败的位置
往上看可以看到注册成功的注释,所以必定有一个跳转会跳过成功,代码如下:
00DE9390 55 push ebp
00DE9391 8BEC mov ebp,esp
00DE9393 6A FF push -1
00DE9395 68 C8FB4301 push Inpaint.0143FBC8
00DE939A 64:A1 00000000 mov eax,dword ptr fs:[0]
00DE93A0 50 push eax
00DE93A1 64:8925 0000000>mov dword ptr fs:[0],esp
00DE93A8 83EC 0C sub esp,0C
00DE93AB 56 push esi
00DE93AC 8BF1 mov esi,ecx
00DE93AE 8B45 08 mov eax,dword ptr ss:[ebp+8]
00DE93B1 8378 08 00 cmp dword ptr ds:[eax+8],0
00DE93B5 C745 FC 0000000>mov dword ptr ss:[ebp-4],0
00DE93BC 0F84 EA000000 je Inpaint.00DE94AC
00DE93C2 8D4D 08 lea ecx,dword ptr ss:[ebp+8]
00DE93C5 51 push ecx
00DE93C6 E8 B5BDFFFF call Inpaint.00DE5180 //关键CALL
00DE93CB 83C4 04 add esp,4
00DE93CE 84C0 test al,al
00DE93D0 0F84 D6000000 je Inpaint.00DE94AC //此处为关键跳转
00DE93D6 8B8E 88010000 mov ecx,dword ptr ds:[esi+188]
00DE93DC 6A 00 push 0
00DE93DE E8 6D3F1900 call Inpaint.00F7D350
00DE93E3 8B8E 8C010000 mov ecx,dword ptr ds:[esi+18C]
00DE93E9 6A 00 push 0
00DE93EB E8 603F1900 call Inpaint.00F7D350
00DE93F0 8D4D 08 lea ecx,dword ptr ss:[ebp+8]
00DE93F3 51 push ecx
00DE93F4 8D4E 14 lea ecx,dword ptr ds:[esi+14]
00DE93F7 E8 64ED5600 call Inpaint.01358160
00DE93FC 6A FF push -1
00DE93FE 68 3C415401 push Inpaint.0154413C ; inpaint
00DE9403 E8 48005400 call Inpaint.01329450
00DE9408 8945 F0 mov dword ptr ss:[ebp-10],eax
00DE940B 6A 00 push 0
00DE940D 8D55 EC lea edx,dword ptr ss:[ebp-14]
00DE9410 68 8C4E5401 push Inpaint.01544E8C ; thank you for registering!
可能大家都以为结束了,其实不然,在我们把je改成jnz或nop后,软件在保存图片是依旧会提示未注册,为什么呢?
因为我们现在爆破掉的只是那个栏(或者是其他什么的,我也不是很明白),但是我们知道要爆破那里了————就是那个保存文件时弹出的注册窗口,那才应该是我们真正的目标!
载入我们之前爆破的软件,查找保存图片时弹出的窗口的关键字.
然后就很简单了。。。。。。代码如下:
013BC6EF 52 push edx013BC6F0 E8 5BAA5300 call 123.018F7150
013BC6F5 83C4 04 add esp,4
013BC6F8 8B45 EC mov eax,dword ptr ss:[ebp-14]
013BC6FB 8378 08 00 cmp dword ptr ds:[eax+8],0
013BC6FF 0F85 FF010000 jnz 123.013BC904 //此为关键跳
013BC705 C645 FC 11 mov byte ptr ss:[ebp-4],11
013BC709 8BCF mov ecx,edi
013BC70B F0:0FC108 lock xadd dword ptr ds:[eax],ecx
013BC70F 75 0C jnz short 123.013BC71D
013BC711 8B55 EC mov edx,dword ptr ss:[ebp-14]
013BC714 52 push edx
013BC715 E8 36AA5300 call 123.018F7150
013BC71A 83C4 04 add esp,4
013BC71D 8B45 E8 mov eax,dword ptr ss:[ebp-18]
013BC720 C645 FC 10 mov byte ptr ss:[ebp-4],10
013BC724 8BCF mov ecx,edi
013BC726 F0:0FC108 lock xadd dword ptr ds:[eax],ecx
013BC72A 75 0C jnz short 123.013BC738
013BC72C 8B55 E8 mov edx,dword ptr ss:[ebp-18]
013BC72F 52 push edx
013BC730 E8 1BAA5300 call 123.018F7150
013BC735 83C4 04 add esp,4
013BC738 8B45 E4 mov eax,dword ptr ss:[ebp-1C]
013BC73B C645 FC 0F mov byte ptr ss:[ebp-4],0F
013BC73F 8BCF mov ecx,edi
013BC741 F0:0FC108 lock xadd dword ptr ds:[eax],ecx
013BC745 75 0C jnz short 123.013BC753
013BC747 8B55 E4 mov edx,dword ptr ss:[ebp-1C]
013BC74A 52 push edx
013BC74B E8 00AA5300 call 123.018F7150
013BC750 83C4 04 add esp,4
013BC753 68 B0E87501 push 123.0175E8B0
013BC758 6A 04 push 4
013BC75A 6A 04 push 4
013BC75C 8D45 B0 lea eax,dword ptr ss:[ebp-50]
013BC75F 50 push eax
013BC760 C645 FC 0B mov byte ptr ss:[ebp-4],0B
013BC764 E8 2FFC6100 call 123.019DC398
013BC769 8B4D E0 mov ecx,dword ptr ss:[ebp-20]
013BC76C 897D FC mov dword ptr ss:[ebp-4],edi
013BC76F F0:0FC139 lock xadd dword ptr ds:[ecx],edi
013BC773 75 0C jnz short 123.013BC781
013BC775 8B55 E0 mov edx,dword ptr ss:[ebp-20]
013BC778 52 push edx
013BC779 E8 D2A95300 call 123.018F7150
013BC77E 83C4 04 add esp,4
013BC781 32C0 xor al,al
013BC783 8B4D F4 mov ecx,dword ptr ss:[ebp-C]
013BC786 64:890D 0000000>mov dword ptr fs:[0],ecx
013BC78D 5F pop edi
013BC78E 5E pop esi
013BC78F 5B pop ebx
013BC790 8BE5 mov esp,ebp
013BC792 5D pop ebp
013BC793 C3 retn
013BC794 6A FF push -1
013BC796 68 3C41B101 push 123.01B1413C ; ASCII "Inpaint"
013BC79B E8 B0CC5300 call 123.018F9450
013BC7A0 8945 DC mov dword ptr ss:[ebp-24],eax
013BC7A3 6A 00 push 0
013BC7A5 8D55 CC lea edx,dword ptr ss:[ebp-34]
013BC7A8 68 6C48B101 push 123.01B1486C ; ASCII "Enter the serial key"
013BC7AD 52 push edx
013BC7AE C745 FC 0000000>mov dword ptr ss:[ebp-4],0
013BC7B5 E8 A679FFFF call 123.013B4160
013BC7BA 8BF8 mov edi,eax
013BC7BC 6A 00 push 0
013BC7BE 8D45 D0 lea eax,dword ptr ss:[ebp-30]
013BC7C1 68 3427A901 push 123.01A92734 ; ASCII "No"
013BC7C6 50 push eax
013BC7C7 C645 FC 01 mov byte ptr ss:[ebp-4],1
013BC7CB E8 9079FFFF call 123.013B4160
013BC7D0 8BD8 mov ebx,eax
013BC7D2 6A 00 push 0
013BC7D4 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
013BC7D7 68 3027A901 push 123.01A92730 ; ASCII "Yes"
013BC7DC 51 push ecx
013BC7DD C645 FC 02 mov byte ptr ss:[ebp-4],2
013BC7E1 E8 7A79FFFF call 123.013B4160
013BC7E6 8945 C0 mov dword ptr ss:[ebp-40],eax
013BC7E9 6A 00 push 0
013BC7EB 8D55 D8 lea edx,dword ptr ss:[ebp-28]
013BC7EE 68 F851B101 push 123.01B151F8 ; this feature is available in registered version only.\nbuy it now?
013BC7F3 52 push edx
013BC7F4 C645 FC 03 mov byte ptr ss:[ebp-4],3
013BC7F8 E8 6379FFFF call 123.013B4160
013BC7FD 8B4D C0 mov ecx,dword ptr ss:[ebp-40]
013BC800 6A 01 push 1
013BC802 6A 00 push 0
013BC804 57 push edi
013BC805 53 push ebx
013BC806 51 push ecx
013BC807 50 push eax
013BC808 8D55 DC lea edx,dword ptr ss:[ebp-24]
013BC80B 52 push edx
013BC80C 56 push esi
将关键跳的jnz改为je就可以了。。。。。。
为什么不追码呢?第一:我的时间不够 第二:我技术不好,不会追 第三:我认为这可能没有码吧(高手勿喷)
好吧,这次就让大家来试试看能不能追码吧。。。。。
如果可以追码,那么谁最先追到,谁最先发,我就奖谁。。。。。
另外说说,我明天要考试了,做这篇帖就是为了放松放松,顺便交流一下,希望我考试能够取得好成绩。。
最后希望我的成绩能和大家的技术一起进步!
谢谢收看
|
免费评分
-
参与人数 2 | 热心值 +2 |
收起
理由
|
huc
| + 1 |
欢迎分析讨论交流,[吾爱破解论坛]有你更精. |
Chief
| + 1 |
欢迎分析讨论交流,[吾爱破解论坛]有你更精. |
查看全部评分
|