2023年陇剑杯部分writeup
2023-8-27 18:16:0 Author: xz.aliyun.com(查看原文) 阅读量:14 收藏

sevrer save_1

原题: 黑客是使用什么漏洞来拿下root权限的。格式为:CVE-2020-114514

先筛选http流量,发现前面一大段都是进行路径扫描的,直接找到较为靠后的几条流量进行tcp追踪

这条tcp流不仅有攻击的payload也可以在回显中看到spring,所以推测是spring的漏洞,结合payload,发现是CVE-2022-22965

flag:CVE-2022-22965

sevrer save_2

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

可以看到这里用shell,jsp下载了一个bbbb.sh

我们仔细查看bbbb.sh的内容可以发现就是执行一条反弹shell的命令

flag:192.168.43.128:2333

sevrer save_3

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

我们进入题目给出的Linux系统文件进行查看,先查看/etc/passwd

发现不仅有一个11用户还有一个guests用户,题目又说要找到病毒软件,所以我们进入/home/guests进行排查

发现一个可以的main文件,发现是elf文件,所以推测main文件就是黑客留下的病毒

flag:main

sevrer save_4

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

刚才在检查病毒的时候我们查看了/etc/passwd文件,发现了一个11的用户,所以我们推测11用户就是被病毒创建的用户

查看/etc/shadow文件就可以得到11的密码

flag:11:123456

sevrer save_5

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

当病毒运行的时候,还生成了一个log日志

日志中就记录了外网的ip

flag:172.105.202.239

evrer save_6

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

同样是在日志中有提示

.idea中生成了文件

flag:lolMiner,mine_doge.sh

sevrer save_7

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

矿池的地址就在病毒运行后生成的mine_doge.sh文件当中

flag:doge.millpools.cc:5567

sevrer save_8

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

这题也很简单,也在mine_doge.sh文件当中,就是WALLET的内容

flag:DOGE:DRXz1q6ys8Ao2KnPbtb7jQhPjDSqtwmNN9

Wireshark1_1(这题很简单类似签到题)

原题: 被入侵主机的IP是?

直接tcp.connection.synack去筛选也只有一条数据

就可以确认被入侵的主机ip了,或者直接浏览数据包也可以发现,被入侵的主机ip192.168.246.28

flag:192.168.246.28

Wireshark1_2

原题: 被入侵主机的口令是?

直接找到telnet的登录流量进行tcp追踪,tcp0中就有被入侵的主机口令

flag:youcannevergetthis

Wireshark1_3

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

也是tcp0,虽然有点乱码但是也可以判断出第二个文件夹的名称是Downloads

flag:Downloads

Wireshark1_4

原题: /etc/passwd中倒数第二个用户的用户名是?

还是tcp0

flag:mysql

SmallSword_1

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

首先大致浏览一下数据包,可以发现这个数据包的主要攻击流程是通过sql注入写入一个木马文件

可以从antsword的原理来看,请求头就是连接的密钥

也可以通过写入木马的请求来看,直接把密钥摆出来了

flag:6ea280898e404bfabd0ebb702327b18f

SmallSword_2

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

24475中,将提交的参数进行base64解码就可以知道,攻击者在hacker.txt中留下ad6269b7-3ce2-4ae8-b97f-f259515e7a91

flag:ad6269b7-3ce2-4ae8-b97f-f259515e7a91

SmallSword_3

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

首先文件->导出->http对象->Save All->保存到文件夹中

导出到文件夹发现,info(12).php的文件大小特别大,用文本打开发现是可执行文件,我们拖入winhex进行详细分析

发现从第三位开始是4D5A90EXE文件的头部信息特征,所以我们删除前面三个,将其另存为exe执行

运行之后提示图片保存成功:

但是我的并没有生成图片后面也一直没有解决

看了其他大佬的wp发现会生成一张jpg文件,然后jpg文件中还藏着一张png文件,需要爆破才可以得到最终的flag

ez_web_1

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

一开始以为就直接是d00r.php但可惜并不是,也就是说d00r.php是后续生成的,所以我们只需要简单的构造一下条件就可以找到自带的后门文件

使用语句tcp contains "d00r.php"

就可以发现除了d00r.php出现在uri中,还有一条POST请求,也存在d00r.php

