2024第一届Solar杯应急响应挑战赛-WriteUp
前言
CTF是数据库4-5、逆向破解-1、综合应急-2未解出,然后理论是Windows的应急响应,就拿到了300,这个成绩和排名真的是非常的可惜。最终成绩是49名拿到了一个优秀奖。
签到
本题作为签到题,请给出邮服发件顺序。
1 | Received: from mail.da4s8gag.com ([140.143.207.229]) |
把邮箱地址挨个拿出来即可
flag{mail.solar.sec|mail.da4s8gag.com|newxmmxszc6-1.qq.com}
日志流量-1
题目文件:tomcat-wireshark.zip/web
新手运维小王的Geoserver遭到了攻击:
黑客疑似删除了webshell后门,小王找到了可能是攻击痕迹的文件但不一定是正确的,请帮他排查一下。
flag格式 flag{xxxx}
流量分析中发现b.jsp的流量最大,而且都是加密内容,这里直接反编译一下发现flag,反编译这里需要反编译的路径是在apache-tomcat-9.0.96\work\Catalina\localhost\ROOT\org\apache\jsp
,根目录给的那俩是不能用的。
日志流量-2
题目文件:tomcat-wireshark.zip/web
新手运维小王的Geoserver遭到了攻击:
小王拿到了当时被入侵时的流量,其中一个IP有访问webshell的流量,已提取部分放在了两个pcapng中了。请帮他解密该流量。
flag格式 flag{xxxx}
这段代码很清晰,是AES的加密,没指定加密模式应该是ECB,然后key是a2550eeab0724a69
1 | String code="ZiFsXmEqZ3tBN2I0X1g5ektfMnY4Tl93TDVxNH0="; String xc="a2550eeab0724a69"; 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; }} |
挨个分析到流6
他执行的对应命令是
拿到的返回内容是
日志流量-3
题目文件:tomcat-wireshark.zip/web
新手运维小王的Geoserver遭到了攻击:
小王拿到了当时被入侵时的流量,黑客疑似通过webshell上传了文件,请看看里面是什么。
flag格式 flag{xxxx}
分析完2紧接着有个很大的流量,解密发现
他上传了一个pdf,我这里直接保存pdf然后改后缀打开拿到flag
内存取证-1
题目文件:SERVER-2008-20241220-162057
请找到rdp连接的跳板地址
flag格式 flag{1.1.1.1}
RDP是远程桌面,端口一般都是3389,直接分析网络即可。
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile Win7SP1x64 netscan |findstr 3389 |
flag{192.168.60.220}
内存取证-2
题目文件:SERVER-2008-20241220-162057
请找到攻击者下载黑客工具的IP地址
flag格式 flag{1.1.1.1}
我是通过网络的形式,通过下面命令拿到下面可疑信息
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile=Win7SP1x64 netscan |
我去查询第一个的时候发现他是一个每过的ip,直接尝试提交,拿到flag
flag{155.94.204.67}
内存取证-3
题目文件:SERVER-2008-20241220-162057
攻击者获取的“FusionManager节点操作系统帐户(业务帐户)”的密码是什么
flag格式 flag{xxxx}
在这里发现一个pass.txt,判断大概率在这里。这里直接导出
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile=Win7SP1x64 filescan |findstr pass.txt |
flag{GalaxManager_2012}
内存取证-4
题目文件:SERVER-2008-20241220-162057
请找到攻击者创建的用户
flag格式 flag{xxxx}
直接列出所有用户,我尝试Testuser发现错误,Administrator和Guest是系统自带的,ASP.NET似乎是微软的一个后端框架,尝试这个成功。
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile Win7SP1x64 printkey -K "SAM\Domains\Account\Users\Names" |
内存取证-5
题目文件:SERVER-2008-20241220-162057
请找到攻击者利用跳板rdp登录的时间
flag格式 flag{2024/01/01 00:00:00}
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile Win7SP1x64 pslist|findstr rdp |
一直提交这个一直错误,一想他是UTC,尝试提交国内时区的即可成功flag{2024/12/21 00:15:34}
内存取证-6
题目文件:SERVER-2008-20241220-162057
请找到攻击者创建的用户的密码哈希值
flag格式 flag{XXXX}
根据取证4直接看hash
1 | E:\TEMP>volatility -f SERVER-2008-20241220-162057.raw --profile Win7SP1x64 printkey -K "SAM\Domains\Account\Users\Names" |
flag{5ffe97489cbec1e08d0c6339ec39416d}
数据库-1
题目附件:mssql、mssql题-备份数据库
请找到攻击者创建隐藏账户的时间
flag格式 如 flag{2024/01/01 00:00:00}
虚机没提供密码,可以参考这篇文章来直接进入虚机
通过动态取证的方式,进入虚拟机,在登陆的时候发现有个test$用户可以选择,一看就是个后门用户,这里通过命令拿到flag
flag{2024/12/16 15:24:21}
数据库-2
题目附件:mssql、mssql题-备份数据库
请找到恶意文件的名称
flag格式 如 flag{.}
一眼矿
flag{xmrig.exe}
数据库-3
题目附件:mssql、mssql题-备份数据库
请找到恶意文件的外联地址
flag格式 如 flag{1.1.1.1}
火绒剑直接梭
flag{203.107.45.167}