靶机下载
靶机下载地址:
https://www.vulnhub.com/entry/dc-1,292/
探测目标
使用kali自带的netdiscover命令探测存活主机。
发现192.168.56.109就是目标机
端口扫描
使用nmap扫描
发现开启了22 ssh和 80端口
我们呢先看下80端口
这是个drupal的cms
目录扫描
使用dirb扫描
用法 dirb 目标 字典路径
查看robots.txt
访问/CHANGELOG.txt 出错,访问/UPGRADE.txt来确认升级情况也能判断出版本
发现是drupal 7
漏洞利用
我们使用metasploit对漏洞进行利用
1.启动metasploit,搜索drupal模块
搜索这个cms在msf能利用的方法
可以依次利用这里选择第五个 drupalgeddon2
查看需要配置的参数
发现RHOSTS需要配置
开始攻击,执行直接得到shell
得到一个sessions 打开session来连接靶机
获取一个交互式的shell
python -c 'import pty; pty.spawn("/bin/bash")'
得到flag1
使用suid提权
Linux提权——利用可执行文件SUID
每天一个Linux命令(20)–find命令之exec
因www-data权限很低,我们接下来开始提权,
找到一个属于root的有s权限的文件
find / -perm -u=s -type f 2>/dev/null
查看find是否可以
进入/usr/bin目录下发现find可以
创建一个文件 xp,
直接使用命令: find xp -exec 'whoami' \;
能直接带入命令,且是root权限
执行:find xp -exec '/bin/sh' \;
进入/home发现flag4
在/var/www文件夹下发现flag1.txt,内容提示寻找站点的配置文件
Drupal的默认配置文件为 /var/www/sites/default/settings.php,查看发现了flag2和数据库的账号密码,我们先进入数据库查看。
直接查找默认的Drupal user 表,发现admin用户。
添加一个管理员权限的用户
查看靶机的版本:cat /var/www/includes/bootstrap.inc | grep VERSION
确定Drupal版本为7.24
继续搜索drupapl可利用的脚本,
发现攻击脚本适用于7.31以下,所以适合7.24版本
利用drupal7.0版本漏洞增加有admin权限的用户:admin1/admin1
python /usr/share/exploitdb/exploits/php/webapps/34992.py -t http://192.168.56.109 -u admin1 -p admin1
使用新添加的用户admin1/admin1登录网站,在content模块下,找到flag3
得到了flag3的信息 线索:
(FIND the passwd - but you’ll need to -exec that command to work out how to get what’s in the shadow.)
根据线索,flag4应该在/home/flag4下