扫描存活主机,很明显就是192.168.52.134
扫描开放端口,发现开放80,22,111
访问下80端口,发现靶机是用Drupal搭建的站点,所以我们想到利用msf中搜索一下Drupal,看是否具有可利用的exp
这里准备直接使用msf,可以看到这里存在很多已经发现的漏洞,这里我们使用18年的
看看需要配置那些参数,
配置下攻击ip就可以了,set rhosts 192.168.52.134Run就可以了
拿下权限看看列表下文件
第一个flag找到了
这里给了各提示每个好的cms都有个好的配置,所以我们可以看下配置文件有什么线索
配置文件在 sites/default/settings
看看里边存在第二个flag
并且发现数据库的账户密码
先进入自带的shell模块,然后利用python的pty模块获得一个shell,然后进入数据库
python -c "import pty;pty.spawn('/bin/bash')"
正常的使用数据库use drupaldb,正常的查user表
但是不知道使用什么加密的
一般cms系统都会把加密脚本文件放在文件目录下,scripts文件
进入scripts文件没有发现解密办法,但发现一个password-hash文件,我们可以自动生成一个自己加密的密码,到数据库替换密码。
我生成了一个以为名字为密码的加密密码
php scripts/password-hash.sh qizhirui
生成的hash值
去数据库更新下
update users set pass='$S$Ddva7KquShWHIAvBhkr/fDs1wOdYGi2qG8wf' where name='admin';
再登录就可以看到flag3,提示特殊PERM将有助于找到密码-但你需要-执行该命令,以解决如何得到什么在passwd中
根据提示拿到flag4
得到提示说以同样的方式找到在root下的flag。
那就要进行提权了,接下来查找具有root权限的命令
SUID提权:
前提条件:系统必须除了默认设置之外,其它被设置了SUID的程序
这个程序还具备运行其它程序的功能(主要云心那个shell)
可以被用来进行SUID提权的主要程序
Nmap vim find bash more less nano cp
find /perm -u=s -type f 2>/dev/null//找所有有s权限的,
find / -exec '/bin/sh' \;
最后到root找到我们想要的