2023陇剑杯

2023陇剑杯初赛WP

HW

hard_web_1

2023陇剑杯_第1张图片

首先判断哪个是服务器地址

2023陇剑杯_第2张图片

从响应包看,给客户端返回数据包的就是服务器

所以确定服务器地址是192.168.162.188

再从开放端口来看,长期开放的端口

客户端发送一个TCP SYN包(同步请求),其中包含目标IP地址和要访问的端口号。
服务器收到SYN包后,如果端口是开放的,它会向客户端发送一个TCP SYN-ACK包(同步应答),以表示端口是开放的,并准备接受连接请求。
客户端在收到服务器的SYN-ACK包后,会向服务器发送一个TCP ACK包(确认应答),以建立连接。
一旦连接建立,数据可以在客户端和服务器之间传输。

所以用语句:

tcp.connection.synack && ip.dst==192.168.162.188

在这里插入图片描述

所以就是80、888、8888

hard_web_2

2023陇剑杯_第3张图片

按照包名顺序找到HTTP的包

2023陇剑杯_第4张图片

找到回显开始是200且命令执行的地方

这里追踪HTTP流只能看到注入内存马的地方,更远的地方看不到了

所以就从最后一个创建内存马的包入手

2023陇剑杯_第5张图片

可以看到AES加密和密钥

找到的流量复制为16进制

2023陇剑杯_第6张图片

复制多余的地方直接丢到vscode替换

2023陇剑杯_第7张图片
​​

上厨子解密:

2023陇剑杯_第8张图片

打开就是flag

2023陇剑杯_第9张图片
​​

hard_web_3

2023陇剑杯_第10张图片

数据包tcp.stream eq 20052的回显发现:

2023陇剑杯_第11张图片

结合前面的748007e861908c03,用脚本爆破密钥

或者直接cmd5解密

SS

SS1

2023陇剑杯_第12张图片

在这里插入图片描述

先看数据包

找到Hello路由的第一个数据包:

2023陇剑杯_第13张图片

可以看到class.module.classLoader.resources.context.parent.pipeline.first.fileDateFormat=

直接上网:

2023陇剑杯_第14张图片

CVE-2022022965

ss2

2023陇剑杯_第15张图片

2023陇剑杯_第16张图片

检索到TCP的前一个HTTP流量包可以看到反弹shell的语句

SS3

2023陇剑杯_第17张图片
2023陇剑杯_第18张图片

SS4

2023陇剑杯_第19张图片

直接看/etc/shadow

2023陇剑杯_第20张图片

可以直接看到账号和密码

SS5

2023陇剑杯_第21张图片

外网IP可以看home目录下的log文件
2023陇剑杯_第22张图片

可以看到IP地址

SS6

2023陇剑杯_第23张图片

释放的文件

2023陇剑杯_第24张图片

就这两

SS7

2023陇剑杯_第25张图片

2023陇剑杯_第26张图片

SS8

2023陇剑杯_第27张图片

2023陇剑杯_第28张图片

BF

BF1

2023陇剑杯_第29张图片

磁盘中的key​是多少

volatility取证

2023陇剑杯_第30张图片

key.txt​:

2023陇剑杯_第31张图片

提取文件:

在这里插入图片描述

2023陇剑杯_第32张图片

这个反复提交不对,结果要rot转码…服了

2023陇剑杯_第33张图片

BF2

2023陇剑杯_第34张图片

vol.exe -f C:\CTF\2023陇剑杯\BF\baby_forensics_58a2fd5b17eac8108638f334c399de4a\baby_forensics.raw --profile=Win7SP1x64 windows > raw

2023陇剑杯_第35张图片

我感觉这种有点难以理解为什么这个就是最后的答案,有了一个方法:

先把calc的内存提出来

2023陇剑杯_第36张图片

然后把导出来的文件重命名为2844.data,然后丢到GIMP里面分析,把高度拉长一点往下面划就可以看到了

2023陇剑杯_第37张图片

BF3

2023陇剑杯_第38张图片

在这里插入图片描述

一样是把这个进程dump出来

2023陇剑杯_第39张图片

调分辨率看到字符串

