记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

CrackMe-001 Acid burn.exe 全过程分析

2021-09-14 21:44

扫一扫关注公众号,长期致力于安全研究

前言:最近找了一套CrackMe来玩



0x01 前期

打开之后就是一个类似于注册页面,错误就显示Sorry



0x02 动态调试

根据搜索关键字符串直接定位


之后往函数开始处进行分析,分析了一下是对输入的密码进行各种左移,相加相减


分析半天,发现一个cmp,前面做的感觉毫无用处,该处cmp检测用户输入的长度是否大于4


继续往下走之后,首先进行了几个字符的拼接,继续通过堆栈发现,99%确定了当前这个call就是判断用户是否输入正确的密码

(注:这里本人没有输入密码,堆栈中是不正确的)


因为如果输入不匹配,则会通过jnz指令跳转到Messagebox


成功完事,收拾收拾下班


0x03 补丁编写

逆了半天,感觉太不方便了,其实完完全全可以将目标指向jnz指令处

将jnz nop掉即可

接下来写一个简单的内存补丁即可

  int PID = 0;  char buf[] = { 0x90, 0x90 };  printf("请输入进程ID:");  scanf("%d",&PID);  HANDLE h = OpenProcess(PROCESS_ALL_ACCESS,TRUE,PID);  if (WriteProcessMemory(h, (LPVOID)0x0042FB03, buf, sizeof(buf), NULL)){    MessageBox(NULL, L"打入补丁成功", L"打入补丁成功", NULL);  }  else{    MessageBox(NULL, L"Error", L"Error", NULL);  }
  这下方便了,直接就成功了



11111
微信搜索关注 "安全族" 长期致力于安全研究


下方扫一下扫,即可关注







知识来源: https://mp.weixin.qq.com/s?__biz=Mzg2NjU0MjA0Ng==&mid=2247485203&idx=1&sn=8c96554daa91127e6e8b8ac53a7e3b8e

阅读:3092 | 评论:0 | 标签:分析

想收藏或者和大家分享这篇好文章→复制链接地址

“CrackMe-001 Acid burn.exe 全过程分析”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

永久免费持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

求赞助求支持💖

标签云