首页
社区
课程
招聘
[旧帖] [求助]想破解一个软件.用od调试了一下,对弹出窗口下断后还是不行.请高手指点一下. 0.00雪花
发表于: 2009-5-17 21:50 9515

[旧帖] [求助]想破解一个软件.用od调试了一下,对弹出窗口下断后还是不行.请高手指点一下. 0.00雪花

2009-5-17 21:50
9515
想破解一个软件.已经脱壳.是vc编的,这个软件没有时间限制.运行的时候,会弹出没有注册的提示框,程序可以运行,只是功能有限制,必须要注册后才能使用所有功能.
软件会产生机器码,必须要输入用户名和对应的序列号才能使用所有功能.本人初学破解.只想把限制的功能给打开.想用暴力破解.希望大家给个思路.
用od调试了一下这个软件.根据提示框,搜索不到提示框里的一些语句.随便输入注册信息.在od里面也找不到.
希望高手指点.谢谢.

用getwindowtextA , GetDlgItemtextA不能下断,用MessageBoxW下断可以,总共有7处,下断后,程序运行还是会有弹出窗口,下断不成功.还是没有搞定..附上程序大家帮忙看看.

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (18)
雪    币: 104
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
在MessageBoxW 下断试试,当断下之后查看调用堆栈,一层一层向上直到看到你调试的那个程序的模块里面的地址。看看那个地址附近的判断,一般就是爆破的地方了。
2009-5-17 22:11
0
雪    币: 282
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
使用getwindowtextA , GetDlgItemtextA看看。
2009-5-17 22:15
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
发上来看看么
2009-5-18 14:02
0
雪    币: 188
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
程序已经传上来了
2009-5-18 19:25
0
雪    币: 188
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
里面是有MessageBoxW函数.但是下断后,程序还是会有弹出窗口.应该是下断不成功.没拦截到
2009-5-19 00:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
下其它的窗口断点试试
2009-5-19 08:55
0
雪    币: 188
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
还是搞不定呢,大家帮帮忙.
2009-5-22 20:56
0
雪    币: 452
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
9
程序是重启验证,下注册表的读取断点吧!
2009-5-22 21:58
0
雪    币: 204
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
返回地址: 0041DAAF  函数名称: RegOpenKeyExW(ADVAPI32.dll)
RegOpenKeyExW: 打开注册表中一个现有的项
          hKey=0x80000002 (HKEY_LOCAL_MACHINE)
          lpSubKey="SOFTWARE\Softown\TTS"
          ulOptions=0x00000000
          samDesired=0x00020019
          phkResult=0x0012F3B0
RegOpenKeyExW返回值: 0x00000000(NULL表示成功)
     
返回地址: 0041F2A9  函数名称: RegQueryValueExW(ADVAPI32.dll)
RegQueryValueExW: 获取注册表一个项的设置值
          hKey=0x000000AC
          lpValueName="sUserID"
          lpReserved=NULL
          lpType=0x0012EF5C
          lpBuffer=0x00000000
          nBuffer=0x0012EF64
          存入缓冲区中的数据: NULL
RegQueryValueExW返回值: 0x00000000(NULL表示成功)
     
返回地址: 0041F2F8  函数名称: RegQueryValueExW(ADVAPI32.dll)
RegQueryValueExW: 获取注册表一个项的设置值
          hKey=0x000000AC
          lpValueName="sUserID"
          lpReserved=NULL
          lpType=0x0012EF5C
          lpBuffer=0x00387048
          nBuffer=0x0012EF64
          存入缓冲区中的数据: ""
RegQueryValueExW返回值: 0x00000000(NULL表示成功)
     
返回地址: 0041F2A9  函数名称: RegQueryValueExW(ADVAPI32.dll)
RegQueryValueExW: 获取注册表一个项的设置值
          hKey=0x000000AC
          lpValueName="sSerialID"
          lpReserved=NULL
          lpType=0x0012EF5C
          lpBuffer=0x00000000
          nBuffer=0x0012EF64
          存入缓冲区中的数据: NULL
RegQueryValueExW返回值: 0x00000000(NULL表示成功)
     
返回地址: 0041F2F8  函数名称: RegQueryValueExW(ADVAPI32.dll)
RegQueryValueExW: 获取注册表一个项的设置值
          hKey=0x000000AC
          lpValueName="sSerialID"
          lpReserved=NULL
          lpType=0x0012EF5C
          lpBuffer=0x003870D8
          nBuffer=0x0012EF64
          存入缓冲区中的数据: ""
