[HDCTF2019]Maze

news/2025/1/21 10:05:01/

[HDCTF2019]Maze

一、查壳

有壳upx,32位,解壳

二、IDA分析

刚一点进去就发现花指令,不出意外无法F5.

花指令,其特征就是在jnz后面call里面出现非法指令。(会爆红)

所以我们现在要解决花指令

三、解决花指令

看类型:这个是一个地址加1,导致跳转失效。

1.在jnz上按D

变成这样:

2.对call进行nop操作。

点:

出现:

改:

最后会变成这样:

3.在红色地址上按P使之转成函数。

就变成了上面的这样,这时就好了。

三、解题

接上面,接下来直接F5查询伪代码。

总体里面只有asc_408078、dword_40807C,点击查看

结合下面这个图:

总结如下:

这是一个迷宫题。开始坐标是(7,0),结束坐标是(5,-4)

迷宫内容是上面的***........即下面的,按照坐标可以算出迷宫是10个(0--9)一行。

   01234567890*******+**-1******* **-2****    **-3**   *****-4** **F****-5**    ****-6**********

非常完美,哈哈哈哈。

连线后,答案是ssaaasaassdddw

flag{ssaaasaassdddw}

http://www.ppmy.cn/news/1564915.html

相关文章

c# PDF文件合并工具

界面 主要用于发票PDF文件的合并。经常出差要报销的很有用。 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.IO; using System.Linq; using System…

Python毕业设计选题:基于django+vue的智能租房系统的设计与实现

开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 租客注册 添加租客界面 租客管理 房屋类型管理 房屋信息管理 系统管理 摘要 本文首…

springboot基于安卓的智启教育服务平台app

基于Spring Boot的智启教育服务平台App是一个结合了Spring Boot后端框架与安卓前端技术的综合性教育服务平台。 一、技术背景与架构 1.开发语言:后端采用Java语言开发,充分利用Java的跨平台性、面向对象特性和强大的后端处理能力。前端则使用安卓开发技…

线程同步与Mutex

梦想是逃离世界… 文章目录 一、什么是线程同步?二、线程同步机制三、互斥锁(Mutex)四、loock 和 unlock五、Mutex的四种类型 一、什么是线程同步? 线程同步(Thread Synchronization)是多线程编程中的一个重要概念,它…

基于微信小程序的安心陪诊管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

Golang学习笔记_27——单例模式

Golang学习笔记_24——泛型 Golang学习笔记_25——协程Golang学习笔记_25——协程 Golang学习笔记_26——通道 文章目录 单例模式1. 介绍2. 应用场景3. 实现3.1 饿汉式3.2 懒汉模式 源码 单例模式 1. 介绍 单例模式是一种创建型设计模式,它确保一个类只有一个实例…

Visual Studio Code + Stm32 (IAR)

记录一下, 以前看别人在 vsc 下配置 stm32 工程非常麻烦。 最近,突然发现, iar 官方出了两个插件, iar build 、 iar C-Spy 安装之后,配置一下 iar 软件路径。 然后,直接打开工程目录,编译…

一文夯实垃圾收集的理论基础

如何判断一个引用是否存活 引用计数法 给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加 1;当引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。 优点:可即刻回收垃圾&a…