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

攻防世界-Reverse-re1

题目描述:菜鸡开始学习逆向工程,首先是最简单的题目

下载附件,执行程序,如下界面

1. 思路分析

没啥说的,既然题目都说是一道简单的逆向题,那么直接使用ida逆向即可,看逆向出的结果是否能写入到

2. 解题过程

2.1 逆向后找到main函数

代码意思很简单,将输入和v5.m128i_i8进行对比,二者相等即可

但是v5又是从xmmword_413E34加载的,我们看下这个是什么

 这个显然是一个16进制串,将其转换为字符串为:

提交该答案,发现答案错误。。。

网上找资料,发现这里存在一个大小端的知识点:汇编里面存储字符采用的是小端格式

也就是说需要先从后面的字符读取,那么逆序一下就是DUTCTF{We1c0met0

这么一看顺眼多了,但是明显感觉后面少了一截,不出意外,还是提交错误。。。

代码中未找到有效信息,但是看到xmmword_413E34后面跟着一个字符串

 转换一下试试

刚好是后半部分,将两部分拼接起来,就是最后的flag了:DUTCTF{We1c0met0DUTCTF}

总结: 这道题解题过程是一波三折,逆向暂时不说,这一步反而是最简单的,后面的关于按照小端存储的知识点(这个不了解不一定能解出来),还有就是后面那部分字符是真的不知道咋来的,代码中没有相应的拼接函数(有大佬懂得欢迎告知)

 

http://www.lryc.cn/news/96106.html

相关文章:

  • AES加密的基本常识和封装类
  • elasticsearch使用记录
  • UNI-APP_横屏切换竖屏出现样式混乱问题
  • 数据可视化(3)
  • AI面试官:MD5、DES、RSA、AES加密
  • Shell脚本学习-$$特殊变量
  • vscode中python插件过新导致无法正常debug问题解决安装vscode以前版本python插件教程
  • chrome macos编译
  • Linux环境下Elasticsearch相关软件安装
  • 【趟坑记录】d3.zoom()的正确使用姿势 @d3.v7
  • 基于 Docker + Nginx + Gitlab-runner 实现前端自动化部署流程
  • make/makefile的使用
  • Flutter中Navigator 跳转传参数和反向传参数
  • kettle开发-Day40-AI分流之case/switch
  • MySQL下载与安装
  • c++基础2
  • 虚拟机VMware,linux,centos,如何将项目部署到服务器上面
  • R语言 BPNN 反向传播神经网络
  • 回归预测 | MATLAB实现TCN-BiGRU时间卷积双向门控循环单元多输入单输出回归预测
  • Qt使用QPixmap类和QScreen类来实现简单截图功能
  • 【【51单片机LCD1602模块介绍】】
  • 【Nginx11】Nginx学习:HTTP核心模块(八)文件处理
  • STM32MP157驱动开发——按键驱动(休眠与唤醒)
  • 全面解析 SOCKS5 代理与 HTTP 代理的对比与应用
  • STM32 HEX文件和BIN文件格式区别keil中的配置与生成
  • RabbitMQ优先级队列的使用
  • MAC 推送证书不受信任
  • Gitee创建分支
  • 集群间ssh配置免密登录
  • YOLOV8改进:CVPR 2023 | SCConv: 即插即用的空间和通道重建卷积