Vulhub靶場搭建教程

Vulhub靶機環境搭建

Vulhub地址: Vulhub下載地址

一、所需環境

1、Ubuntu16.04

2、最新版本Docker

二、安裝之路

1、下載Ubuntu16.04下載地址(迅雷下載64位,下載快速)PS:千萬別用32位,32位環境很多64位程式都不支援。

2、VM安裝Ubuntu虛擬機、

選擇典型安裝,如下圖所示:

並且提前裝載好ISO,如下圖所示:

下一步配置好主機名稱,賬戶和密碼,千萬別進去配置,不然巨麻煩,你如果不懂可能配置一個小時還沒安裝好,我這種方法,不需要進去點擊任何操作,它自動把系統配置好了,10分鐘左右系統就裝好了,如下圖所示:

如下代表系統安裝好了

2、Ubuntu配置

  • 坑點1:Ubuntu虛擬機裝好了,默認是沒有SSH的,你是無法通過ssh登陸配置的。
  • 坑點2:且默認鏡像源是載入CD盤,導致你無法通過apt-get install安裝openssh。
  • 坑點3:且默認鏡像源是美國的,境內的網路是無法去訪問美國源下載,所以需要替換成境內鏡像源,
  • 坑點4:但是尷尬點又來了,你想把境內源(內容很多,手打不現實)通過虛擬機拷貝,發現你是無法進行拷貝操作的。
  • 坑點5:Ubuntu默認root賬戶是隨機密碼,所以你不知道root什麼密碼,無法使用root賬戶進行安裝?

解決方案:

Ubuntu中國鏡像源:

deb-src //archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb //mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src //mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb //mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src //mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb //mirrors.aliyun.com/ubuntu/ xenial universe
deb //mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb //mirrors.aliyun.com/ubuntu/ xenial multiverse
deb //mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb //mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src //mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb //archive.canonical.com/ubuntu xenial partner
deb-src //archive.canonical.com/ubuntu xenial partner
deb //mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src //mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb //mirrors.aliyun.com/ubuntu/ xenial-security universe
deb //mirrors.aliyun.com/ubuntu/ xenial-security multiverse

sudo apt-get install apt-transport-https ca-certificates software-properties-commonsudo add-apt-repository \

(1) 宿主機搞個國外的VPN(沒有VPN就試試運氣能不能訪問把,哈.哈),讓虛擬機通過NAT出去上國外的網,將/etc/resolv.conf的首DNS改成8.8.8.8

(2) 將root密碼進行修改
使用sudo passwd命令進行修改,連續輸入三次當前賬戶的密碼,root密碼就和當前賬戶密碼一樣。
然後使用su – root切換到root賬戶輸入root密碼進行安裝 ,中間必須有空格。

(3) 將默認源/etc/apt/sources.list 載入CD盤的配置刪除,就是這行

(4) 刪除完畢之後,更新鏡像源,使用命令sudo apt-get update 進行更新

(5) 更新完之後,你就可以安裝opensssh了,安裝opesn命令:sudo apt-get install openssh-serverssh安裝完之後,ssh服務自動起來,就可以用xshell連接了

(6) ssh登陸上來,首先切換到root用戶,然後將默認源進行備份,將上面的中國源進行替換。cd /etc/apt/ 切換到鏡像目錄mv sources.list source.yuanshi.list

這時,再用sz命令將本地的source.list上傳到當前目錄
(7) 輸入sz命令提示不存在該命令,按照提示安裝即可。
(8) 將默認源替換成中國源之後,隨後就更新鏡像源,更新命令sudo apt-get update
(9) 這時,你就已經基本配置好Ubuntu環境了,接下來開始安裝docker環境。

3、安裝docker存儲庫

(1)安裝軟體包以允許 apt 通過 HTTPS 使用存儲庫,輸入以下命令安裝軟體包:
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
(2)添加 Docker 官方的 GPG 密鑰:
curl -fsSL //download.docker.com/linux/ubuntu/gpg | sudo apt-key add - header
確保現在系統已經擁有密鑰指紋的後八個字元串:9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 ,輸入指令:
sudo apt-key fingerprint 0EBFCD88
顯示結果:

