[MoeCTF 2025]mazegame_WP
通过搜索算法解出最优路径的题目平台MoeCTF方向逆向知识点BFS、DFS难度入门一、信息获取题目意图就是让输入字符串走迷宫二、分析从下面分析发现n0x37为行数我更名为rown32为列数我更名为column终点为1532flag的内容为走出迷宫的路径这里可以直观的看出W、A、S、D对应的行和列的变化下面是找地图这里被打了问号是因为要在程序运行的时候这个数组才被赋值而现在是静态分析就没有初始值但是在左边可得知其被sub_1400010E0这个函数引用了因此地图就在这个函数里面打开就有地图了复制下来就行三、EXPfromcollectionsimportdequemap[11111111111111111111111111111111111111111111111111111111,10100000000000000010000011011101011111111101011100000111,10111010111111111010111011000001000001000001000101110111,10000010000010000010001011011111111101110111011101110111,10111111111011101110111011010000000000010100010001110111,10100000001000101000100011010101111111011101110101110111,10101011111110111011101011010101000001000000010101110111,10101010000010100000101011110101110101111101111111110111,10111010111010101111101011100101000100000101000101110111,10000010001010001000001011001111011111010101011101110111,11111011101011111011111111101000100000101100101001110111,10001010001000100010000010001010011000100010010011000001,10111010111110101010111011011001011111010101011101011101,10001010001000001010001011000101000100000101000101011101,11101011101111111011101011110101110111111101110101011101,10001000101000001010001011000100010100000101000101011101,10111111101011101110111011011111110101110111011101011101,10001000001000100000001011000100000100010000000101011001,11101011111011111111101011110101111101111111110101011011,10101000000010001000101011010100000001000100010101011011,10101111111110101010101011010111111111010101010101011011,10100000000000100010101011010000000000010001010101011011,10111111111111111110111011011111111111111111011101011011,10000000001111000000000011110111010000111100011111011011,11101111100000011011011111111010110111011101100001011011,11101111111111111011011111111101110111101101100001011011,10001000111111000010000011111010110111011101100001011011,10111010111111111010111011110111010000111101100001010011,10000010000010000010001011111111111111111101100001010111,10111111111011101110111011110001000110001101100001010001,10100000001000101000100011110111011101111101100001011101,10101011111110111011101011110001000101111101100001011101,10101010000010100000101011111101011101111101100001011101,10111010111010101111101011110001000110001101100001011101,10000010001010101000001011111111111111111101100001011101,11111011101011111011111110000000000000001101100001011101,10001010001000100010000011111111111111111100110011011101,10111010111110101010111010010000000011111110001111011101,10001010001000001010001010110111000001111110100101011101,11101011101111111011101000110011001111111100110111011101,10001000101000001010001011111111111111111111110111010001,10111111101011101110111010100001001100000000000011011011,10001000001000100000001011111111111101011101111001011011,10101011111011111111101011000000000001000100010111011011,10101000000010001000101010010111111111111111111111011011,10101111111110101010101010110111111111111111111101011011,10100000000000100010101011100000000000000000000011011011,10111111111111111110011011111111111111111111111011011011,10000011111111111111000010000000000000000000000000011001,11111011111111111111111111111111111111111111111111111101,11111011100001100110110111000000000000000000000111111101,11111011101111011010000111011111111111111111110111111101,11111011100001000010110110000111111111111111110000000001,11111011101111011010110111101111111111111111111111111111,11110000000000011000110000000000000000000000000000000011,11111111111111111111111111111111111111111111111111111111,]start(1,1)#行列goal(15,32)moves[(W,-1,0),(S,1,0),(A,0,-1),(D,0,1)]qdeque([(start[0],start[1],)])seen{start}whileq:r,c,curq.popleft()if(r,c)goal:pathcurbreakforch,dr,dcinmoves:nr,ncrdr,cdcifnot(0nr55and0nc55):continueifmap[nr][nc]1or(nr,nc)inseen:continueseen.add((nr,nc))q.append((nr,nc,curch))print(path)print(fmoectf{{{path}}})使用广度优先搜索寻找flag四、总结1.我觉得要注意ida给的十六进制数这个可能是数字也可能是对应的ASCII如果判断错误会给使代码理解出现错误看到 32 到 126 之间的立即数先想一下 ASCII。常见的就这几个0x30–0x39 是 ‘0’–‘9’0x41–0x5A 是 ‘A’–‘Z’0x61–0x7A 是 ‘a’–‘z’。在 IDA 里对这个数按 R可以直接切成字符看。2.不重要的变量可以直接忽略

相关新闻

