首页
社区
课程
招聘
[原创]菜鸟搞vb软件启动密码(高手勿笑)
发表于: 2005-1-9 20:07 4052

[原创]菜鸟搞vb软件启动密码(高手勿笑)

2005-1-9 20:07
4052
今天外面冷死了,屋里杯中的水都卡都快洁冰了,但了了心情特别好,应朋友之邀搞定个课件软件。这个vb的东东终于给搞开了。^.^好了,圆规正传,把这个过程拿来与我等菜鸟分享一下!`大鸟就不要笑了。
   软件名称:某课件软件(名字就不说了吧)
   软件语言:vb5
   使用工具:ollydbg+hiew

   软件正常运行后出来个密码框,让你输入密码,输错后程序直接退出,不做任何提示。  由于输完密码确认后,直接退出,所以很难直接用winhex试着看能不能直接找到名码。用wasm打开全是乱麻。了了对vb也是相当的的不熟悉,所以一下子找不找边了。 想了想,还是想先不让软件每次都自动退出。接着想啊想!~……

   搜索MSVBVM60.__vbaEnd,找见了

00405E03    .  83C4 0C    add esp,0C
00405E06    .  81FF D2070>cmp edi,7D2
00405E0C       74 06      je short GetPassA.00405E14     //不会退出
00405E0E    .  FF15 20104>call dword ptr ds:[<&MSVBVM60.__vbaE>;  MSVBVM60.__vbaEnd                            //bye  !~只有领来一次~
00405E14    >  8B16       mov edx,dword ptr ds:[esi]
00405E16    .  56         push esi

  在00405E06处下断,测试发现焦点就在这里,程序读出来的edi是7D5(2005),不相等就会退出,现改掉00405E0C处,jne……,  接着试着输入错误的“lele”,接着执行,还好,密码错误后还有提示了。

00405E49    .  57         push edi      //1pl0
00405E4A    .  50         push eax      //lele
00405E4B    .  FF15 3C104>call dword ptr ds:[<&MSVBVM60.__vbaH>;  MSVBVM60.__vbaHresultCheckObj
00405E51    >  8B45 E4    mov eax,dword ptr ss:[ebp-1C]
00405E54    .  8B4E 3C    mov ecx,dword ptr ds:[esi+3C]
00405E57    .  50         push eax
00405E58    .  51         push ecx

   上面看见了一个鲜明的对比,

00405FB9    .  6A 10      push 10
00405FBB    .  50         push eax
00405FBC    .  FF15 4C104>call dword ptr ds:[<&MSVBVM60.#595>] ;  MSVBVM60.rtcMsgBox           //错误提示
00405FC2    .  8D4D A0    lea ecx,dword ptr ss:[ebp-60]

  直道出现"错误"的提示框。

   呵呵,基本上密码也看见了,再来一次,‘1p10’,ok,正式进入了软件的界面,一切顺利。

    搞这个东东,听其来却是简单,关键是刚才是的自动关闭,不报错,让我发愁的。呵呵,只要好好努力,总会有结果的。

    第一次写文章,大家勿笑!~

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有启发了!我也碰到好多软件,不报错的...直接就关闭了,没头绪.这招不错!不知道DELhpi是什么函数来关闭的..
2005-1-10 23:56
0
雪    币: 260
活跃值: (81)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
‘1p10’ 是怎么找到的?
还有错别字。“直道出现错误的提示框。“
2005-1-11 00:16
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
原文里的不是错别字,开始没带引号,让大家产生误会了;就是输入错误的密码,软件报错的对话框。呵呵~~~~
2005-1-11 01:15
0
游客
登录 | 注册 方可回帖
返回
//