RegQueryValueExW返回值: 0x00000000(NULL表示成功)
     
返回地址: 005CFBE8  函数名称: GetSystemInfo(KERNEL32.dll)
GetSystemInfo: 在一个SYSTEM_INFO结构中载入与底层硬件平台有关的信息
          lpSystemInfo=0x0012F388
GetSystemInfo返回值: 0x00040000
     
返回地址: 005CFD6B  函数名称: GlobalMemoryStatus(KERNEL32.dll)
GlobalMemoryStatus返回值: 0x7FFFFFFF
     
返回地址: 005CFA52  函数名称: GetVolumeInformationW(KERNEL32.dll)
GetVolumeInformationW: 获取与一个磁盘卷有关的信息
          lpRootPathName=0x00439DC8
          lpVolumeNameBuffer=0x00000000
          nVolumeNameSize=0x00000000
          lpVolumeSerialNumber=0x0012F400
          lpMaximumComponentLength=0x00000000
          lpFileSystemFlags=0x00000000
          lpFileSystemNameBuffer=0x00000000
          nFileSystemNameSize=0x00000000
GetVolumeInformationW返回值: 0x00000001
     
返回地址: 005CFB6B  函数名称: lstrlenW(KERNEL32.dll)
lstrlenW: 获取字符串的长度
          lpString="TTS 0-586=15-4096=772-65536"
lstrlenW返回值: 0x0000001B(字符串长度)
     
返回地址: 0041FFE6  函数名称: WideCharToMultiByte(KERNEL32.dll)
WideCharToMultiByte: 宽字符串转为单字符串
          CodePage=0x00000000
          Options=0x00000000
          WideCharStr="TTS 0-586=15-4096=772-65536"
          WideCharCount=0xFFFFFFFF
          lpszBuffer=0x0012EF34
          MultiByteByte=0x00000038
          pDefaultChar=0x00000000
          pDefaultCharUsed=0x00000000
WideCharToMultiByte返回值: 0x0000001C(字符长度)
     
返回地址: 005CF80E  函数名称: lstrlenW(KERNEL32.dll)
lstrlenW: 获取字符串的长度
          lpString="TTS 0-586=15-4096=772-65536"
lstrlenW返回值: 0x0000001B(字符串长度)
     
返回地址: 0041FFE6  函数名称: WideCharToMultiByte(KERNEL32.dll)
WideCharToMultiByte: 宽字符串转为单字符串
          CodePage=0x00000000
          Options=0x00000000
          WideCharStr="TTS 0-586=15-4096=772-65536"
          WideCharCount=0xFFFFFFFF
          lpszBuffer=0x0012EEFC
          MultiByteByte=0x00000038
          pDefaultChar=0x00000000
          pDefaultCharUsed=0x00000000
WideCharToMultiByte返回值: 0x0000001C(字符长度)
     
返回地址: 0041D79D  函数名称: RegCloseKey(ADVAPI32.dll)
RegCloseKey: 关闭系统注册表中的一个项或键
          hKey=0x000000AC
RegCloseKey返回值: 0x00000000(NULL表示成功)
2009-5-23 08:08
0
雪    币: 188
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
非常感谢楼上的回复。
2009-6-26 22:06
0
雪    币: 219
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
楼主解决了吗 我调试了两天 愣是没找到注册码 求楼主和高手们贴出答案
2009-6-30 14:27
0
雪    币: 59
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
我也打开看了,不懂。
2009-6-30 21:58
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
EXE被VMP过。够楼主忙的了。
2009-7-1 10:20
0
雪    币: 59
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
配合REG一起使用,欺骗程式?
2009-7-1 10:44
0
雪    币: 219
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
14楼的高手可否介绍下 exe的VMP,期待你的指点迷津
2009-7-1 11:25
0
雪    币: 290
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
自己搜下吧,论坛里应该有教程的
2009-7-1 11:35
0
雪    币: 219
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
兄弟们不要气馁 搞了好几天,多亏楼上兄弟提醒才发现这个软件用vmprotect加壳的,晕死
破不出来 不足为奇,继续学习
2009-7-1 16:08
0
雪    币: 188
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
没有解决。难度大阿
2009-7-11 13:21
0
游客
登录 | 注册 方可回帖
返回
//