前言
Vulnhub之Lord Of The Root的Write-up。
Step 1
寻找靶机地址:
扫描开放的端口和服务:
扫描结果提示OSScan results may be unreliable because we could not find at least 1 open and 1 closed port,可能是靶机做了针对操作系统检测的防范。
Step 2
扫描结果只有一个22端口,只能先尝试登录:
ssh登录提示上面的界面,猜测是端口敲门,这点在DC-9靶机中也有涉及到。
所以我们通过knock 172.16.83.138 1 2 3
命令实现端口敲门,然后再次扫描靶机开放的端口:
果然多了一个1337端口,访问之后发现就是一张简单的图片:
尝试下爆破网站目录,发现/images目录下有3张照片,robots.txt文件中有一段奇怪的字符串:
这是base64加密的字符串,揭秘后得到:Lzk3ODM0NTIxMC9pbmRleC5waHA= Closer!
但是前半部分依然是base64加密的字符串,再次解密得到:/978345210/index.php
访问这个界面看到一个登录框:
Step 3
通过sqlmap的注入发现这里存在注入漏洞:
在Webapp数据库里发现Users表:
User表里找到5个用户的账户和密码:
用这5个账户密码登录之前的界面,全部跳转到同一个profile.php界面,而这个界面不用输入任何账户名和密码直接点击登录就可以跳转,所以这5个账户名和密码不是用在这里的。
将这5个账户名和密码用于爆破22端口ssh服务:
用找到的账户ssh登录成功:
Step 4
下一步就是提权了。使用sudo -l命令提示该用户没有sudo权限,这样SUID提权方法就无法使用了:
找了下资料,大佬给了2个工具网站:
这两个脚本将细致的检测许多可导致提权的配置问题,我们选一个尝试一下。将脚本下载到靶机上,然后运行:
脚本最后反馈了一个很眼熟的信息:
这不是MySQL的udf提权么,之前在Raven1中详细谈论过,步骤基本一致,有兴趣的可自行动手尝试。
关于MySQL数据库root账户的密码我们可以通过sqlmap在mysql数据库的user表中找到。