发现d00r.php是由ViewMore.php生成的

flag:ViewMore.php

ez_web_2

原题: 服务器的内网IP是多少?

选中d00r.phpPOST请求流量追踪http就可以找到

flag:192.168.101.132

ez_web_3

原题: 攻击者往服务器中写入的key是什么?

还是上一题的http流,直接拖到最下面可以看到写入了一个文件

但是直接将内容进行base64-decode会发现解码出来还是乱码,将解码后的内容保存到文件当中,将这个文件放入winhex里面分析会发现这是一个zip文件,而且这个zip文件还是被加密的,而密码也可以在http流中找到

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

tcpdump_1

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

首先我们先筛选http"往后面的部分看可以看到很多POST请求进行密码爆破

我们可以看到爆破是23794-41654的,然后我们查看详细内容,发现如果密码是错误的,那么服务器就会返回用户名或密码错误,然后我们构造如下语句

http && !http.request.uri contains "login" && !tcp contains "用户名或密码错误" && http.response.code !=404

首先将login登录包筛除,并且将返回了报错信息的回显包也筛出,包括前面有一段爆破路径的回显包也筛除掉,此时只剩下一些没有报错信息,并且不是登录包的信息和那条登录成功的回显包,那么我们只用在剩下的的数据中找到23794-41654这个区间的包就可以找到我们正确的用户名和密码

找到这个包,然后追踪http

就可以获得答案

flag:TMjpxFGQwD:123457

tcpdump_2

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

继续筛选http流量,我们可以发现刚进入zyplayer系统的时候cookie的第三个参数userid=2,然后页面回显的是测试人员此时我们都可以猜到userid=1就越权成功了

accessToken=f412d3a0378d42439ee016b06ef3330c; zyplayertoken=f412d3a0378d42439ee016b06ef3330cQzw=; userid=1
md5
383c74db4e32513daaa1eeb1726d7255

flag:383c74db4e32513daaa1eeb1726d7255

tcpdump_3

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

因为题目说明是JDBC漏洞读取了应用配置文件,所以我们先将http流量筛除

然后对数据流进行追踪(找靠近当时进行登录数据库连接的tcp流量进行追踪),追到流1601发现是读取密码的那条流量

flag:zyplayer:1234567

tcpdump_4

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

根据jdbc的连接库发现是 postgresql ,查到最近的CVE对应的是 CVE-2022-21724(ps:这里没找出来看了其他师傅的wp)

根据后面的数据包可以推断出攻击文件是custom.dtd.xml

flag:CVE-2022-21724:custom.dtd.xml

tcpdump_5

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

因为我们从上一题都看到了反弹shell的命令所以我们直接进行筛选tcp.port == 9999,然后进行tcp追踪流就可以找到这一条

所以这里下载的工具就是fscan

flag:fscan

hacked_1

原题: admIn用户的密码是什么?

首先筛选http数据,可以发现并没有很多条流量,而且login的包也很少,但是将usernamepassword进行解码发现解码过后还是乱码并不是正常的字符串,此时怀疑是不是前端对其进行加密了,找到第一次访问这个页面的流量

发现是前端用进行了加密,我们获得了keyiv,然后利用在线工具就可以成功获得密码

flag:flag{WelC0m5_TO_H3re}

hacked_2

原题: app.config['SECRET_KEY']值为多少?

直接筛选tcp contains "SECRET_KEY"

将其解码就可以得到

flag:ssti_flask_hsfvaldb

hacked_3

原题: flask网站由哪个用户启动?

这题没有做出来,看了大佬的wp发现是在tcp76处,将用户的token进行解密就可以得到启动的用户

解密得到

{'flag': 'red\n', 'username': "{%if session.update({'flag':lipsum['__globals__']['__getitem__']('os')['popen']('whoami').read()})%}{%endif%}"}

flag:red

hacked_4

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

tcp82这里比较可疑

flag:Index

总结

今年的陇剑杯还是很不错的,题目质量非常高,难度也还好 虽然我有很多道题没有做出来,都是偏blue team,但是也能发现自己还是又很多没有掌握的,很可惜今年没能进入线下 来年继续加油


文章来源: https://xz.aliyun.com/t/12806
如有侵权请联系:admin#unsafe.sh