0x01 靶場類別#
搭建的基礎環境一般可分成三類。
1、給了源代碼,需要自己動手搭建的環境,有源碼也可以透過 docker 搭建環境,透過 Dockerfile 去構建,上傳至 dockerhub 可重複使用,java 和 php 的構建比較簡單,而 asp/x 用 docker 構建就比較少了,除了 docker 之外,php 也可以用 phpstudy 這種集成環境搭建。
2、docker 類的環境,這裡說的 docker 類的環境指的是那種集成類的有 CVE 編號的環境,如 vulfocus,vulhub 等環境,前人已經構建好,我們只要 docker pull 下來即可。
3、vmware 虛擬機靶場,這種靶場多涉及後滲透階段,如內網滲透、域滲透等,如GOAD靶場。
0x02 工具#
工藝善其事,必先利其器。
- windows(docker desktop),mac(orb)
- phpstudy(https://www.xp.cn/download.html)
- ctfd
- gzctf
如果自己想整合自己搭建的環境或公司內部給同事練習,可以搭建一個 ctf 平台,如 ctfd 和 gzctf。ctfd 結合whale插件可以實現動態 flag,添加 docker 類環境。
ctfd 添加靶場可以去dockerhub上找,如vulfocus的靶場環境。
0x03 php 環境#
-
dvwa
-
PHP 代碼審計分段講解
-
Pikachu 是一個帶有漏洞的 Web 應用系統,在這裡包含了常見的 web 安全漏洞。
- pikachu,可 docker 部署
- 在線 pikachu 類靶場:渊龍 Sec 團隊官方漏洞靶場
-
文件上傳靶場
-
web 漏洞靶場
webug- docker 搭建:
docker pull area39/webug
-
sqli 注入靶場
-
xxe 漏洞靶場
-
burpsuite 的官網也提供了很多 web 方面的漏洞,都是主流漏洞。
-
php 反序列化靶場
-
SSRF 漏洞靶場
-
電氣鼠靶場系統
-
PHP 命令執行漏洞的學習靶場
-
php 反序列化 docker 環境
https://github.com/mcc0624/php_ser_Class
docker 搭建
docker pull mcc0624/ser:1.8
docker run -p 8002:80 -d mcc0624/ser:1.8
0x04 asp/x 環境#
asp 的環境需要設置 iis 環境,也可以使用超級小旋風 AspWebServer 漏洞環境。asp 搭配的數據庫是 access、sqlserver,如果需要用到數據庫也需要安裝上。
0x05 jsp 環境#
0x06 邏輯漏洞靶場#
邏輯漏洞靶場環境安裝:
#安裝django和faker
python -m pip install Django
pip3 install faker
#初始化數據庫
先運行python manage.py runserver,然後瀏覽器訪問http://127.0.0.1:8000/init_data接口初始化數據庫,後面訪問http://127.0.0.1:8000/即可。
做了個 docker 環境:
docker pull liangchenga/ljldsec:latest
0x07 docker 環境#
使用 docker 快速搭建各大漏洞靶場,目前可以一鍵搭建 17 個靶場。
上述平台直接用 docker 即可一鍵搭建漏洞環境。
Vulfocus 是一個漏洞集成平台,將漏洞環境 docker 鏡像,放入即可使用,開箱即用,vulhub的一些漏洞環境 vulfocus 中也有,就不一一說明了。
docker pull vulfocus/vulfocus:latest
docker run -d -p 80:80 -v /var/run/docker.sock:/var/run/docker.sock -e VUL_IP=x.x.x.x(本機ip) vulfocus/vulfocus
#帳號密碼:admin/admin
- iwebsec
- docker pull iwebsec/iwebsec
0x08 虛擬機#
虛擬機的漏洞環境,先介紹幾個在線的網站,這些在線的靶場不需要下載。
上面的這些網站,質量都挺高的,還有一些可自己嘗試下,Websites/Platforms to learn to hack。
虛擬機類的靶場,通常需要自己下載vmware或virtual box的 ova 格式虛擬鏡像,然後導入到虛擬機中運行。
vulnhub中有很多虛擬機靶場,目標都是獲取 flag。
注:在導入虛擬機後,首先需要獲取靶機的 ip 地址,通常靶機都是 dhcp 獲取 ip,那麼你就需要用 nmap 掃描你當前網段,如果網段內 ip 太多,就不容易識別,況且如果用 vmware 時,會有獲取不到 ip 的情況。建議練習 vulnhub 的靶場時,用 virtualbox 虛擬機,如果是 linux,導入後,進入修改密碼的模式(開機按 e),修改密碼,先獲取 ip。
除了 vulnhub 的靶場,還有一些團隊搭建的靶場環境,如:
- 紅日安全的ATT&CK 實戰系列。
- windows/linux 本地特權提升實驗,包含的內容都是提權相關的知識點。
0x09 其他#
seed-labs:網絡攻防課程中涉及的 seed-labs 實驗代碼和報告