好友
阅读权限10
听众
最后登录1970-1-1
|
一、声明:本教程仅供研究学习,请在24小时之内删除相关软件、忘记相关内容。(以上例行公事)求各位大神指点一二,小弟刚刚接手逆向。还有不足之处望各位大神海涵。
二、环境说明
操作系统:Winxp虚拟机
使用工具: peid、OD
2.目标程序:链接: http://pan.baidu.com/s/1c25r7mK 密码: uybk
3:破解过程:首先peid查壳
经过查找时vb编写的程序。不需要脱壳处理。
其次OD载入
先运行查看一下套路是什么。OD界面F9运行,
随便输入密码666666666,然后检查口令
那么先把这个弄掉。OD重新载入。
中文搜索引擎→智能搜索。
左键双击请插入正确光盘
0072B5D5 . C745 84 03000>mov dword ptr ss:[ebp-0x7C],0x3
0072B5DC . FF15 18104000 call dword ptr ds:[<&MSVBVM60.__vbaVarMove>] ; msvbvm60.__vbaVarMove
0072B5E2 . 57 push edi ; 悬挂运输.00635558
0072B5E3 . E8 402AD5FF call 悬挂运输.0047E028
0072B5E8 . 8BF8 mov edi,eax
0072B5EA . FF15 38104000 call dword ptr ds:[<&MSVBVM60.__vbaSetSystemError>] ; msvbvm60.__vbaSetSystemError
0072B5F0 . 81FF 12D40300 cmp edi,0x3D412 我猜测这里是比较
0072B5F6 . BB 04000280 mov ebx,0x80020004
0072B5FB . 74 66 je short 悬挂运输.0072B663 在这边应该是比较后的跳转。因为没光盘所以打算爆破掉它。je改成jnp,没有光盘才跳。
0072B5FD . BF 0A000000 mov edi,0xA
0072B602 . 8D55 84 lea edx,dword ptr ss:[ebp-0x7C]
0072B605 . 8D4D C4 lea ecx,dword ptr ss:[ebp-0x3C]
0072B608 . 895D 9C mov dword ptr ss:[ebp-0x64],ebx
0072B60B . 897D 94 mov dword ptr ss:[ebp-0x6C],edi ; 悬挂运输.00635558
0072B60E . 895D AC mov dword ptr ss:[ebp-0x54],ebx
0072B611 . 897D A4 mov dword ptr ss:[ebp-0x5C],edi ; 悬挂运输.00635558
0072B614 . 895D BC mov dword ptr ss:[ebp-0x44],ebx
0072B617 . 897D B4 mov dword ptr ss:[ebp-0x4C],edi ; 悬挂运输.00635558
0072B61A . C745 8C 70E04>mov dword ptr ss:[ebp-0x74],悬挂运输.0047E070 ; 请插入正确的光盘
0072B621 . C745 84 08000>mov dword ptr ss:[ebp-0x7C],0x8
0072B628 . FF15 14114000 call dword ptr ds:[<&MSVBVM60.__vbaVarDup>] ; msvbvm60.__vbaVarDup
0072B62E . 8D55 94 lea edx,dword ptr ss:[ebp-0x6C]
0072B631 . 8D45 A4 lea eax,dword ptr ss:[ebp-0x5C]
复制到可执行文件
od载入新的执行文件,输密码666666666后出现
中文搜索引擎→智能搜索。
左键双击口令不对
到达这里
0072B6B9 . 52 push edx ; /var18 = ntdll.KiFastSystemCallRet
0072B6BA . 50 push eax ; |var28 = NULL
0072B6BB . C745 D8 00000>mov dword ptr ss:[ebp-0x28],0x0 ; |
0072B6C2 . C745 C4 08800>mov dword ptr ss:[ebp-0x3C],0x8008 ; |
0072B6C9 . FF15 84104000 call dword ptr ds:[<&MSVBVM60.__vbaVarTstEq>] ; \__vbaVarTstEq 这里是口令的比较
0072B6CF . 8D4D D4 lea ecx,dword ptr ss:[ebp-0x2C]
0072B6D2 . 8985 44FFFFFF mov dword ptr ss:[ebp-0xBC],eax
0072B6D8 . FF15 40114000 call dword ptr ds:[<&MSVBVM60.__vbaFreeObj>] ; msvbvm60.__vbaFreeObj
0072B6DE . 8D4D C4 lea ecx,dword ptr ss:[ebp-0x3C]
0072B6E1 . FF15 1C104000 call dword ptr ds:[<&MSVBVM60.__vbaFreeVar>] ; msvbvm60.__vbaFreeVar
0072B6E7 . 66:83BD 44FFF>cmp word ptr ss:[ebp-0xBC],0x0
0072B6EF . 74 3A je short 悬挂运输.0072B72B 这里跳向错误口令的弹出对话框 je改为jne即可爆破
0072B6F1 . 8B0E mov ecx,dword ptr ds:[esi]
0072B6F3 . 56 push esi
0072B6F4 . FF91 08030000 call dword ptr ds:[ecx+0x308] ; 悬挂运输.0065006C
0072B6FA . 8D55 D4 lea edx,dword ptr ss:[ebp-0x2C]
0072B6FD . 50 push eax
0072B6FE . 52 push edx ; ntdll.KiFastSystemCallRet
0072B6FF . FF15 4C104000 call dword ptr ds:[<&MSVBVM60.__vbaObjSet>] ; msvbvm60.__vbaObjSet
0072B705 . 8BF0 mov esi,eax
0072B707 . 6A FF push -0x1
0072B709 . 56 push esi
0072B70A . 8B06 mov eax,dword ptr ds:[esi]
0072B70C . FF90 9C000000 call dword ptr ds:[eax+0x9C]
0072B712 . 85C0 test eax,eax
0072B714 . DBE2 fclex
0072B716 . 0F8D A7000000 jge 悬挂运输.0072B7C3
0072B71C . 68 9C000000 push 0x9C
0072B721 . 68 84E04700 push 悬挂运输.0047E084
0072B726 . E9 90000000 jmp 悬挂运输.0072B7BB
0072B72B > 8D55 84 lea edx,dword ptr ss:[ebp-0x7C]
0072B72E . 8D4D C4 lea ecx,dword ptr ss:[ebp-0x3C]
0072B731 . 895D 9C mov dword ptr ss:[ebp-0x64],ebx
0072B734 . 897D 94 mov dword ptr ss:[ebp-0x6C],edi ; 悬挂运输.006922F8
0072B737 . 895D AC mov dword ptr ss:[ebp-0x54],ebx
0072B73A . 897D A4 mov dword ptr ss:[ebp-0x5C],edi ; 悬挂运输.006922F8
0072B73D . 895D BC mov dword ptr ss:[ebp-0x44],ebx
0072B740 . 897D B4 mov dword ptr ss:[ebp-0x4C],edi ; 悬挂运输.006922F8
0072B743 . C745 8C 98E04>mov dword ptr ss:[ebp-0x74],悬挂运输.0047E098 ; 口令不对,要求重新输入
0072B74A . C745 84 08000>mov dword ptr ss:[ebp-0x7C],0x8
0072B751 . FF15 14114000 call dword ptr ds:[<&MSVBVM60.__vbaVarDup>] ; msvbvm60.__vbaVarD
复制到可执行文件→选择→保存文件
OK破解成功。 |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|