【CTF】花指令问题——[HDCTF2019]Maze

2,519 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

前言

通过 BUU 上的一道题目来简单的介绍一下关于花指令的相关问题;

题目链接:[HDCTF2019]Maze

分析

查壳, 在这里插入图片描述 有壳,直接工具去壳,

拖入ida, 在这里插入图片描述 可以看出这应该是核心代码,直接按F5,没有反应,分析一下代码, 在这里插入图片描述这里jnz指令跳转到了下一行代码,相当于没跳转,可以推断出这段代码添加了花指令,导致ida分析失败,

直接将这里的jnz指令nop掉, 在这里插入图片描述 如何nop:

  1. Edit/Patch program/Change byte将要修改的byte改成90,修改完后Edit/Patch program/Apply patches to input file保存修改后的文件,
  2. 或者Edit/Patch program/Assemble直接输入nop,然后同样要保存,

重启程序即可,在这里插入图片描述

主函数如下,wsad,上下左右, 在这里插入图片描述

在内存中找到迷宫, 在这里插入图片描述 将迷宫提取出来, 在这里插入图片描述 得出路径如下:ssaaasaassdddw,输入程序, 在这里插入图片描述

资料

IDA学习经验和实战记录--手过花指令(1)

IDA学习经验和实战记录--手过花指令(2)