U2FsdGVkX195MCsw0ANs6/Vkjibq89YlmnDdY/dCNKRkixvAP6+B5ImXr2VIqBSp94qfIcjQhDxPgr9G4u++pA==

导出密钥:

2023陇剑杯_第40张图片

在这里插入图片描述

2023陇剑杯_第41张图片

TP

TP1

2023陇剑杯_第42张图片

条件锁定一下ip.src==172.31.0.2 && ip.dst == 172.31.0.1

下面回显长的翻一下

2023陇剑杯_第43张图片

2023陇剑杯_第44张图片

TP2

2023陇剑杯_第45张图片

越权漏洞:

2023陇剑杯_第46张图片

一个userid为1

另一个userid为2

2023陇剑杯_第47张图片

TP3

2023陇剑杯_第48张图片

2023陇剑杯_第49张图片

确实不知道这个有什么技巧,硬找

TP4

2023陇剑杯_第50张图片

后面已经可以看到反弹shell了

2023陇剑杯_第51张图片

追踪前面一个流:

2023陇剑杯_第52张图片

这里似乎就是写文件进去了,看一下是什么cve

2023陇剑杯_第53张图片

所以就是CVE-2022-21724:custom.dtd.xml

TP5

2023陇剑杯_第54张图片

2023陇剑杯_第55张图片

一个一个翻,就是fscan_amd64

HD

hd1

2023陇剑杯_第56张图片

找到一个数据包:

2023陇剑杯_第57张图片

在第一个数据包里面给了aes的密钥和偏移量​2023陇剑杯_第58张图片

去解密

2023陇剑杯_第59张图片

账号是admin

2023陇剑杯_第60张图片

解密就是admin123了

hd2

2023陇剑杯_第61张图片

2023陇剑杯_第62张图片

一个一个翻,找到了配置进去看

2023陇剑杯_第63张图片

全部丢进去解密

2023陇剑杯_第64张图片
​​

hd3

2023陇剑杯_第65张图片

直接用第二题的密钥解码cookie,发现有SSTI注入

2023陇剑杯_第66张图片

2023陇剑杯_第67张图片

并且回显在了页面上

我们找比较可疑的回显:

一个None和没东西的:

2023陇剑杯_第68张图片

2023陇剑杯_第69张图片

分别解密,发现None没啥

但是空的那个有执行whomai命令,请求包解密一次,回显解密一次得到用户red

2023陇剑杯_第70张图片

2023陇剑杯_第71张图片

hd4

2023陇剑杯_第72张图片

2023陇剑杯_第73张图片

加了一个/Index路由

​​

WS

ws1

2023陇剑杯_第74张图片

被入侵直接看端口

2023陇剑杯_第75张图片

Telnet协议,23端口往外发信息

所以源地址就是被攻击地址,所以就是192.168.246.28

ws2

2023陇剑杯_第76张图片

追踪一手TCP可以看到密码:

2023陇剑杯_第77张图片

ws3

2023陇剑杯_第78张图片

2023陇剑杯_第79张图片

ws4

2023陇剑杯_第80张图片

2023陇剑杯_第81张图片

SSW

ssw1

2023陇剑杯_第82张图片

这里确实有点算是知识盲区了

我们假设一句话是

 @eval($_POST['shell']);?>

那么我们用wireshark抓包就是:

​​

显而易见@ini_set("display_errors", "0");@set_time_limit(0)​前面的就是密码了

2023陇剑杯_第83张图片

所以这里的密码就是6ea280898e404bfabd0ebb702327b19f了

ssw2

2023陇剑杯_第84张图片

u1s1我真不知道这个有什么技巧

2023陇剑杯_第85张图片

纯靠硬找

2023陇剑杯_第86张图片

ad6269b7-3ce2-4ae8-b97f-f259515e7a91就是留存值

ssw3

2023陇剑杯_第87张图片

直接全部保存分析最大的包:

2023陇剑杯_第88张图片

