新160个crackme - 030-Acid Bytes.4

运行分析

在这里插入图片描述

  • 需要破解Name和Serial

PE分析

在这里插入图片描述

  • upx壳,32位

在这里插入图片描述

  • linux系统upx -d 脱壳
    在这里插入图片描述
  • 脱壳后发现是Delphi程序

静态分析&动态调试

在这里插入图片描述

  • ida搜索字符串,找到Your Name must be at least 6 Chars long !,双击进入

在这里插入图片描述

  • 发现地址为红色,即函数未定义

在这里插入图片描述

  • 选中00457BAC(函数头)- 00457E96(函数尾),按下P创建函数

在这里插入图片描述

  • 先静态分析,函数较多

  • 119行下断点动调,发现还需要得到dword_45B840的值

在这里插入图片描述

  • 在53行处下断点,发现dword_45B840 = Name[0]*2 + Name[1]*2 +…+Name[5]*2,也就是Name前6位的值相加乘2

算法分析

Name = 'concealbear'

dword_45B840 = 0
for i in range(0,6):
    dword_45B840 += ord(Name[i]) * 2

Serial = str(2 * len(Name) + dword_45B840)

print(Name + "的Serial为:\n" +Serial)

在这里插入图片描述
在这里插入图片描述

  • 验证成功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值