zoukankan      html  css  js  c++  java
  • ubuntu搭建vulhub漏洞环境

    0x01 简介

    Vulhub是一个面向大众的开源漏洞靶场,无需docker知识,简单执行两条命令即可编译、运行一个完整的漏洞靶场镜像。旨在让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本身。
    在这之前我们先要安装docker和docker-compose

    0x02 docker安装

    Docker是一个开源的容器引擎,它有助于更快地交付应用。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的任务,在Docker容器的处理下,只需要数秒就能完成。
    安装docker
    curl -s https://get.docker.com/ | sh
    Docker很多镜像动不动就1G或几百M,官方经常掉线。所以只能换国内源。
    国内的镜像源有

    {
      "registry-mirrors" : [
        "http://registry.docker-cn.com",
        "http://docker.mirrors.ustc.edu.cn",
        "http://hub-mirror.c.163.com"]
    }
    

    doeker常用命令
    镜像相关

    • docker search java:在Docker Hub(或阿里镜像)仓库中搜索关键字(如java)的镜像
    • docker pull java:8:从仓库中下载镜像,若要指定版本,则要在冒号后指定
    • docker images:列出已经下载的镜像
    • docker rmi java:删除本地镜像
    • docker build:构建镜像
      容器相关
    • docker run -d -p 91:80 nginx :在后台运行nginx,若没有镜像则先下载,并将容器的80端口映射为宿主机的91端口。
    •  -d:后台运行
      
    •  -P:随机端口映射
      
    •  -p:指定端口映射
      
    •  -net:网络模式
      
    • docker ps:列出运行中的容器
    • docker ps -a :列出所有的容器
    • docker stop 容器id:停止容器
    • docker kill 容器id:强制停止容器
    • docker start 容器id:启动已停止的容器
    • docker inspect 容器id:查看容器的所有信息
    • docker container logs 容器id:查看容器日志
    • docker top 容器id:查看容器里的进程
    • docker exec -it 容器id /bin/bash:进入容器
    • exit:退出容器
    • docker rm 容器id:删除已停止的容器
    • docker rm -f 容器id:删除正在运行的容器

    0x03 安装docker-compose

    Docker Compose是 docker 提供的一个命令行工具,用来定义和运行由多个容器组成的应用。使用 compose。我们可以通过 YAML 文件声明式的定义应用程序的各个服务,并由单个命令完成应用的创建和启动。简单说就是docker-compose是用python写的一个一个docker容器管理工具,可以一键启动多个容器。
    安装docker-compose
    pip install docker-compose

    0x04 Vulhub安装

    在安装docker和docker-compose后即可开始使用vulhub:
    下载vulhub漏洞目录

    git clone https://github.com/vulhub/vulhub.git
    

    进入相应漏洞文件夹执行docker-compose up -d即可

    cd vulhub/php/CVE-2019-11043
    docker-compose up -d
    

    如图所示,漏洞环境就这样一键搭建成功,节省了一大把时间,我们可以更专注于漏洞研究,漏洞环境使用完成记得关闭哦!执行如下命令移除环境:

    docker-compose down
    

    或者删除整个环境

    docker-compose down -v
    

    0x05 参考文章

    https://vulhub.org/#/docs/

  • 相关阅读:
    juc线程池原理(六):jdk线程池中的设计模式
    阻塞队列之一:BlockingQueue汇总
    阻塞队列之二:LinkedTransferQueue
    遍历并批量删除容器中元素出现ConcurrentModificationException原因及处置
    Spring 3.1新特性之一:spring注解之@profile
    ThreadPoolExecutor之三:自定义线程池-扩展示例
    守护线程
    cookie跨域问题汇总
    线程组ThreadGroup
    Eclipse中设置JDK、${user}变量
  • 原文地址:https://www.cnblogs.com/Xy--1/p/12767967.html
Copyright © 2011-2022 走看看