pub   4096R/0EBFCD88 2017-02-22
      密鑰指紋 = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid                  Docker Release (CE deb) <[email protected]>
sub   4096R/F273FCD8 2017-02-22

(3)安裝docker穩定版倉庫:

sudo add-apt-repository "deb [arch=amd64] \
//download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

4、安裝docker

(1)更新apt鏡像源索引,命令如下:
sudo apt-get update
(2)安裝最新版的 Docker CE(docker社區版)
sudo apt-get install docker-ce
(3)如果不想安裝最新版的 Docker,可以先查看可安裝版本
apt-cache madison docker-ce
顯示結果如下:

列表的內容取決於啟用了哪個存儲庫。第二列是Docker版本號。第三列是存儲庫名稱,它指明了軟體包來自哪個存儲存儲庫,並通過擴展其穩定性級別。要安裝特定版本,需要將本本字元串附加到包名稱。
(4)安裝指令如下:
sudo apt-get install docker-ce=<VERSION>
(5)通過運行 hello-world 鏡像驗證 Docker CE 已被正確安裝
sudo docker run hello-world
若出現以下資訊則表明安裝成功:

  • 安裝pip,命令如下:
    curl -s //bootstrap.pypa.io/get-pip.py | python3
  • 安裝docker compose
    pip install docker-compose

5、安裝vulhub

在根目錄下新增一個文件夾,然後下載vulhub解壓
下載項目命令:wget //github.com/vulhub/vulhub/archive/master.zip -O vulhub-master.zip(這裡中國下載很慢,可以找我要已經下載好的Vulhub-54Mb)

unzip vulhub-master.zip
cd vulhub-master

如下,就代表vulhub漏洞環境下載下來了,幾乎涵蓋百分之80常見可驗證漏洞環境。

6、Vulhub使用

這裡演示activmq的漏洞cve-2016-3088為例子,Vulhub的便利就是在於不要我們去搭建環境,直接使用docker環境編譯漏洞環境,就可啟動漏洞環境。
首先進入該漏洞環境命令如下:
cd activemq/CVE-2016-3088/

啟動漏洞環境命令
docker-compose up -d
備註:

docker-compose up -d (推薦)或者 docker-compose build
PS: 為什麼 docker-compose build是可選的?
docker-compose up -d運行後,會自動查找當前目錄下的配置文件。如果配置文件中包含的環境均已經存在,則不會再次編譯;如果配置文件中包含的環境不存在,則會自動進行編譯。所以,其實 docker-compose up -d命令是包含了 docker-compose build的。
如果更新了配置文件,你可以手工執行 docker-compose build來重新編譯靶場環境。
等待運行結束,即可自動配置好環境,然後運行

下圖代表啟動成功

使用docker ps可以看到容器已經起來,8181埠,容器ID 2bd961162b0d

使用netstat也可以看到docker 代理監聽埠為8161

進入容器內部看看,命令如下:
docker container exec -it 2bd961162b0d /bin/bash
下圖代表我們進入activemq虛擬機了,docker就相當於時容器的宿主機。

下圖為已經運行的服務,使用//虛擬機ip:8161

7、弱口令漏洞驗證

Activemq後台地址是admin,密碼是admin/admin,我們嘗試登陸成功。


【重要】測試完畢之後,在漏洞環境目錄下使用
docker-compose down -v
即可結束服務,使環境變為初始狀態。

其他漏洞參考vulhub的每個漏洞環境描述(README.zh-cn.md),都已經寫明漏洞利用方法,寫的非常明白詳細。

如cve-2016-3088,我們在github的Vulhub找到對應漏洞說明即可驗證,如圖

該漏洞描述鏈接:鏈接地址

8、Dockcer常用命令


docker ps 查看當前開啟了哪些docker容器

進入對應容器  docker container exec -it 容器id /bin/bash 

docker version 檢查版本資訊

三、參考鏈接

1、docker安裝

//blog.csdn.net/diligent_lee/article/details/79098302?utm_source=blogxgwz17

2、vulhub安裝

//github.com/vulhub/vulhub/blob/master/README.zh-cn.md
//www.freebuf.com/sectool/165062.html