linux下删除本目录下除了“XXX”目录外的命令

linux下删除本目录下除了“XXX”目录外的命令

Linux下经常会出现有文件的名称变为了特殊字符或乱码,导致无法删除的情况,这个时候我们可以使用一些方法删除,比如:在当前目录下,删除除了 XXX 目录以外的所有内容(包括名称乱码的文件)&#xf…

2026/10/18 19:39:18 阅读更多 →
平面变压器Maxwell仿真前处理:建模、激励与网格剖分全解析

平面变压器Maxwell仿真前处理:建模、激励与网格剖分全解析

做了这么多年电源设计,我始终觉得平面变压器的仿真和传统绕线变压器完全是两套打法。传统变压器你可以靠经验公式和新手时期积累的直觉去估算,但平面变压器一旦频率上到500kHz甚至MHz级别,绕组的趋肤效应、邻近效应、层间并联均流、漏感分布&…

2026/10/15 17:37:31 阅读更多 →
API 26 新接口在旧设备直接闪退:HarmonyOS 7 能力门禁与兼容回退清单

API 26 新接口在旧设备直接闪退:HarmonyOS 7 能力门禁与兼容回退清单

API 26 新接口在旧设备直接闪退:HarmonyOS 7 能力门禁与兼容回退清单 先看问题是怎么发生的 代码在 API 26 设备运行正常,装到仍受支持的旧环境后,一进入页面就调用不存在的新能力。仅在页面顶部写一次版本判断不够,深层服务、异…

2026/10/12 11:38:13 阅读更多 →

最新新闻

微信小游戏60fps拖拽与关卡状态机实战解析

微信小游戏60fps拖拽与关卡状态机实战解析

简介:本资源是微信小游戏《果蔬去哪了》的完整开发包,面向前端初学者及小程序游戏开发者,提供可研读、可调试的休闲益智类小游戏实践范例。包内含738个文件,总计6.79MB,涵盖219张PNG游戏素材图、103个JS核心逻辑脚本、…

2026/10/18 19:40:29 阅读更多 →
ArcGIS动态表格实战:FeatureTable联动、筛选与高亮避坑全解析

ArcGIS动态表格实战:FeatureTable联动、筛选与高亮避坑全解析

简介:ArcGIS动态表格教程项目源码是一套面向ArcGIS用户的动态表格扩展模块学习材料,主要帮助需要在地图或图表中嵌入交互式表格、强化空间数据展示与分析的初中级GIS使用者。压缩包共3个文件,以HTML页面、inscode配置和gitignore文件构成&…

2026/10/18 19:40:29 阅读更多 →
高分辨率城市遥感水体提取:U-Net与Attention U-Net源码包

高分辨率城市遥感水体提取:U-Net与Attention U-Net源码包

简介:面向遥感图像处理与深度学习毕业设计人群,提供一套基于Python实现的高分辨率城市遥感图像水体提取完整项目方案。压缩包共二十七个文件,包含十一个Python源码文件、十三张网络结构示意图、一份CSV结果数据、一篇Markdown说明文档及一个模…

2026/10/18 19:40:29 阅读更多 →
C语言实例学习指南:从编译到指针、结构体与文件操作实战

C语言实例学习指南:从编译到指针、结构体与文件操作实战

简介:这份C语言学习资料以程序实例为主线,面向刚接触C语言的初学者以及希望巩固基础的开发者,帮助读者在动手实践中理解语法、算法与模块化编程。压缩包共8个文件,以7个cpp源码文件和1份doc学习笔记为主,源码对应基础输…

2026/10/18 19:40:29 阅读更多 →
音乐推荐系统源码全解析:协同过滤、矩阵分解与工程实践

音乐推荐系统源码全解析:协同过滤、矩阵分解与工程实践

简介:一套基于 Python 开发的音乐推荐系统完整工程,面向想深入理解推荐机制并补充项目经验的开发者。内容涵盖数据收集、用户画像、特征工程与相似度计算等基础模块,并展示协同过滤、基于内容推荐和深度学习的实现思路;借助歌曲播…

2026/10/18 19:40:29 阅读更多 →
Spring Boot编程训练系统实战:高并发判题与Docker沙箱隔离

Spring Boot编程训练系统实战:高并发判题与Docker沙箱隔离

简介:这是一套基于Spring Boot开发的编程训练系统完整源码,面向Java初学者、高校计算机专业学生及编程自学爱好者,旨在解决理论学习与动手实践脱节的问题,提供从课程学习、在线编码到社区交流的一站式编程能力提升环境。资源包共8…

2026/10/18 19:39:28 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →