数据分析-HW

哥斯拉 流量分析

hard_web_1

1
服务器开放了哪些端口,请按照端口大小顺序提交答案,并以英文逗号隔开(如服务器开放了80 81 82 83端口,则答案为80,81,82,83)

80,888,8888

首先进去,后找到http流量,可以得知服务器ip为192.168.162.180

image-20250828230626109

TCP连接:SYN ACK RST UTG PSH FIN
三次握手:发送端发送一个SYN=1,ACK=0标志的数据包给接收端,请求进行连接,这是第一次握手;接收端收到请求并且允许连接的话,就会发送一个SYN=1,ACK=1标志的数据包给发送端,告诉它,可以通讯了,并且让发送端发送一个确认数据包,这是第二次握手;最后,发送端发送一个SYN=0,ACK=1的数据包给接收端,告诉它连接已被确认,这就是第三次握手。之后,一个TCP连接建立,开始通讯。

所以如果成功建立连接的话,服务器会发送一个synack字段

所以我们可以筛选

1
ip.dst == 192.168.162.188 and tcp.connection.synack

或者

1
tcp.flags.syn == 1 && tcp.flags.ack == 1

image-20250828230803362

得知开放了80,888,8888端口

hard_web_2

1
服务器中根目录下的flag值是多少

flag{9236b29d-5488-41e6-a04b-53b0d8276542}

需要分析webshell

分析流量,可以看到

image-20250828231827247

image-20250828231716433

网站中有了shell.jsp流量,疑似上传了木马

image-20250828231913321

同时可以得到webshell的内容

采用了AES-128加密payload和返回的内容,密钥是748007e861908c031

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
解密哥斯拉流量:

- 步骤 1:输入加密数据
将拆分出的 “加密请求体 / 响应体” 内容(十六进制或原始字节)粘贴到 Input 区域。

- 步骤 2:添加解密 Recipe

依次添加操作:

- 若数据是十六进制形式,先加 `From Hex`(转为原始字节);
- 再加`AES Decrypt`,配置:
- 密钥:`748007e861908c03`(已知哥斯拉 AES 密钥,注意长度需符合 AES 标准,这里 16 字节即 AES-128 );
- 模式:哥斯拉默认 `EBC` 模式(需确认,若不对换 `CBC` 等尝试);
- IV(初始向量):若流量里有传递,需从 HTTP 头或体中提取;若未显式传递,哥斯拉可能用默认(或与密钥关联生成,需调试)。
- 若解密后有乱码,补充 `Gunzip`(因原始流量可能经 gzip 编码,虽 HTTP 流已解码,但加密前可能又压缩,需二次解压)。

- 步骤 3:执行解密
点击 `Run`,Output 区域会显示解密后的明文(可能是哥斯拉的命令、回显等交互内容)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
哥斯拉流量核心特征

协议伪装:基于 HTTP/HTTPS 传输,用常见 Web 端口(80/443 等),请求方法多为 POST,响应码常伪装 200,混在正常流量中。
加密混淆:
采用 AES 对称加密(配固定密钥),请求 / 响应体为加密 “乱码块”(非明文 key=value),可能经 Gzip 二次压缩。
流量体积极小(命令执行场景)或突发增大(文件传输场景 )。
交互模式:严格 “请求 - 响应”,必有来回流量(执行命令需回显结果 )。
代码层面特征

硬编码密钥:内置 AES 密钥 748007e861908c03(16 字节,AES-128),用于加密通信。
动态加载机制:通过自定义类加载器 X 动态加载加密的恶意字节码(payload),存储在 session 中,避免静态检测。
加密 / 解密逻辑:含 x() 方法,基于 AES 实现请求体解密、响应体加密,默认 ECB 模式。
请求处理:首次请求加载 payload,后续请求执行命令并加密返回结果,依赖 session 保持状态。
处理步骤

快速识别:
过滤规则:http.request.method == "POST" && http contains "可疑路径(如 shell.jsp )",筛选 “小体积加密 POST 流量”。
对比正常流量:同路径下,请求体无明文参数、全为加密乱码 → 标记可疑。
解密实锤:
用 CyberChef 按 From Hex(转加密体)→ AES Decrypt(填密钥)→ Gunzip(解压缩) 流程解密 → 若出现命令 / 回显(如 whoami 结果 ),确认是哥斯拉。
应急处置:
服务端:删除 shell.jsp 等 webshell 文件,检查同目录 / 可疑文件(如近期新增、隐藏文件 )。
网络侧:封禁客户端 IP(若固定),在 WAF 添规则(拦截含加密特征的 POST )。
溯源:分析解密后的命令(如攻击者执行了哪些操作 ),排查内网横向渗透风险。

解密最后一个shell流量

image-20250828232431293

可以得到flag

image-20250828232506466

hard_web_3

1
该webshell的连接密码是多少

14mk3y

倒数第五个请求解密之后可以看到

image-20250828233808387

image-20250828233831429

image-20250828233737075

md5查询获得秘钥

image-20250828232708700

数据分析-WS

Wireshark1_1

1
被入侵主机的IP是?

192.168.246.28

过滤tcp流量

image-20250829123353026

根据tcp的握手规则,可以得知被入侵的ip为192.168.246.28

Wireshark1_2

1
被入侵主机的口令是?

youcannevergetthis

image-20250829123600030

Wireshark1_3

1
用户目录下第二个文件夹的名称是?

Downloads

执行了ls命令

image-20250829123759422

Wireshark1_4

1
/etc/passwd中倒数第二个用户的用户名是?

mysql

image-20250829123925402

数据分析-SS

sevrer save_1

1
黑客是使用什么漏洞来拿下root权限的。格式为:CVE-2020-114514 本题附件见于平台公告的SS.zip,解压密码为c77ad47ba4c85fae66f08ec12e0085dd

CVE-2022-22965

打开流量包,观察导出对象列表,可以发现最后进行了命令执行

image-20250829143706411

image-20250829145137249

在流105之前的流104中,有greeting

image-20250829145208469

关键词搜索得到

image-20250829145725339

sevrer save_2

1
黑客反弹shell的ip和端口是什么,格式为:10.0.0.1:4444

192.168.43.128:2333

image-20250829145857014

sevrer save_3

1
黑客的病毒名称是什么? 格式为:filename

main

流量中没什么东西了,去文件中看看

image-20250829151721453

同时目录中的.log.txt 文件也能看出端倪

image-20250829151725913

把main丢进微步沙箱中,

image-20250829152017304

可以进一步确实,main为木马文件

sevrer save_4

1
黑客的病毒运行后创建了什么用户?请将回答用户名与密码:username:password

ll:123456

在/etc/passwd和/etc/shadow可以分别发现用户名和密码

image-20250829152330408

sevrer save_5

1
服务器在被入侵时外网ip是多少? 格式为:10.10.0.1

172.105.202.239

在之前的log文件中可以得知外网ip

image-20250829151725913

sevrer save_6

1
病毒运行后释放了什么文件?格式:文件1,文件2

lolMiner,mine_doge.sh

根据微步的分析,加之log文件可知为lolMiner,mine_doge.sh

image-20250829152932970

sevrer save_7

1
矿池地址是什么? 格式:domain:1234

doge.millpools.cc:5567

image-20250829154430631

sevrer save_8

1
黑客的钱包地址是多少?格式:xx:xxxxxxxx

DRXz1q6ys8Ao2KnPbtb7jQhPjDSqtwmNN9.lolMinerWorker

同上

数据分析-EW

ez_web_1

1
题目内容:服务器自带的后门文件名是什么?(含文件后缀)

ViewMore.php

看导出对象,最后基本是d00r.php,并且进行了命令执行

image-20250829163928989

image-20250829164052470

搜索d00r.php可以发现,最开始在ViewMore.php文件下写了d00r.php,可得知自带的后门文件为ViewMore.php

image-20250829164731647

ez_web_2

1
题目内容:服务器的内网IP是多少?

192.168.101.132

在之后的流量中可以看到执行了ifconfig查看

image-20250829170509619

ez_web_3

1
题目内容:攻击者往服务器中写入的key是什么?

7d9ddff2-2d67-4eba-9e48-b91c26c42337

image-20250829171323084

同时在之前的看到密码

image-20250829171822054

解url编码后解base64后解压可得

image-20250829171922770

数据分析-SSW

SmallSword_1

1
连接蚁剑的正确密码是______________?(答案示例:123asd)

6ea280898e404bfabd0ebb702327b18f

进入后在导出对象中发现了sql联合注入的痕迹

image-20250830144957715

在流74中发现了写入木马

image-20250830150011770

显然蚁剑密码是6ea280898e404bfabd0ebb702327b18f但是不对,在之后的执行命令的流中可以发现变为了6ea280898e404bfabd0ebb702327b19f

中间隔着几个tls流量,貌似改变了密钥

image-20250830151225031

SmallSword_2

1
攻击者留存的值是______________?(答案示例:d1c3f0d3-68bb-4d85-a337-fb97cf99ee2e)

ad6269b7-3ce2-4ae8-b97f-f259515e7a91

搜索antsword在某一个流中发现有hacker.txt,攻击者的留存值大概就在这

image-20250830165840288

然后找一下前后流量

image-20250830170326997

SmallSword_3

1
题目内容:攻击者下载到的flag是______________?(答案示例:flag3{uuid})

flag3{8f0dffac-5801-44a9-bd49-e66192ce4f57}

在130和137的tcp流的相应包中都发现了exe程序的踪影

image-20250830171541027

image-20250830171600195

解码发现和huorong.exe有关

image-20250830171641066

将130的流中的另存为,010编辑把MZ头之前的删除,运行程序

image-20250830172835244

在上层目录中发现了一张图片,但是貌似高度不对,随波逐流改一下

image-20250830173328751

数据分析-BF

baby_forensics_1

1
2
3
题目内容:磁盘中的key是多少?

压缩包密码:4cf611fce4a2fec305e54c2766b7c860

2e80307085fd2b5c49c968c323ee25d5

估计内存文件中可能会有

image-20250830180510737

丢给随波逐流

image-20250830180545631

baby_forensics_2

1
题目内容:电脑中正在运行的计算器的运行结果是多少?

7598632541

使用vol2中的windows命令查看程序窗口句柄信息,搜索calc.exe,可以在一处找到数字

image-20250830181509444

但是为了保险起见还是去程序进程那gimp一下

image-20250830182637978

baby_forensics_3

1
题目内容:该内存文件中存在的flag值是多少?

flag{ad9bca48-c7b0-4bd6-b6fb-aef90090bb98}

在开机自启动项目中有个便签程序,搜索得知便签文件的后缀为snt

image-20250830193831518

去找一下便签的文件,导出

image-20250830203509440

导出后用win7打开

用qemu将vmdk文件转为raw文件qemu-img.exe convert -p -f vmdk -O raw baby_forensics.vmdk aa.raw,然后使用passware爆破bitlocker密码

(因为passware不支持vmdk)

image-20250830212345193

1
560604-255013-655633-128854-663223-316063-484946-476498

结果发现这只是一个系统盘,艹

还是老老实实找个win7打开吧

image-20250830220514056

得到密文U2FsdGVkX195MCsw0ANs6/Vkjibq89YlmnDdY/dCNKRkixvAP6+B5ImXr2VIqBSp 94qfIcjQhDxPgr9G4u++pA==,然后在Music文件夹下的i4k3y文件中发现密钥q(这个在内存中搜索leet的key就能找到)

image-20250830214627011

image-20250830221138127

得到flag

数据分析-TP

tcpdump_1

1
攻击者通过暴力破解进入了某Wiki 文档,请给出登录的用户名与密码,以:拼接,比如admin:admin

TMjpxFGQwD:123457

筛选流量

image-20250831153430684

发现errcode为200的流量,username=TMjpxFGQwD&password=123457

image-20250831153352916

tcpdump_2

1
攻击者发现软件存在越权漏洞,请给出攻击者越权使用的cookie的内容的md5值。(32位小写)

383c74db4e32513daaa1eeb1726d7255

将cookie列为列,筛选(http) and http.cookie

image-20250831165442864

观察cookie的变化可以看出从2到1,体现越权,md5即可

image-20250901123615699

tcpdump_3

1
攻击使用jdbc漏洞读取了应用配置文件,给出配置中的数据库账号密码,以:拼接,比如root:123456

zyplayer:1234567

搜索jdbc

