首先还是下载附件,这次是一个exe文件,先打开看一下

发现这是一个依次输入数字然后点亮所有的符号,得到flag的游戏,然后我们就用Exeinfo PE打开

发现是一个c++编写的32位程序,然后就用ida32打开

有时进来之后无法直接找到main函数,那就按 Alt+T 搜索文本 main 就能找到,然后就跟进main函数查看伪代码

继续跟进main_0函数,跟进后可以看到以下代码

这些代码是判断输入的数字是否在要求范围内,否则重新输入,下面的代码是根据输入的数字,改变字符

我们就先跟进 sub_4576D6 函数查看一下改变符号的代码,经过两次跳转后就看到了如下代码

现在也就不看题中改变字符的代码了,继续查看主函数,下面最后这些代码就是判断每个字符都为1,即都被点亮后执行sub_457Ab4函数,我们猜测这里就是得到flag 的代码,就继续跟进sub_457Ab4

两次跳转后看到

猜测下面就是得到flag的代码

看到这里的最后的一个for循环有v2和v59进行运算,应该就是得到flag的代码
这里对v2和v59进行或运算,逆运算也是或运算,我们把v2和v59地址增加后的数字编写进数组
编写Python脚本得到flag

v59 = [18, 64, 98, 5, 2, 4, 6, 3, 6, 48, 49, 65, 32, 12, 48, 65, 31, 78, 62, 32,49, 32, 1, 57, 96, 3, 21, 9, 4, 62, 3, 5, 4, 1, 2, 3, 44,65, 78, 32, 16,97, 54, 16, 44, 52, 32, 64, 89, 45, 32, 65, 15, 34, 18, 16, 0]
v2 = [123, 32, 18, 98, 119, 108, 65, 41, 124, 80, 125, 38, 124, 111, 74, 49, 83, 108, 94,108, 84, 6, 96, 83, 44, 121, 104, 110, 32, 95, 117, 101, 99, 123, 127, 119, 96, 48,107, 71, 92, 29, 81, 107, 90, 85, 64, 12, 43, 76, 86, 13, 114, 1, 117, 126, 0]
flag = ' '
for i in range(56):v2[i] ^= v59[i]v2[i] ^= 0x13flag += chr(v2[i])
print(flag)

脚本写好后运行得出flag

zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}
本题结束

ctf——逆向新手题目4 (game) WP相关推荐

  1. 强网杯2021 ctf线上赛ezmath wp(#超详细,带逆向新手走过一个又一个小坑)

    文章目录 引言 一.分析文件类型 二.初步分析 1 运行情况 2 IDA初步分析 三.详细分析 1 sub_13F3函数分析 2 查找蛛丝马迹 (1)mprotect (2)重写unk_2010 3 ...

  2. ctf php 流量分析题,CTF平台hackit题目分析与解答

    之前在网上经常看到很多的CTF的练习平台,在加上搞CTF比赛的学弟推荐了这个 CTF平台 .当时在网上看了一下,这个平台推荐的人还是很多的.这个平台是由一个白帽子个人开发的一个平台.趁着这个平台还没有 ...

  3. 社团的CTF逆向题WriteUp

    最近社团弄了CTF比赛,然后我就帮忙写了逆向的题目,这里写一下WriteUp,题目和源码在附件中给出 一个简单的逆向:one_jmp_to_flag.exe 这题算是签到题,直接OD智能搜索就完事了, ...

  4. 【2021.12.25】ctf逆向中常见加密算法和编码识别

    [2021.12.25]ctf逆向中常见加密算法和编码识别(含exe及wp) 文章目录 [2021.12.25]ctf逆向中常见加密算法和编码识别(含exe及wp) 0.前言 1.基础加密手法 2.b ...

  5. CTF逆向-Upx脱壳攻防世界simple unpack

    文章目录 前言 UPX 技术原理 应用范围 软件使用 CTF实战 程序查壳 UPX脱壳 总结 前言 加壳软件分两类: 压缩壳:压缩的目的是减少程序体积,如 ASPack.UPX.PECompact 等 ...

  6. CTF逆向-[MRCTF2020]VirtualTree-恒成立的jz花指令去除及smc变换原执行流程在二叉树上的应用,通过逆向思维编写脚本以解决

    CTF逆向-[MRCTF2020]VirtualTree-恒成立的jz花指令去除及smc变换原执行流程在二叉树上的应用,通过逆向思维编写脚本以解决 来源:https://buuoj.cn/ 内容: 附 ...

  7. IDA详细使用教程,适合逆向新手的实验报告

    IDA详细使用教程,原创适合逆向新手的实验报告,关于快捷键,界面展示等的介绍,推荐大家结合另一篇ida实操,文章食用.切实感受ida的魅力与强大. 一.软件介绍 IDA全称是交互式反汇编器专业版(In ...

  8. WP-南邮CTF逆向第六题 WxyVM2

    WP-南邮CTF逆向第六题 WxyVM2 用记事本打开WxyVM2,发现是elf文件 用ida pro载入这个文件,找到main函数 这个地方有个红色的部分 ,意思是块内容太大,无法显示, 这里我们先 ...

  9. 逆向新手,经典扫雷游戏确定雷区地址的5个方法

    逆向新手,经典扫雷游戏确定雷区地址的几个方法 前言 逆向新手,经典扫雷游戏确定雷区地址的几个方法 一.通过相关的数据区来确定 结合CE实现 首先从数据结构去考虑,思考''雷''与''非雷''数据(还包 ...

最新文章

  1. linux c pid获取进程名 进程名获取pid
  2. 电信无线网服务器是什么,怎样使用路由器共享电信天翼无线网络
  3. 计算机系统操作在线作业,电子科大《计算机操作系统》在线作业3
  4. CoolUIViewAnimations
  5. js html 处理json数据,JS中Json数据的处理和解析JSON数据的方法详解
  6. SpringCloud工作笔记73---Http协议操作工具集合
  7. (一)操作系统基本概念(任哲版嵌入ucos和linux笔记)
  8. textswitcher_Android TextSwitcher和ImageSwitcher示例教程
  9. 日处理20亿数据,实时用户行为服务系统架构实践
  10. C++ STL容器在for循环中删除迭代器 正确方法 it++正确吗
  11. matlab串口实时画图,基于MATLABGUI界面的MCU串口实时绘图设计
  12. 年龄和血压对照表,有必要了解!
  13. 2018年系统架构设计师案例分析真题及详细答案解析
  14. ubuntu18.04 xamp框架搭建
  15. 微信小程序自定义函数返回值
  16. Java 字体颜色转换工具类 ColorUtil
  17. 社科院与杜兰大学金融管理硕士项目——与优秀的人同行,做更好的自己!
  18. 1.App Inventor开发环境构建
  19. vue3表格双击事件
  20. 蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现

热门文章

  1. redis使用redis-cli查看所有的keys及清空所有的数据
  2. 网站性能优化实战(二)——深入浅出浏览器渲染机制
  3. 我在舒舍短租生活记录
  4. Linux 内核调试 三:《QEMU ARM guest support》翻译
  5. 电力用户用电信息采集系统
  6. Thinkpad笔记本无法从U盘启动,无法用光盘装win7的解决办法
  7. 【Android】——LinearLayout布局
  8. 旅游价值和最大 C++
  9. AVPlayerLayer与AVPlayer媒体播放器
  10. WebGL 理论基础 - 图像处理 上