简单爆破超级便笺本 V2.67
【破文标题】简单爆破超级便笺本 V2.67【破文作者】﹎o錯.`覺℡(bsuc)
【作者邮箱】[email protected]
【作者主页】
【破解工具】ollydbg DIE0.63LordPE Import
【破解平台】winxpsp2
【软件名称】超级便笺本 V2.67
【软件大小】965
【原版下载】http://www4.skycn.com/soft/24583.html
【保护方式】注册名+注册码
【软件简介】 超级便笺本是一款实用的桌面便笺软件,用于办公时代替纸和笔随时记下您需要的一些数字、计划等,可充当您的备忘录。所有文本均加密保存,是您书写电子便笺的好帮手。
【破解声明】菜鸟学习之路,给自己做个留念,错误之处请老大们多多指教。
------------------------------------------------------------------------
【破解过程】第一步:
安装试运行,呵呵不用说吧,(多点字,都是废话)。主要是看下什么注册方式,安装启动后标题显示未注册 ,右键有注册项,打开随便输入一个假名和假码 bsuc55667788,点注册程序提示“请重新运行程序”呵呵重启验证,好现到这里。
第二步:
PEIDV094 查壳 ASPack 2.12 -> Alexey Solodovnikov呵呵简单的壳,ESP定律脱之,需要说明的是DUMP程序的工具不同效果也不一样,我用的这个版本的OD自带的直接可以运行,为了进步学习修复(呵呵别笑我还真是第一次修复程序,这个也算我第一个破文吧,别吐我啊。。怕怕。。。),我用LordPE Deluxe 增强版 DUMP了一个,结果不能运行,用Import 修复IAT 后成功运行。下面我简单说下脱壳步骤。
005AD001 >60 PUSHAD ; 带壳程序入口点
005AD002 E8 03000000 CALL Notepape.005AD00A ; F7 一步ESP出现 0012FFA4变红
005AD007- E9 EB045D45 JMP 45B7D4F7
选择0012FFA4 右键“在数据窗口中跟随”内存窗口下硬件断点,F9一次来到
005AD3B0 /75 08 JNZ SHORT Notepape.005AD3BA 停在这,F7直接下
005AD3B2 |B8 01000000 MOV EAX,1
005AD3B7 |C2 0C00 RETN 0C
005AD3BA \68 B01D5000 PUSH Notepape.00501DB0
005AD3BF C3 RETN 到这一个跳转直达OEP
接下来就可以Dump了,呵呵想了想还是别些那些了啰嗦,现在这个壳脱壳机很多也很好用,我其实在做无用功哦。
第三步:
脱壳完毕后我们用 OD载入脱壳后的程序,想想前面,我们发现了他是重启验证的,哪么他把注册码藏那里了呢 ?呵呵,现查找下注册表吧,开始 - 运行- regedit-编辑-查找 输入我们刚才写的假码 55667788,呵呵真的在这里,手气不错。
名称 类型 数据
RegNo REG_SZ 55667788
RegUser REG_SZ bsuc
好,我们就复制 RegNo 他吧。
1、右键 > 超级字符串参考 > 查找ASCII
2、在超级字符串参考里CTRL+F 查找 RegNo ,可以查到两个,经分析第一个也就是和“提示”挨着的那个是我们输入注册码时的,我们用不着。直接在第二个也就是“未购买用户|上面那个,回车返回反汇编区 F2下断。
3、F9运行程序
005009C0|.E8 8B3AF0FF CALL 1.00404450
005009C5|.8D4D F8 LEA ECX,DWORD PTR SS:
005009C8|.BA 900B5000 MOV EDX,1.00500B90 ;RegNo这里断下来了 F7给下走
005009CD|.8BC3 MOV EAX,EBX
005009CF|.E8 98D9F6FF CALL 1.0046E36C ;F8先过
005009D4|.8B45 F8 MOV EAX,DWORD PTR SS: ;EAX出现假码
005009D7|.50 PUSH EAX
005009D8|.8D4D F4 LEA ECX,DWORD PTR SS:
005009DB|.BA A00B5000 MOV EDX,1.00500BA0 ;notepaperChina
005009E0|.A1 34755000 MOV EAX,DWORD PTR DS:
005009E5|.E8 B2F8FCFF CALL 1.004D029C
005009EA|.8B55 F4 MOV EDX,DWORD PTR SS:
005009ED|.58 POP EAX ;真的注册码出现在寄存器EDX
005009EE|.E8 053EF0FF CALL 1.004047F8
005009F3|.75 07 JNZ SHORT 1.005009FC
005009F5|.C605 30755000>MOV BYTE PTR DS:,1
005009FC|>8BC3 MOV EAX,EBX
005009FE|.E8 512CF0FF CALL 1.00403654
00500A03|.803D 30755000>CMP BYTE PTR DS:,0
00500A0A 75 2B JNZ SHORT 1.00500A37 ;关键跳,改为JZ 任意注册码成功
00500A0C|.8D55 F0 LEA EDX,DWORD PTR SS:
00500A0F|.A1 4C555000 MOV EAX,DWORD PTR DS:
00500A14|.8B00 MOV EAX,DWORD PTR DS:
00500A16|.E8 A16CF6FF CALL 1.004676BC
00500A1B|.8D45 F0 LEA EAX,DWORD PTR SS:
00500A1E|.BA B80B5000 MOV EDX,1.00500BB8 ; - 未购买用户
00500A23|.E8 943CF0FF CALL 1.004046BC
00500A28|.8B55 F0 MOV EDX,DWORD PTR SS:
00500A2B|.A1 4C555000 MOV EAX,DWORD PTR DS:
我改了这里 未注册的提示就没了,因为没看出注册和不注册有什么不同,所以功能测试不出来。
另外005009ED|.58 POP EAX 这里寄存器里的就是真码,呵呵,算法没分析,(说实话也不太会,上面分析的估计还不对呢,有意见可以提,但别打啊,怕怕。。。呵呵)
------------------------------------------------------------------------
【破解总结】哎咋说呢,刚学好容易找个软柿子捏下,请大家多多请教,偶的 QQ:240691 ,令对软件作者表示歉意,只出于学习无其他意思。感谢原来做教程的大侠们的无私奉献,让我们菜鸟有的可看可学。
最后我内存注册机怎么也做不出来,我就郁闷了,因为多个地址出现真码,我测试了几个,但是注册机都不能把真码返回来,请大侠们指教指教,谢谢。
下午又看了幾位大俠的文章,終於把注冊機搞出來了現在附上。
------------------------------------------------------------------------
【版权声明】
[ 本帖最后由 bsuc 于 2008-2-27 15:48 编辑 ] 很不错呀~ 怎么没人支持? ~!
楼主 学习了~~呵呵 强啊~~~LZ真是有才呀~~ 顶!支持!! 下载了``我现在还不太会脱壳呢,试着学习一下理论和方法~~~~~只会一点爆破~~ 这已经不是爆破了呵呵
不知道 bp RegCreateKeyExA 可以成功么 这个是追码啊,应该可以找标志位,进行爆破吧。 内存注册机
中断基址 5009EE
中断次数 1
第一字节 E8
指令长度 5
内存-------寄存器----EDX
[ 本帖最后由 zhangqqshuo 于 2008-2-28 13:26 编辑 ] 学习啦 哈哈 pyg 哈哈 /:001 做出来咯
页:
[1]