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-server
ssh安裝完之後,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