靶机下载地址
信息收集
主机探测
sudo nmap -sn 10.10.10.0/24 ,获取目标靶机IP地址10.10.10.20
初步扫描
sudo nmap -sT --min-rate 10000 -p- 10.10.10.20
可知22,80端口开放
详细信息扫描
sudo nmap -sT -sC -sV -O -p 22,80 10.10.10.20
可知以下,看文件猜测可能是Drupal CMS
22/tcp open ssh OpenSSH 7.4p1 Debian 10+deb9u1 (protocol 2.0)
80/tcp open http Apache httpd
|_http-server-header: Apache
|_http-generator: Drupal 7 (http://drupal.org)
| http-robots.txt: 36 disallowed entries (15 shown)
| /includes/ /misc/ /modules/ /profiles/ /scripts/
| /themes/ /CHANGELOG.txt /cron.php /INSTALL.mysql.txt
| /INSTALL.pgsql.txt /INSTALL.sqlite.txt /install.php /INSTALL.txt
|_/LICENSE.txt /MAINTAINERS.txt
|_http-title: Welcome to DC-8 | DC-8
WEB指纹识别
访问80端口发现确实是Drupal
渗透过程
SQL注入
点击Contact Us,在URL栏发现可疑参数
输入引号发现报错,存在SQL注入点,并且有报错的完整信息,可以利用报错注入。
漏洞利用
使用SQLMAP爆破数据库获取到用户名密码
admin $S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z
john $S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF(turtle)
后台登录
使用john turtle登录后台
反弹shell
在contact us里面可以写入反弹shellphp代码,攻击机开启监听,我这里直接用的kali自带的反弹shell
可以看到成功反弹代理
权限提升
发现exim4具有SUID权限,exim具有一个本地提权漏洞,影响范围4.87-4.91。
下载该脚本上传到靶机tmp目录,输入./46996.sh -m netcat命令启动,即可获得root权限。
总结
通过SQL注入拿到一个后台登录用户,通过后台功能修改页面为PHP代码然后反弹shell,最后通过exim4的漏洞提权,总体来说难度适中。