vulhub是一個(gè)面向大眾的開源漏洞靶場,無需Docker知識(shí),簡單執(zhí)行兩條命令即可編譯、運(yùn)行一個(gè)完整的漏洞靶場鏡像。旨在讓漏洞復(fù)現(xiàn)變得更加簡單,讓安全研究者更加專注于漏洞原理本身。
物理機(jī):windows 10
虛擬機(jī):centos 7192.168.1.13,網(wǎng)卡設(shè)置為NAT模式
環(huán)境安裝
安裝Docker
$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun ?
安裝Docker-Compose
下面提供2種安裝方式,2選1即可
離線安裝。先到下載最新版本的docker-compose-linux-x86_64,并上傳到虛擬機(jī)
# 然后將其移動(dòng)到/usr/local/bin目錄并改名為docker-compose $ mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose ? # 添加執(zhí)行權(quán)限 $ sudo chmod +x /usr/local/bin/docker-compose ? # 驗(yàn)證 $ docker-compose version ?
Pip安裝
# 安裝docker-compose $ pip install docker-compose ? # 如果沒有pip需要先安裝 $ yum -y install epel-release $ yum -y install Python-pip $ pip --version # 查看pip版本 ? # 可能會(huì)遇到一個(gè)ReadTimeoutError的錯(cuò)誤,需要修改pip源,請看文末問題匯總 ?
安裝Vulhub
同上,兩種方法2選1
離線安裝。下載,并上傳到虛擬機(jī)任意目錄,這里放在/root/目錄
# 創(chuàng)建一個(gè)vulhub目錄并將壓縮包放進(jìn)去 $ mkdir vulhub && mv master.zip vulhub/ && cd vulhub/ # 解壓 $ unzip master.zip ?
Git安裝
$ git clone https://github.com/vulhub/vulhub.git ? # 如果沒有Git需要先安裝 $ yum install -y git ?
Docker加速
可選。配置阿里云鏡像加速
這里的加速器地址可以在阿里云中的鏡像加速器獲取
$ sudo mkdir -p /etc/docker $ vim /etc/docker/daemon.json # 加入以下代碼 { "registry-mirrors": ["加速器地址"] } ? $ sudo systemctl daemon-reload $ sudo systemctl restart docker ?
靶場使用
選擇漏洞環(huán)境,在Vulhub中選擇某個(gè)環(huán)境,cd進(jìn)入對應(yīng)目錄
$ cd vulhub/discuz/wooyun-2010-080723/
可選。可以通過vi編輯其中的docker-compose.yml,修改端口和賬號(hào)密碼
$ vi docker-compose.yml ?
啟動(dòng)環(huán)境:
$ docker-compose up -d # 啟動(dòng)環(huán)境
$ docker-compose down # 關(guān)閉環(huán)境,需要在該環(huán)境目錄下執(zhí)行
可選。編譯環(huán)境。啟動(dòng)環(huán)境后,會(huì)自動(dòng)查找當(dāng)前目錄下的配置文件。
如果配置文件中包含的環(huán)境均已經(jīng)存在,則不會(huì)再次編譯,反之則會(huì)自動(dòng)進(jìn)行編譯。所以,其實(shí)docker-compose up -d命令是包含了docker-compose build的。
但是如果更新了配置文件,則需要手工來重新編譯靶場環(huán)境。
$ docker-compose build
物理機(jī)訪問容器
經(jīng)過上面的配置,已經(jīng)可以在虛擬機(jī)Centos7中使用瀏覽器訪問對應(yīng)的漏洞環(huán)境。但此時(shí)物理機(jī)是無法通過瀏覽器訪問漏洞環(huán)境的,需要手動(dòng)配置靜態(tài)路由,將通往Docker的數(shù)據(jù)包交給虛擬機(jī)192.168.1.13來轉(zhuǎn)發(fā)
先查看一下Docker容器的IP
$ docker ps # 查看運(yùn)行服務(wù)端口
================================================
CONTAINER ID IMAGE PORTS
a4eed382479c vulhub/discuz:7.2 0.0.0.0:8080->80/tcp
================================================
$ docker inspect [容器ID] | grep IPAddress # [容器ID]為漏洞環(huán)境所在容器,此處為a4eed382479c
# "IPAddress": "172.18.0.3"
安界網(wǎng)通過開發(fā)全球頂尖的網(wǎng)絡(luò)安全教育精品內(nèi)容,致力于教育+AI、理論+實(shí)戰(zhàn)、線上+線下的創(chuàng)新科技教育模式,結(jié)合專有師帶徒模式貼合應(yīng)用、實(shí)戰(zhàn)式教學(xué)場景,打造知識(shí)課程、社交實(shí)戰(zhàn)和生態(tài)服務(wù)為一體的全棧式網(wǎng)絡(luò)安全教育服務(wù)平臺(tái);同時(shí)研發(fā)輔助安全教育平臺(tái)工具化和產(chǎn)品化的安全服務(wù)類型產(chǎn)品;實(shí)現(xiàn)為企業(yè)提供"一站式"全生命周期的網(wǎng)絡(luò)安全綜合服務(wù)提供商。有興趣的小伙伴可以私信撩我!