当前位置: 首页 > news >正文

新160个crackme - 051-Keygenning4newbies

运行分析

在这里插入图片描述

  • 需要破解Name和Serial

PE分析

在这里插入图片描述

  • C++程序,32位,无壳

静态分析&动态调试

在这里插入图片描述

  • ida找到关键字符串,双击进入函数

在这里插入图片描述

  • 静态分析得到以下结论:
  • 1、Name长度要大于4,小于50
  • 2、v5 += Name[i] ^ (i + 1)
  • 3、v7 = 最后一个Name[i] ^ (i + 1)
  • 4、Serial = (v5<<7) + 6* v7 的16进制

算法分析

Name = 'concealbear'v5 = 0
for i in range(len(Name)):v7 = (i + 1) ^ ord(Name[i])v5 += v7Serial = hex((v5 << 7) + 6 * v7)[2:].upper()print(Name + '的Serial为:\n' + Serial)

在这里插入图片描述

在这里插入图片描述

  • 验证成功

http://www.mrgr.cn/news/22058.html

相关文章:

  • 大量数据相似度加速计算
  • 【Spring基础1】- Spring 启示录-理解IoC控制反转
  • NX Unigraphics发展简史及下载
  • 使用ChatGPT润色论文的10大分步技巧,效果立竿见影
  • FreeRTOS内部机制学习02(消息队列深度学习)
  • RLVF:避免过度泛化地从口头反馈中学习
  • 如何打造高效办公楼物业管理系统?Java SpringBoot+Vue架构详解,实现智能化管理,提升工作效率
  • 解决虚拟机,指定的虚拟磁盘需要进行修复 打不开磁盘
  • Docker 的安装和使用
  • 串口通信协议(UART)
  • 一份热乎的数据分析(数仓)面试题 | 每天一点点,收获不止一点
  • 3280. 将日期转换为二进制表示
  • ROS - C++实现RosBag包录制
  • 【LeetCode热题100】前缀和
  • JVM 调优篇2 jvm的内存结构
  • 【Hot100】LeetCode—55. 跳跃游戏
  • 起点中文网防止网页调试的代码展示
  • 基于人工智能的手写数字识别系统
  • 【实习】C++方向面试经验3
  • 文件系统(文件描述符fd 重定向原理 缓冲区 stderr)