i2umi 发表于 2024-1-29 12:59

新人的一次破解steam上的Soundp*d demo使用次数限制的尝试

本帖最后由 i2umi 于 2024-7-19 19:32 编辑

新人第一次发帖,如有不对的地方请大家指出。

使用软件时发现Soudp*d Demo能够使用正式版的主要功能,但是具有次数限制,只能使用10次,达到上限后需要重启程序。


猜测程序可能使用一个全局flag来控制软件限制,通过整数变量来计数。

然后丢进DIE进行分析,发现无壳。



启动软件,直接上CE,搜索四字节;

猜测可能是反向计数,使用使用未知初始值搜索,也找到了一个内存地址(发现从11计数到1,然后继续使用功能,功能无法使用但此值仍然在减少,这可能是个bug我猜):

尝试修改该值,再使用功能,发现值变了回去,看看是什么访问了这个内存:


接着选择第二个mov指令,点击显示反汇编,再使用x64dbg定位到对应汇编指令地址:

关键可能是在这个r8d寄存器那里,
查看rbx+54 和 r8d,发现这两个值貌似不会相等,这个跳转没有用,直接nop掉。

仔细分析汇编代码注意到了dword ptr ds:,这里的值在前面会赋给r8d,然后r8d再赋值给rbx+54,接着的值赋值给了ecx,后面紧跟一个以ecx自减和条件跳转,这个也许就是破局的关键:


试试强制跳转,即把这个强制跳转变为:


测试发现使用其功能的限制解除了,即破解成功。

然后使用使用x64dbg修改程序,保存,至此,破解结束。

文件就不贴了,steam上可以直接下载。

Hmily 发表于 2024-2-5 14:46

x64dbg比ida保存文件方便,不用来回切换了。

horrah 发表于 2024-1-31 09:54

牛啊牛啊{:1_899:}

kookook 发表于 2024-1-30 20:04

思路不错,感谢分享!

lat599 发表于 2024-1-30 14:26

牛想学习一下

reignobe 发表于 2024-1-30 11:26

非常好,续上了

waimenlu 发表于 2024-1-30 09:40

支持一下,{:1_893:}

yyb1813 发表于 2024-1-30 16:16

gzl5755 发表于 2024-1-30 11:14

这个得支持一下{:1_927:}

MilkwoodTree 发表于 2024-1-30 14:09

感谢分享,学习一下

Aa100200800 发表于 2024-1-30 15:55

有没有破解辅助加壳的大神在线呀,求支援

Kalitec 发表于 2024-1-30 16:19

感谢分享!
页: [1] 2 3
查看完整版本: 新人的一次破解steam上的Soundp*d demo使用次数限制的尝试