吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2191|回复: 6
收起左侧

[原创] 练习笔记之160Crackme-018、019

[复制链接]
xiaoyu2032 发表于 2022-5-29 23:11

160CM-018、019

  这期比较简单,直接二合一了。

1. 018

  018很简单,直接搜索字符串就能找到关键跳转位置,前后翻看一下就能找到明文密码:<BrD-SoB>
01.png

2. 019爆破

  019爆破也很简单,搜索字符串,根据字符串的内容就能定位到三个不同的弹窗提醒的位置,然后查看一下前面的跳转的位置,就能确定关键跳转在401642位置,nop掉就可以。
04.png

3. 019算法

  这道题算法也比较简单,找到关键跳转后,前面的一小段代码就是算法代码。IDA打开后,F5生成伪代码,将变量名修改一下,就可以得到下面的代码:
03.png
  其中有几个自定义函数,水平有限,IDA里面看不出来是什么功能,在OD里面动态跟踪一下就能基本确定是什么功能了。
  整理调试,最后得到注册算法代码如下:

#include "stdafx.h"
#include <Windows.h>
#include <stdio.h>

int _tmain(int argc, _TCHAR* argv[])
{
 char text1[50];
 unsigned long i,length,output,value;
 output = 0x81276345;
 printf("请输出text1:");
 scanf_s("%s",text1,50);
 length = strlen(text1);
 if (length >= 5)
 {
  for (i = 0; i < length; i++)
  {
   value = text1[i];               // 取第i个字母
   output += value;
   output ^= i << 8;
   output *= ~(i * length) * (i + 1);
  }
 }
 printf("注册码为:%lu",output);
 system("pause");
 return 0;
}

  这里需要稍微注意一下的是,整型计算的变量要定义成长整型,有无符号无所谓,但是最后打印输出字符串的时候要用无符号的格式%lu进行输出,否则得到的都是负数。注册码验证如下:
02.png

免费评分

参与人数 5吾爱币 +11 热心值 +5 收起 理由
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
z7138910 + 1 + 1 热心回复!
芽衣 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
woyucheng + 1 + 1 谢谢@Thanks!
为之奈何? + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
白鱼啊 发表于 2022-5-30 00:11
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| xiaoyu2032 发表于 2022-5-30 08:51
白鱼啊 发表于 2022-5-30 00:11
大佬你这个课程是吾爱官方里面的吗?

这个不是课程,这是从论坛下的一个打包好的160个crackme程序,自己尝试破解,写的一个笔记。当然,论坛里面已经有很多这些题的破解教程,破解前尽量不看。
iloveasdl 发表于 2022-5-30 09:03
z7138910 发表于 2022-5-30 21:54
感谢大佬分享,收藏学习下!
头像被屏蔽
白鱼啊 发表于 2022-5-30 23:42
提示: 作者被禁止或删除 内容自动屏蔽
huaxiaoron 发表于 2022-5-31 17:14
感谢大佬分享,学习下!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-25 02:17

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表