image-20250901132620108

最后在jdbc的应用配置文件application.yml中发现zyplayer:1234567

image-20250901132256865

tcpdump_4

1
攻击者又使用了CVE漏洞攻击应用,执行系统命令,请给出此CVE编号以及远程EXP的文件名,使用:拼接,比如CVE-2020-19817:exp.so

CVE-2022-21724:custom.dtd.xml

在这个文件中,反弹了shell

image-20250901133929163

同时在之前的流中

image-20250901134141041

搜索可以知道cveCVE-2022-217241

image-20250901134216248

tcpdump_5

1
给出攻击者获取系统权限后,下载的工具的名称,比如nmap

fscan

image-20250901134631966

数据分析-HD

hacked_1

1
admIn用户的密码是什么?

flag{WelC0m5_TO_H3re}

在wireshark中发现了登录的流量,追踪tcp流可知

image-20250901201844893

上下看一下

image-20250901201827231

image-20250901201815677

image-20250901201651143

hacked_2

1
app.config['SECRET_KEY']值为多少?

ssti_flask_hsfvaldb

在某一个流中

image-20250901202408518

image-20250901202353461

执行了命令

image-20250901202241716

hacked_3

1
flask网站由哪个用户启动?

red

注意到cookie的session在变化

image-20250901211431909

分别解密这两个cookie可得为red

image-20250901221009442

image-20250901221102538

hacked_4

1
攻击者写入的内存马的路由名叫什么?(答案里不需要加/)

Index

注意到有一个index,解密看看

image-20250901221244745

无法解密,看看之前的流

image-20250901221459248

image-20250901221531963

可以看到在/Index下写了内存马

数据分析-IR

1
你是公司的一名安全运营工程师,今日接到外部监管部门通报,你公司网络出口存在请求挖矿域名的行为。需要立即整改。经过与网络组配合,你们定位到了请求挖矿域名的内网IP是10.221.36.21。查询CMDB后得知该IP运行了公司的工时系统。(虚拟机账号密码为:root/IncidentResponsePasswd)

OVA 文件的取证核心是对其包含的虚拟磁盘文件(如.vmdk)和配置文件.ovf)进行解析,提取与案件相关的证据。

双击OVA 文件会在VMware中新建一个虚拟机打开,也可直接进行解压

IncidentResponse_1

1
挖矿程序所在路径是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

6f72038a870f05cbf923633066e48881

虚拟机打开后起一下网卡,windterm连接,ls -lha --sort=t查看目录下文件的修改时间

image-20250902203441655

发现最近修改了bash_history和viminfo,查看内容,在.viminfo中发现大量修改了redis的文件

image-20250902204428571

查看redis的配置文件/etc/config/redis.conf,看到pools池有个奇怪的url

image-20250902205744326

image-20250902210322279

可以确实为redis程序,路径/etc/redis/redis-server

从文件内容看,这是 Redis 配置文件被恶意篡改植入挖矿脚本 的典型特征,以下是详细分析:

  1. 文件与场景识别
  • 文件路径:/etc/redis/redis.conf(Redis 核心配置文件),被篡改后注入了非 Redis 标准的配置项。
  • 工具痕迹:R-Viewer 是远程文件查看工具,说明攻击者或运维可能通过远程方式访问系统文件。
  1. 关键恶意配置分析
1
2
"url": "donate.v2.xmrig.com:3333",
"user": "YOUR_WALLET_ADDRESS",

这是 XMRig 挖矿程序 的配置片段:

  • url:指向 XMRig 挖矿池(donate.v2.xmrig.com 是知名门罗币挖矿池),用于接收挖矿指令、上报算力。
  • user:攻击者的门罗币钱包地址,挖矿收益会转入该地址。

挖矿程序所在路径就是/etc/redis/redis-server

image-20250902210513286

IncidentResponse_2

1
挖矿程序连接的矿池域名是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

3fca20bb92d0ed67714e68704a0a4503

由上题可知

image-20250902210848841

IncidentResponse_3

1
攻击者入侵服务器的利用的方法是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

3ee726cb32f87a15d22fe55fa04c4dcd

在之前看bash_history文件发现启动了jar包

image-20250902211318073

