攻防世界_ezmaze
题目:ezmaze
re选手投递区
无壳,64位,打开查看main
__int64 __fastcall main()
{
_main();
printf("Welcome to the maze game. Try to get out of the maze and get the flag.\n");
initmap();
text_55("%s", Input);
if ( check(Input) )
printf("Congratulations on coming out of the maze! The flag is 'flag{your input}'\n");
else
printf("What a pity. You're still trapped in the maze :(\n");
system("pause");
return 0i64;
}
将输入的调入了内部函数check,
bool __fastcall check(char *ch_0)
{
int v2; // eax
char *v3; // rcx
unsigned int v4; // er8
unsigned int v5; // edx
char *v6; // r11
char v7; // al
v2 = strlen(ch_0);
if ( v2 > 0 )
{
v3 = ch_0;
v4 = 0;
v5 = 0;
v6 = &ch_0[v2 - 1 + 1];
while ( 1 )
{
v7 = *v3;
if ( *v3 == 's' )
{
++v5;
}
else if ( v7 > 's' )
{
if ( v7 != 'w' )
return 0;
--v5;
}
else if ( v7 == 'a' )
{
--v4;
}
else
{
if ( v7 != 'd' )
return 0;
++v4;
}
if ( !realmap[10 * v5 + v4] || v5 > 9 || v4 > 9 )
break;
if ( v6 == ++v3 )
return v4 == 9 && v5 == 9;
}
}
return 0;
}
很明显的思路从(0,0)->(9,9).wsad控制上下左右
现在就是要找到迷宫了
可以看到这个if ( !realmap[10 * v5 + v4] || v5 > 9 || v4 > 9 ),realamp是我们要找的迷宫了,
但是查看到发现没有。。应该是程序运行时才出来的,
main()函数中的initmap();应该就是生成迷宫的了,动态调试一下

选中edit->Exorp data导出即可得到迷宫
最简单的方法手动走出迷宫

flag{sddssdddwddwddsssaasassssddd}
感兴趣的话可以学习一下优先搜索算法得到路径
攻防世界_ezmaze的更多相关文章
- CTF--web 攻防世界web题 robots backup
攻防世界web题 robots https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=0&id=506 ...
- CTF--web 攻防世界web题 get_post
攻防世界web题 get_post https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=0&id=5 ...
- 攻防世界 web进阶练习 NewsCenter
攻防世界 web进阶练习 NewsCenter 题目是NewsCenter,没有提示信息.打开题目,有一处搜索框,搜索新闻.考虑xss或sql注入,随便输入一个abc,没有任何搜索结果,页面也没有 ...
- 【攻防世界】高手进阶 pwn200 WP
题目链接 PWN200 题目和JarvisOJ level4很像 检查保护 利用checksec --file pwn200可以看到开启了NX防护 静态反编译结构 Main函数反编译结果如下 int ...
- XCTF攻防世界Web之WriteUp
XCTF攻防世界Web之WriteUp 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 view-source2 0x02 get post3 0x03 rob ...
- 攻防世界 | CAT
来自攻防世界官方WP | darkless师傅版本 题目描述 抓住那只猫 思路 打开页面,有个输入框输入域名,输入baidu.com进行测试 发现无任何回显,输入127.0.0.1进行测试. 发现已经 ...
- 攻防世界 robots题
来自攻防世界 robots [原理] robots.txt是搜索引擎中访问网站的时候要查看的第一个文件.当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在, ...
- 【攻防世界】 高手进阶区 Recho WP
0x00 考察点 考察点有三个: ROP链构造 Got表劫持 pwntools的shutdown功能 0x01 程序分析 上来三板斧 file一下 checksec --file XXX chmod ...
- CTF -攻防世界-crypto新手区(5~11)
easy_RSA 首先如果你没有密码学基础是得去恶补一下的 然后步骤是先算出欧拉函数 之后提交注意是cyberpeace{********}这样的 ,博主以为是flag{}耽误了很长时间 明明没算错 ...
- 攻防世界web新手区做题记录
学校信安协会第一次培训结束后的作业,要求把攻防世界的web新手区题目做一遍并写题解. 第一题 view_source 查看源代码右键不能用,但是F12能用,于是找到源代码 输入到flag框即可 后来在 ...
随机推荐
- JMM知识点总结
JMM知识点总结 一.什么是JMM? 不知道大家在学习的过程有没有思考过这两个问题 为什么说java是跨平台语言 导致并发问题的原因是什么 第一个问题,我是这么理解的,代码运行本质上是将我们写的语言转 ...
- computed的setter妙用
使用场景:当我们用v-model绑定了一个计算属性,想直接设置计算属性时,就要利用到setter demo: <template> <div> <div>First ...
- 全网最详细中英文ChatGPT-GPT-4示例文档-信息智能提取从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)
目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...
- GitLab服务器傻瓜式搭建教程
开始前的准备 需要有一台Linux系统的服务器或虚拟机 QAQ 安装包下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ 注* 本教程无需下载安装 ...
- 使用二进制方式安装Docker
长期使用安装工具进行安装docker,今天用二进制方式手动安装一下docker环境. 二进制包下载地址:https://download.docker.com/linux/static/stable/ ...
- flask-wtfwkfom使用
我们在使用flask框架来搭建自己的博客,只要是设涉及到表单相关,必然会想起Flask-WTF与WTForms.对于flask初学者来说,比较容易混淆两者.今天想来一一解释两者的用法. Flask-W ...
- [Java EE]缓存技术初探
1 背景 使用场景:计算或检索一个值的代价很高,并且对同样的输入需要不止一次获取值的时候,就应当考虑使用缓存. 高并发下,为提高 频繁 查询 大量 可能常用的 数据库数据的 查询效率. 大部分情况下, ...
- 异常:java.io.FileNotFoundException:e:\demo(拒绝访间。)
禁止向目录中写数据,只能向文件写数据
- ADC采样时间、Chirp扫频时间、Chirp重复周期的区分
图1 FMCW雷达信号参数 在德州仪器TI毫米波雷达中,开发板参数配置往往涉及如图1所示的信号参数. 宏观上看,信号参数包括\(ADC\)采样时间.脉冲重复周期(\(Chirp\)扫频周期)和帧时间( ...
- MQ高级
1.消息可靠性 消息从发送,到消费者接收,会经理多个过程: 其中的每一步都可能导致消息丢失,常见的丢失原因包括: 发送时丢失: 生产者发送的消息未送达exchange 消息到达exchange后未到达 ...