新160个crackme - 082-phox.1
运行分析
- 提示去除NAG
- 需要破解Name和Serial
PE分析
- C++程序,32位,无壳
去除NAG
- 使用暂停法,x32dbg运行程序至弹窗,点击暂停按钮,找到右下角堆栈窗口中主程序0x4012BD地址,按回车键
- 发现messagebox函数,直接NOP
- 点击视图 -> 补丁文件 -> 修补文件 -> 保存为1.exe
- 再次运行软件,发现NAG已去除
静态分析&动态调试
- ida搜索字符串,双击进入关键函数
- 动调分析关键函数,逻辑如下:
- 1、Name转大写,进行计算得到Msga
- 2、若Msga = Serial + 20,则返回成功
算法分析
Name = 'concealbear'
def sub_401419(s):
s = s.upper()
return ((ord(s[0]) * len(s)) << 12) + 234254
Msga = sub_401419(Name)
Serial = str(Msga - 20)
print(Name + '的Serial为:\n' + Serial)
- 验证成功