新160个crackme - 099-figugegl.2b

运行分析

在这里插入图片描述

  • 需破解Name和Serial

PE分析

在这里插入图片描述

  • LCC win32程序,32位,无壳

静态分析&动态调试

在这里插入图片描述

  • ida搜索字符串,进入figugeg1所在位置

在这里插入图片描述

  • 函数名处按x,返回上一层

在这里插入图片描述

  • 发现可疑函数sub_401367,双击进入

在这里插入图片描述

  • 来到关键函数处,静态分析逻辑如下:
  • 1、获取Name和Serial,Name长度需大于7
  • 2、提取Name每一位进行计算,得到新Name
  • 3、判断Serial倒序和Name是否相等,相等则返回成功

算法分析

  • 假设Name和Serial长度相等
Name = 'concealbear'

Serial_len = len(Name)
Name_encode = [0] * len(Name)
for i in range(len(Name)):
    Name_encode[i] = (i ^ Serial_len) + (i ^ ord(Name[i]));
    if (Name_encode[i] < 0x20):
        Name_encode[i] += 32;
    if (Name_encode[i] >= 0x80):
        Name_encode[i] = 32;

Serial = ("".join(["".join([chr(i)for i in Name_encode[::-1]])]))

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

在这里插入图片描述

在这里插入图片描述

  • 验证成功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值