001/160 CrackMe Acid burn

Nag

以前没注意还有个 Nag 需要去掉,就是这个
在这里插入图片描述
现在补一下:
出现 Nag 窗口时暂停,查看堆栈,定位到 0x0042A1A9 下断点并重新运行
在这里插入图片描述
程序刚好断在这里,带参数一起 nop 掉即可
在这里插入图片描述

  • 右键-二进制-使用 nop 填充
  • 右键-复制到可执行文件
  • 右键-保存文件
    在这里插入图片描述
    运行保存出来的文件发现 Nag 已经去除。

Name Serial

先随便输入点东西试试
在这里插入图片描述
直接搜索字符串发现有2个,进入打上断点
在这里插入图片描述
程序在第二个断点处停下
堆栈中有一个疑似注册码的东西
在这里插入图片描述
直接粘贴进去验证通过
在这里插入图片描述

Serial

和之前的操作相同,都是搜索字符串下断点
序列号都是明文比较,直接就可以看到
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Name Serial 算法分析

虽然可以看到序列号,或者更暴力一点把跳转 nop 掉,但是那样就不好玩了,所以还是研究研究算法吧,用 IDA 分析简单一些
在这里插入图片描述
C语言写的简易注册机:
注意:username 必须使用 unsigned char,否则中文用户名会出错

#include <stdio.h>

int main()
{
	unsigned char username[200];
	int id;
	scanf("%s",username);
	id=41*username[0]*2;
	printf("CW-%d-CRACKED",id);
	return 0;
}

注册效果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值