2024长城杯溯源取证wp
背景材料
您的同事李白在运维一台部署了移动应用服务端的linux服务器时发现了异常,好像被黑客攻击了。小李通过简单分析,发现可能是由于公司的移动应用和其服务端程序都存在安全问题导致的。小李将当天可能与攻击相关的流量导出,并与移动应用一起打包压缩,你可以下载分析,也可以登录此服务器进行攻击溯源、排查等,提供了SSH和VNC访问的方式供您和您的团队进行分析取证。
关卡一
黑客攻击此服务器所使用的2个IP分别是什么(ascii码从小到大排列,空格分隔)
很容易可以在流量包中找到两个恶意ip,一个进行了sql注入,一个进行恶意命令执行
关卡二
存在安全问题的apk中使用的登录密码是什么?
我们这里采用jadx对apk进行逆向,然后在源文件中找到登陆密码
这里的密码很容易就能看出是password663399
,当然也可以去流量包中找登陆操作,也是一样的
关卡三
黑客尝试上传一个文件但显示无上传权限的文件名是什么?
我们回到我们的流量包,找上传相关事件,直接搜索POST数据包,并且搜索upload关键词,然后通过查找返回状态码为200的数据包
关卡四
黑客利用的漏洞接口的api地址是什么?(http://xxxx/xx)
根据前面对流量包的观察,我们可以很清楚的知道利用的url为http://202.1.1.66:8080/api/upload
关卡五
黑客上传的webshell绝对路径是什么?
我们沿着刚刚的上传点往下分析,继续找状态码为200的数据包,一个个分析
我们发现了这个流量,显而易见,我们找到了jsp马,提交我们的绝对路径即可,这里没有靶机,我们没办法找到对应的绝对路径,只能看wp的路径
/usr/local/tomcat/webapps/ROOT/static/s74e7vwmzs21d5x6.jsp |
关卡六
黑客上传的webshell的密码是什么?
白给题,根据刚刚的流量包可以很轻松的知道我们的webshell连接密码
当然这里比较难看出来,我们可以继续看后续流量包的连接密码,我们直接搜索s74e7vwmzs21d5x6.jsp
,如下所示
我们可以看到这里有很多bing_pass
,所以我们猜测这里的密码就是bing_pass
关卡七
黑客通过webshell执行的第一条命令是什么?
我们这里分析可知,这是很经典的冰蝎流量,我们首先要找的就是我们的密钥
又我们这个代码可知,我们的密钥是随机产生的,但是我们的流量包中出现了两个特殊的字符串,如下所示
我们拿去尝试解密第一个状态码为200的返回包,可以发现密钥是b99f657b04941030
格式化后我们发现执行的是pwd命令
关卡八
黑客获取webshell时查询当前shell的权限是什么?
我们在pwd命令下可以看见我们的执行shell的权限是tomcat
关卡九
利用webshell查询服务器Linux系统发行版本是什么?
继续查询后续流量包,挨个解密,我们可以看到发行版本如下所示
关卡十
黑客从服务器上下载的秘密文件的绝对路径是什么?
我们这里直接看ip为202.1.1.66的数据包,因为要下载的话,我们的源头肯定十靶机ip,所以我们直接过滤对应的ip即可
我们找稍微比较大的数据包,追踪TCP流即可,发现我们的本地路径为/static/secert.file
/usr/local/tomcat/webapps/ROOT/static/secert.file |
关卡十一
黑客通过反连执行的第一条命令是什么?
我们找到对应的流量包,对传入的命令进行反编译,如下所示
我们可以看到这就是一个执行反弹shell的class文件,我们可以看到反连的地址为202.1.1.129,所以我们直接定位到这一部分流量,查找执行的命令即可
所以我们的第一个命令是cat /etc/passwd
关卡十二
黑客通过什么文件修改的root密码(绝对路径)
我们看第二条命令,黑客将新密码通过echo写入/etc/passwd
文件中,我们可以知道这就是黑客修改的绝对路径
关卡十三
黑客设置的root密码是多少?
直接用hashcat解密即可
hashcat -m 1800 -a 0 '$6$KHysqjWMnoaHJ4QW$p1cMTekiYb/6xA2u7j4jAD3m5shTPlPAtM6jyoex73MxxHXlms4X0874ml/gw6.LETsMs5oXLWyGeSAddx2N..' /usr/share/wordlists/rockyou.txt |
最后解出来的密码是123456
关卡十四
黑客留下后门的反连的ip和port是什么?(ip:port)
根据刚刚反编译的代码,我们可以很容易知道ip和port,但是我们上交后发现不对,我们继续看有没有别的信息
我们可以看到后续连接端口变成了9999,我们可以猜测连接的端口为9999
,答案正确
关卡十五
黑客通过后门反连执行的第一条命令是什么?
查找第一个9999端口的tcp包,可以发现执行的命令是rpm -qa | grep pam
关卡十六
黑客通过什么文件留下了后门?
由于没有靶机,但是给了我们这两个附件,我们直接交就ok了
关卡十七
黑客设置的后门密码是什么?
我们直接对so文件进行逆向,用ida直接逆向,看看有没有密码,直接shift+f12看字符串
密码是ssh_back_pwd
关卡十八
黑客的后门将root密码记录在哪个文件中?(绝对路径)
同样通过ida可以找到,如下所示