Vulhub靶場的搭建

2023-06-12 18:00:24

Vulhub靶場的搭建(基於centos7)

1>簡述

很多人在搭建Vulhub靶場的時候,可能也搜到過許多的文章,但是大多數的文章只是有一個流程,對其中的原理,步驟沒有進行詳細的說明,這也就導致了很多人在安裝過程中出現了問題也不知道該如何解決,或者稀裡糊塗就安裝好了。我想這種應該不是網安人該有的一個學習態度,下面我對Vulhub靶場的搭建進行一個詳細的講解。

2>環境的準備

因為我們都是Windows作業系統,而且大多數人都是安裝的是Centos7,所以本篇圍繞的是centos7對VUlhub靶場的搭建,準備的環境當然也是centos7的虛擬機器器

3>設定yum源為阿里雲

什麼是yum?為什麼要設定yum源?

yum是一個shell前端軟體包管理器,基於rpm包管理,能夠從指定的伺服器自動下載rpm包並且可以自動處理依賴關係,並且一次安裝所有的依賴的軟體包。Linux中的yum是國外的,存取速度以及穩定性都不是很好,所以我們要重新設定yum的源為阿里雲的yum.當然你不設定也是可以的,就是容易出現錯誤:Could not……,最好還是設定一下,也不是很麻煩。

設定yum源為阿里雲
1.備份檔案,感覺虛擬機器器沒什麼東西,也不需要備份,有東西的可以備份
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
2.下載阿里雲覆蓋原檔案
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3.檢視內容確定成功覆蓋
cat /etc/yum.repos.d/CentOS-Base.repo

4.清理之前的yum快取
yum clean all

5.生成新的快取
yum makecache

6.更新軟體(根據需要進行操作,不更新也是可以的)
sudo yum -y update

4>安裝docker

什麼是docker?為什麼要安裝docker?

先說Docker是用來幹什麼的?因為現在物理伺服器是很強大的,我們如果在一臺物理伺服器上只跑一個服務就浪費了,而同時飽很多服務他們又與相影響,比如說一個服務出了記憶體漏失把整個伺服器的記憶體都佔滿了,其他服務都跟著倒黴,所以要把每個服務都隔離起來,讓它們只使用自己那部分有限的cpu,記憶體和磁碟,以及自己依賴的軟體包。這個早先是用虛擬機器器來實現隔離的,但是每個虛擬機器器都要裝自己的作業系統核心,這是對資源有點浪費,幹是就有了Docker一個機器上口以裝十個到幾十個docker,他們共用作業系統核心,佔用資源少,啟動速度快。但又能提供了資源(cpu記憶體,磁碟等)的一定程度的隔離。
Docker 的使用可以理解為:軟體是帶環境安裝的,也就是說,安裝的時候把原始環境一模一樣的複製過來一份。這樣也就消除了不同機器執行結果不同的問題。
因為我們的Vulhub靶場上面有很多的環境,比如Nginx、Apache等等,要滿足這些,就必須要搭建docker

1. 檢查是否安裝了docker(大概率沒有安裝)
docker或 yum list docker-ce --showduplicates | sort -r

2. 新增yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.更新yum快取
sudo yum makecache fast

4.安裝相關依賴
yum install -y yum-utils  device-mapper-persistent-data lvm2

5.安裝Docker CE最新版
yum install docker-ce -y

如果要安裝指定版本而非最新版:
檢視版本列表:
yum list docker-ce --showduplicates | sort -r
安裝指定版本:
yum install docker-ce-18.06.3.ce-3.el7 -y
6.檢視docker的版本(同時也可以看是否安裝成功)
docker version

7.啟動docker服務
sytemctl start docker

8.將其設定為開機自啟
systemctl enable docker

9.使用映象加速

寫入
{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}

10.重新載入組態檔
sudo systemctl daemon-reload

11.重啟服務
sudo systemctl restart docker

5>安裝docker-compose

docker compose是一個命令列工具,是用於定義和執行多容器Docker應用程式的工具;通過Compose,開發者可以使用YML檔案來設定應用程式需要的所有服務,是一個編排工具。curl是一個利用URL規則在命令列下工作的檔案傳輸工具,可以說是一款很強大的http命令列工具。它支援檔案的上傳和下載,是綜合傳輸工具,但按傳統,習慣稱url為下載工具

1.載入docker-compose
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
2.進入到bin目錄並檢視其中的目錄
cd /usr/local/bin/
ls

3.給目錄增加可執行許可權
chmod +x docker-compose

4.檢視版本
docker-compose -version

5>安裝vulhub

1.建立存放vulhub的目錄並進入
mkdir -p /var/local/soft/
cd /var/local/soft/

2.下載安裝vulhub
yum -y install git

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

git是一個開源的分散式版本控制系統,用於敏捷高效地處理任何或大或小的專案,是Linus Torvalds為了幫助管理Linux核心開發而開發的一個開放原始碼的版本控制軟體,常用的版本控制工具CVS、Subversion等不同,它採用了分散式版本庫的方式,不用伺服器端軟體支援。

3.檢視一下vulhub裡面的靶場
cd vulhub
ls

4.進入nginx(這裡啟動一個nginx的漏洞環境)
cd nginx
ls
cd CVE-2013-4547

5.拉nginx的映象
docker-compose build

6.啟動靶場
docker-compose up -d

6>打靶場

1.檢視IP地址
ifconfig

2.檢視埠號(以下兩條命令隨便一個就行)
docker-compose ps 
docker ps

3.存取

7>關閉靶場

docker-compose down
以上就是搭建vulhub靶場的全部過程,自我感覺比較完整了,有任何問題歡迎各位師傅指出!!!!!!!!!!

通關參考檔案:https://vulhub.org/