在windterm中把jar包的日志和jar包下载下来分析,在日志中看到了shiro的内容

image-20250902212219722

image-20250903124411929

Shiro反序列化

1
2
echo -n 'shirodeserialization'|md5sum|cut -d '' -f1
3ee726cb32f87a15d22fe55fa04c4dcd

IncidentResponse_4

1
攻击者的IP是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

c76b4b1a5e8c9e7751af4684c6a8b2c9

获取攻击者 IP 的核心方法是从登录记录网络访问日志中提取异常 IP,具体如下:

  1. 通过系统登录记录定位
    执行 last 命令查看用户登录历史,筛选出非管理员常用的异常 IP(如陌生公网 IP、与挖矿程序植入时间吻合的登录 IP),这些 IP 大概率是攻击者通过 SSH 等方式直接登录服务器的地址。
  2. 通过 Nginx 访问日志定位
    查看 Nginx 访问日志(tail /var/log/nginx/access.log),寻找频繁发送异常请求(如漏洞利用 Payload、恶意路径访问)的 IP,这类 IP 通常是攻击者通过 Web 漏洞(如之前提到的 JAR 包漏洞)入侵时使用的源地址。

查看登录记录

image-20250903141949992

image-20250903142017433

image-20250903142204178

IncidentResponse_5

1
攻击者发起攻击时使用的User-Agent是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

6ba8458f11f4044cce7a621c085bb3c6

在上上图的日志中发现攻击者的UA是Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)

image-20250903142347207

image-20250903142444821

IncidentResponse_6

1
攻击者使用了两种权限维持手段,相应的配置文件路径是?(md5加密后以a开头)(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

a1fa1b5aeb1f97340032971c342c4258

查看ssh目录下的文件

  1. authorized_keys 文件:存储允许登录本服务器的 SSH 公钥。若有陌生公钥,可能是攻击者植入用于免密登录 。cat authorized_keys 输出了公钥内容,可用于排查是否有未授权公钥添加。可能是攻击者(用 Kali 系统)植入的公钥,用于后续持久化访问。
  2. id_rsa.pub 文件:是当前服务器的 SSH 公钥,可用于识别本服务器的 SSH 身份,若被泄露,他人可能模拟身份。

查看日志文件

Ubuntu系统对应日志文件是 /var/log/auth.log,功能与 secure 一致,记录系统认证相关事件(SSH 登录是典型场景 )。

找到该文件后进行恢复,查看分析,同样可以看到进行了公钥认证

经过爆破无果后,利用公私钥成功登录了系统,应该是通过某种方式写入了公钥,配置文件路径一般都是/root/.ssh/authorized_keys

image-20250903143734085

image-20250903144851193

image-20250903144943819

IncidentResponse_7

1
攻击者使用了两种权限维持手段,相应的配置文件路径是?(md5加密后以b开头)(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

b2c5af8ce08753894540331e5a947d35

需要寻找另一种权限维持

一、定时任务与提权检测

  1. 基础定时任务排查:执行 crontab -l ,检查当前用户(如 root )是否有直接配置的定时任务,排查简单定时脚本后门。

    image-20250903164421132

  2. SUID 权限审计:通过 find / -perm -u=s -type f 2>/dev/null ,查找系统中带 SUID 权限的文件(此类文件因特殊权限,可能被攻击者利用提权 ),验证是否存在异常文件。

image-20250903164407291

查看影子账户,没有什么东西

image-20250903170842326

二、系统服务状态检测

执行 systemctl list-unit-files --type=service ,列出所有 systemd 服务的启用状态,筛选出异常启用的服务(如陌生服务、正常服务被篡改用途 ),重点标记需深度校验的服务(如案例中 redis.service )。

三、敏感服务配置审计

针对标记的可疑服务(如 redis.service ),定位其 systemd 配置文件(常规路径为 /lib/systemd/system/[服务名].service ),执行 cat [配置文件路径] 查看内容。重点检查 ExecStart 等启动指令字段,判断是否被注入恶意命令(如挖矿程序启动逻辑 ),确认服务是否被用作权限维持后门。

image-20250903170516668

看到挖矿程序被间歇反复重启,故第二种维权中的配置文件路径为/lib/systemd/system/redis.service

image-20250903170543496