闽盾杯 2024 决赛
B
第一题提示 PMA。dirsearch 扫到 /phpmyadmin,root/root 登录,数据库里有第一个 flag。同时还扫到 /www.zip。
第二题提示 flag 在桌面上。注册一个帐号。在数据库里把 admin 帐号的 bcrypt 加密的密码换成刚注册的帐号的密码,登录 admin 帐号。尝试直接上传 php,但是被阻止了。结合 www.zip 里的源码发现可以通过上传模版的方式上传 .php。这里有一个坑,这个题目的 CMS 好像会对格式不对的模板返回 404,所以最好直接基于 www.zip 里的默认模板删掉 die 加上 eval。上传之后访问对应的模板文件目录即可 get shell。但是这时用蚁剑连接的话输出会带奇怪的字符串,直接访问发现有一行报错找不到 doAction 函数,删掉这一行之后 shell 的输出就正常了。在 lalala 用户的桌面上可以看到第二个 flag。(不过这题应该也有直接利用 phpMyAdmin 来 get shell 的做法,但是我菜没想到)。
第三题提示要提权。思路是上线到 msf 然后 local_exploit_suggester。tasklist 发现有火绒,所以用静态免杀的 Sliver 马上线,再用 Sliver 上线到 msf。local_exploit_suggester 扫出好几个洞,除了 bypassuac 那几个(因为 lalala 不在组里)之外挨个试过去,具体用的哪个我也忘了,总之就是提权到了 SYSTEM。在 Administrator 的桌面上看到第三个 flag。
第四题提示查看杀毒软件的设置。不过首先 msf 属实难用,所以先在 msf 里跑一下之前上传的马,以 SYSTEM 权限上线到 Sliver。这里又有一个坑,直接用 msf 的 execute 执行的话,上线到 Sliver 会有奇怪的问题,需要用 msf 的 shell 命令起一个 cmd 再在里面运行马才能正常上线。上线之后把第三题的 flag.txt 下载下来(因为编码问题没法直接看)。可以看到里面有 Radmin 的帐号和密码。把 Radmin 的客户端下载下来,用帐号和密码登录进桌面,就可以从火绒的信任区里看到第四个 flag 了。
最后,在任务栏上右键关闭火绒,上传 iox 起一个代理就可以开做 C 题了。在 Administrator 的下载文件夹里也可以找到 E 题的 OpenVPN 配置。
D
先把 www 目录下载下来用 D 盾扫,扫到两个后门。第一个 /temp.php 不是题目要的,第二个 /sys/update.php 才是。
第一题问后门第一次被访问的时间。在 C:\nginx 下找到 Nginx 的 log,搜索 /sys/update.php 找到时间。
第二题问上传后门的用户和 IP。后门是用 FTP 上传的。桌面上可以看到 FileZilla,在 FileZilla 的安装目录下可以看到 log,搜索 /sys/update.php 找到 IP 和用户。
第三题问后门执行的程序名称。在 C 盘「紧急备份」文件夹下看到 Sysmon 的 log。用 cat xxx.log | grep ^User\: | sort | uniq 统计所有出现过的用户。因为后门是本地运行的,所以运行恶 意程序的用户应该是不带任何 hostname 的本地 Administrator 用户,所以直接在日志里搜索 User: Administrator 就可以找到了。