新160Crackme(1)——abexcms5

65 阅读2分钟

image.png 将程序通过X64Dbg打开,可以看到程序的二进制汇编代码

image.png 常规搜索字符串,可以看到在弹框中出现的两个字符串

image.png

image.png 进入到字符串所在位置,即可进入程序的核心代码

image.png 可以看到一个比较跳转逻辑

cmp eax 0
je abexcm5.401117

也就是说通过此处的判断,可以改变程序的跳转方向,那我如果我们需要爆破该程序,只需要在此处改变此处汇编代码,将je改为jmp

image.png

image.png 当然也可以在程序运行到此处的时候,修改eax的值,同样可以进行爆破

如果想要对该程序进行分析,则需要分析跳转逻辑之前的代码

image.png 在上方,存在GetDlgItemTextA,是一个获取会话窗输入的函数,可以从此处开始打断点,下方有一个GetVolumeInformation函数,该函数会获取与指定根目录关联的文件系统和卷的相关信息,不过这个不重要,应为运行到此处的时候,可以在右侧看到获取到的值,不同的电脑应该是不一样的

image.png 接下来是一个字符串拼接 lstrcatA,可以看到拼接结果 L7c Pro4562-ABEX

image.png 继续往下,则会进入一个循环,大致作用就是将前四位都 +1 循环两次,可以在下方看到对应操作后的值

我这边的最后结果是N9E“Pro4562-ABEX

然后则又是一个字符串拼接

image.png 其实从这里就可以看到完整的序列 L2c-5781N9E"Pro4562-ABEX测试一下,测试成功 image-20250726075830864

image.png 所以该程序的整体算法就是,获取到盘符字符串,然后将字符串的前四位执行 +2操作,最后与指定的两个字符串进行前后拼接即可