buuctf-pwn PWN4(双引号的转义缺陷)题解(学习过程持续更新)

本人也是在自学过程,主要目的也是记录学习过程,有些地方做的不太好,都是按照自己理解进行讲解的(不专业),欢迎大家指出问题

此处我将文件命名为pwn4

checksec pwn4 查看一下保护机制

可以看到这是一个64-bit的文件,canary和NX保护开启

将文件拖入ida64,按F5将汇编代码转换成c语言代码,得到

双击sub_4008C7(),进入sub_4008C7函数

可以看到这是一个菜单,当我们选择v3=2会进入echo()函数,我们做题只需要用到这个选项

双击echo(),进入echo()函数

echo \"%s\" -> echo "%s"

​​​​【\" → 转换成字符 "(在 C 里,双引号 " 是用来标记字符串开头结尾的,你不能直接写 " 放在字符串里面。 想在字符串内部输出一个双引号字符,必须转义:\")】

如果没有双引号我们只需要输入;/bin/sh(;是命令分隔符)

但是由于双引号的存在,";"会失去它的意义,所以我们先写一个 " 闭合前面的双引号,逃出引号

返回虚拟机

nano exp.py

先发送我们的选择'2',然后发送'";/bin/sh',构造system("/bin/sh"),获得shell

保存退出

python3 exp.py

cat flag

此题完

相关推荐
蒸蒸yyyyzwd1 小时前
CPP选手秋招准备学习笔记day25
笔记·学习
码行山野赴时序归途1 小时前
C 语言文件操作完全指南:从打开到关闭
c语言·开发语言
小白说大模型1 小时前
Hermes 全配置指南:从裸版到 AI Agent 天花板
大数据·人工智能·学习·算法·机器学习·数据挖掘
一只鹿鹿鹿1 小时前
水利信息化建设项目物联网(视频监控系统)施工方案(Word)
物联网·安全·web安全·系统安全
一次旅行1 小时前
2026‑09‑04 AI产业深度解读|英伟达129亿收Hugging Face、GPT-6 Astra刷榜、智能体安全走向产品化
人工智能·安全·开源
m4Rk_1 小时前
【论文阅读】Agent 记忆机制(60):MemInsight——让 LLM 自动为历史记忆生成语义索引
论文阅读·人工智能·学习·开源·github
jimmyleeee1 小时前
大模型安全之四:供应链安全
人工智能·安全
小五传输4 小时前
消防总队信创改造实践:国产文件传输服务器解决文件传输难题
大数据·运维·安全
小弥儿6 小时前
开源 VoiceStudio,声音克隆|配音|有声书一站式本地完成
学习·开源·github