改成exe,然后用py分析:(地址:https://github.com/extremecoders-re/pyinstxtractor)

2023陇剑杯_第89张图片

其中有一个2.pyc反编译后:

2023陇剑杯_第90张图片

发现有图片,直接运行之后可以发现test.jpg

报错了没关系还是生成了

然后misc那一套该长度

2023陇剑杯_第91张图片

EW

ew1

2023陇剑杯_第92张图片

第一眼以为是这个d00r.php

在这里插入图片描述

提交发现不对,所以就看哪里生成了这个d00r.php

2023陇剑杯_第93张图片

就找,可以找到这个ViewMore.php

ew2

2023陇剑杯_第94张图片

追踪d00r.php的HTTP数据包

2023陇剑杯_第95张图片

有一个扫描的,上面有一个ipconfig

2023陇剑杯_第96张图片

有好几个网卡

就是和nmap那个同一个网段就是192.168.162.130

ew3

2023陇剑杯_第97张图片

最下面有这个数据包:

在这里插入图片描述

直接拷下来运行php


file_put_contents('k3y_f1le',base64_decode('UEsDBBQAAQAAANgDvlTRoSUSMAAAACQAAAAHAAAAa2V5LnR4dGYJZVtgRzdJtOnW1ycl/O/AJ0rmzwNXxqbCRUq2LQid0gO2yXaPBcc9baLIAwnQ71BLAQI/ABQAAQAAANgDvlTRoSUSMAAAACQAAAAHACQAAAAAAAAAIAAAAAAAAABrZXkudHh0CgAgAAAAAAABABgAOg7Zcnlz2AE6DtlyeXPYAfldXhh5c9gBUEsFBgAAAAABAAEAWQAAAFUAAAAAAA=='));

2023陇剑杯_第98张图片

在这里插入图片描述

查看文件类型是zip,重命名为zip

打开发现需要密码

2023陇剑杯_第99张图片

密码就在上面

2023陇剑杯_第100张图片

打开就是flag

​​

IR

IR1

2023陇剑杯_第101张图片

ps aux​进程,有redis有nginx

2023陇剑杯_第102张图片

把文件都脱下来发现redis-server有后门,但是说是php后门(D盾和DF都没扫出来病毒)

2023陇剑杯_第103张图片

文件类型就是一个可执行的,没什么其他信息,主要是conf文件

2023陇剑杯_第104张图片

里面有个池有个地址

2023陇剑杯_第105张图片

发现确实是挖矿病毒

IR2

2023陇剑杯_第106张图片

域名就是上面conf文件里面的donate.v2.xmrig.com

2023陇剑杯_第107张图片

IR3

2023陇剑杯_第108张图片

攻击者利用的方法这种题目,主要是看服务器有什么服务

就这题来说,有redis​,nginx​,javaweb​三大主流服务

redis是刚才的挖矿再考的概率低一点,可以放最后看

最可疑的就是nginx了,看一下nginx的日志:

2023陇剑杯_第109张图片

发现是同一个ip大量爆破login页面,起初以为是弱口令,但是只访问了login页面,并没有访问其他页面,那就是shiro!!

还有一个javaweb

在这里插入图片描述

看一下他的日志

2023陇剑杯_第110张图片

确定是shiro漏洞了

但是答案是啥…

shirodeserialization​(没意思,叫shiro不好吗)

2023陇剑杯_第111张图片

IR4

2023陇剑杯_第112张图片

就是nginx日志里面频繁访问/login页面的那个ip

2023陇剑杯_第113张图片

2023陇剑杯_第114张图片

IR5

2023陇剑杯_第115张图片

mozilla/5.0(compatible;baiduspider/2.0;+http://www.baidu.com/search/spider.html)

2023陇剑杯_第116张图片

IR6

2023陇剑杯_第117张图片

维持权限的配置文件

/etc/passwd

/etc/shadow

/etc/sudo

一大堆

​​2023陇剑杯_第118张图片

一眼ssh

看一下没啥东西

2023陇剑杯_第119张图片

接着看ssh

在这里插入图片描述

发现连接到klai的ssh里了

IR7

2023陇剑杯_第120张图片

就是刚才的redis

2023陇剑杯_第121张图片

自动开启redis挖矿也算

你可能感兴趣的:(web安全,安全)