靶场地址:第二章日志分析-mysql应急响应 · 玄机 - EDISEC
本次靶场要求提供的flag如下:
- 黑客第一次写入的shell flag{关键字符串}
- 黑客反弹shell的ip flag{ip}
- 黑客提权文件的完整路径 md5 flag{md5} 注 /xxx/xxx/xxx/xxx/xxx.xx
- 黑客获取的权限 flag{whoami后的值}
Flag1
黑客第一次写入的shell flag{关键字符串}
查看网络情况,只开放了数据库和远程登录端口
MySQL通过弱口令没有登进去,并且/var/log/mysql/
路径下没有存储MySQL日志,但是在/var/log/
日志中发现了Apache日志,并且有网站访问记录
导出日志文件,可以看到请求参数里面有很多SQL语句,可以判断是SQL注入攻击
使用河马对Apache的Web根目录进行扫描,发现有两个疑似后门文件,其中sh.php
就是黑客上传的Webshell,里面的内容是一句话木马
./hm scan /var/www/html
在该Webshell文件注释中拿到flag
flag{ccfda79e-7aa1-4275-bc26-a6189eb9a20b}
这里再回到日志看下,可以看到最新一次sh.php
请求记录是在search.php
后,并且未截图的日志内容中还有通过search.php
请求参数实现SQL注入攻击的日志,可以推断该Webshell也是通过search.php
上传的
Flag2
黑客反弹shell的ip flag{ip}
在日志的最后,可以看到用恶意函数执行了一段Base64加密的代码
对代码进行Base64解码,得到了反弹shell的目标服务器地址
用地址拼接成flag
flag{192.168.100.13}
回到系统中,在/tmp
目录下可以看到上传的反弹shell文件1.sh
,真实响应需要对该文件进行清除
Flag3
黑客提权文件的完整路径 md5 flag{md5} 注 /xxx/xxx/xxx/xxx/xxx.xx
在Apache日志中可以看到有使用mysqludf.so
插件,该插件通常用于MySQL的UDF提权,可以判断黑客使用的也正是UDF提权
回到Web根目录,在common.php
文件中可以找到数据库的连接账号和密码,可以登入数据库
由于黑客使用的是插件提权,我们找到数据库的插件目录
show variables like 'plugin%';
进入插件目录,可以看到所使用的插件mysqludf.so
,以及和他同样是在2023年使用过的另一个插件udf.so
,后者查看内容是黑客创建提权后门,这样就获取到了完整提权文件路径
/usr/lib/mysql/plugin/udf.so
对文件完整路径进行md5编码得到flag
flag{b1818bde4e310f3d23f1005185b973e7}
Flag4
黑客获取的权限 flag{whoami后的值}
再次查看Apache日志,可以看到黑客使用提权插件mysqludf.so
创建了一个提权函数sys_eval
,并且在这之后都执行了whoami
指令,应该是判断提权后的权限
回到数据库,直接用他创建的函数执行whoami
指令,返回了提权后的mysql
用户名
根据题目要求拼接用户名得到flag
flag{mysql}