Docker構(gòu)建Web滲透測(cè)試工具容器

Docker是世界領(lǐng)先的軟件集裝化平臺(tái),針對(duì)不同的滲透測(cè)試類型,我們完全可以使用Docker創(chuàng)建相應(yīng)的環(huán)境。有了Docker容器,你可以把測(cè)試環(huán)境放到U盤或者云端。
Docker是什么
Docker是一個(gè)開(kāi)源的技術(shù),在軟件容器中,你可以創(chuàng)建、運(yùn)行、測(cè)試和部署應(yīng)用程序。Dcoker可以讓你在任何環(huán)境中快速、可靠、穩(wěn)定地部署應(yīng)用程序。
容器具有可移植、方便、快速的優(yōu)點(diǎn)。使用Docker,我們可以創(chuàng)建一個(gè)映像,在這個(gè)映像的基礎(chǔ)上再創(chuàng)建其它環(huán)境。比如,我們下載了Kali Linux作為基礎(chǔ)容器,這里面沒(méi)裝我們需要的工具。我們將它看做基礎(chǔ)容器,在上面安裝需要的工具,然后保存成一個(gè)新的映像,不會(huì)影響原始的映像。
也就是說(shuō),可以以原始映像為基礎(chǔ),創(chuàng)建出包含取證工具、Web滲透測(cè)試工具的容器。
用于Web滲透測(cè)試的工具
在這篇文章中,只使用了控制臺(tái)工具。
W3af-console
SQLMap
Arachni
Nikto
Websploit
Nmap
安裝
Docker的安裝依賴于你使用的操作系統(tǒng),但是,現(xiàn)在我們可以在官方倉(cāng)庫(kù)中找到針對(duì)大部分系統(tǒng)的安裝包。
在這篇文章中,我們使用OpenSuse系統(tǒng)。
_0x4a0x72@pwned ~ sudo zypper se docker
S | Nome | Resumo | Tipo
–+——————————+————————————————————–+————-
| docker | The Linux container runtime | pacote
_0x4a0x72@pwned ~ sudo zypper in docker
安裝成功后,你必須啟用并啟動(dòng)服務(wù)
_0x4a0x72@pwned ~ sudo systemctl enable docker
_0x4a0x72@pwned ~ sudo systemctl start docker
_0x4a0x72@pwned ~ sudo docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 1.11.2
Storage Driver: btrfs
Build Version: Btrfs v4.5.3+20160516
…….
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
容器安裝
Kali發(fā)布者在HUB Docker上有一個(gè)官方映像,這可以大大加快我們的工作。
使用命令:sudo docker search Kali,可以列出Docker HUB上的映像,我們選擇第一個(gè)。
_0x4a0x72@pwned ~ sudo docker search kali
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
kalilinux/kali-linux-docker Kali Linux Rolling Distribution Base Image 193 [OK]
Let’s do the pull image for our machine, This step depends on the internet connection.
_0x4a0x72@pwned ~ sudo docker pull kalilinux/kali-linux-docker
Using default tag: latest
latest: Pulling from kalilinux/kali-linux-docker
b2860afd831e: Pull complete
340395ad18db: Pull complete
d4ecedcfaa73: Pull complete
3f96326089c0: Pull complete
e5b4b7133863: Pull complete
Digest: sha256:0aa8342172aacbe79957f66e7029c1fb38e14765bf35eff30624f90cb813a56f
Status: Downloaded newer image for kalilinux/kali-linux-docker:latest
_0x4a0x72@pwned ~ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
kalilinux/kali-linux-docker latest f321257d50f7 6 days ago 602.4 MB
使用下面的命令,可以開(kāi)啟容器。
_0x4a0x72@pwned ~ sudo docker run –name WebPentest -t -d kalilinux/kali-linux-docker
_0x4a0x72@pwned ~ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a5fb073e53c8 kalilinux/kali-linux-docker “/bin/bash” 10 seconds ago Up 8 seconds WebPentest
工具安裝
我們可以在容器外面進(jìn)行安裝,但是這里我會(huì)演示如何像虛擬機(jī)一樣訪問(wèn)容器。
我們執(zhí)行下面的命令獲取容器的shell。
_0x4a0x72@pwned ~ sudo docker exec -it WebPentest bash
root@a5fb073e53c8:/#
在拿到shell后,我們更新容器,安裝web滲透測(cè)試時(shí)需要的工具。
root@a5fb073e53c8:/# apt-get update
root@a5fb073e53c8:/# apt-get upgrade
root@a5fb073e53c8:/# apt-get install websploit w3af-console arachni nikto sqlmap websploit nmap
安裝完成后,我們可以在容器里面正常執(zhí)行命令
root@a5fb073e53c8:/# nmap localhost
Starting Nmap 7.12 ( https://nmap.org ) at 2016-06-30 09:09 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000010s latency).
Other addresses for localhost (not scanned): ::1
All 1000 scanned ports on localhost (127.0.0.1) are closed
Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds
或者也可以在容器外面運(yùn)行。在完成命令之后,使用轉(zhuǎn)義序列Ctrl-p + Ctrl-q,你可以不退出shell,而是斷開(kāi)連接。
_0x4a0x72@pwned ~ sudo docker exec -it WebPentest nikto
– Nikto v2.1.6
—————————————————————————
+ ERROR: No host specified
-config+ Use this config file
…….
+ requires a value
Note: This is the short help output. Use -H for full help text.
使用commit,可以將所做的改變保存成映像。
_0x4a0x72@pwned ~ sudo docker commit -a “Junior Carreiro” -m “Install Web Pentest Tools” WebPentest
結(jié)論
使用Docker容器,我們可以根據(jù)需要?jiǎng)?chuàng)建滲透測(cè)試環(huán)境或者審計(jì)環(huán)境。我們也可以將容器作為證據(jù)的一部分向客戶展示,或者將容器交給客戶讓他們進(jìn)行審計(jì)。
相關(guān)文章
SQLMap簡(jiǎn)介及簡(jiǎn)單應(yīng)用實(shí)例圖文詳解
一個(gè)自動(dòng)化的SQL注入工具,其主要功能是掃描、發(fā)現(xiàn)并利用給定URL的SQL注入漏洞,內(nèi)置了很多繞過(guò)插件,支持的數(shù)據(jù)庫(kù)是MySQL 、Oracle 、PostgreSQL 、Microsoft SQL Server2023-02-04- Nmap是一款網(wǎng)絡(luò)掃描和主機(jī)檢測(cè)的非常有用的工具。Nmap是不局限于僅僅收集信息和枚舉,同時(shí)可以用來(lái)作為一個(gè)漏洞探測(cè)器或安全掃描器。它可以適用于winodws,linux,mac等操作2019-03-16
SQLMAP注入檢查方法 11種常見(jiàn)SQLMAP使用方法詳解
sqlmap也是滲透中常用的一個(gè)注入工具,其實(shí)在注入工具方面,很多人都是通過(guò)這個(gè)工具實(shí)施的檢測(cè)與注入,對(duì)于我們從事安全防御的人來(lái)說(shuō),一定要引起注意,一般的程序員寫的代2018-08-16- 這篇文章主要介紹了lcx用法之心得總結(jié),需要的朋友可以參考下2017-09-06
lcx端口轉(zhuǎn)發(fā)詳細(xì)介紹及使用方法(lcx內(nèi)網(wǎng)轉(zhuǎn)發(fā)姿勢(shì))
這篇文章主要介紹了lcx端口轉(zhuǎn)發(fā)詳細(xì)介紹及使用方法(lcx內(nèi)網(wǎng)轉(zhuǎn)發(fā)姿勢(shì)),需要的朋友可以參考下2017-09-06Nmap備忘單 從探索到漏洞利用 第四章 繞過(guò)防火墻
這是我們的Nmap備忘單的第四部分,本文中我們將討論更多東西關(guān)于掃描防火墻,IDS / IPS 逃逸,Web服務(wù)器滲透測(cè)試等。在此之前,我們應(yīng)該了解一下防火墻的一些基礎(chǔ)知識(shí)以便2016-12-27- 眾所周知NMAP是經(jīng)常用來(lái)進(jìn)行端口發(fā)現(xiàn)、端口識(shí)別。除此之外我們還可以通過(guò)NMAP的NSE腳本做很多事情,比如郵件指紋識(shí)別,檢索WHOIS記錄,使用UDP服務(wù)等2016-12-27
- 這是我們的第二期NMAP備忘單,基本上,我們將討論一些高級(jí)NMAP掃描的技術(shù),我們將進(jìn)行一個(gè)中間人攻擊(MITM)?,F(xiàn)在,游戲開(kāi)始了2016-12-27
- nmap是一個(gè)網(wǎng)絡(luò)連接端掃描軟件,用來(lái)掃描網(wǎng)上電腦開(kāi)放的網(wǎng)絡(luò)連接端。確定哪些服務(wù)運(yùn)行在哪些連接端,并且推斷計(jì)算機(jī)運(yùn)行哪個(gè)操作系統(tǒng)(這是亦稱 fingerprinting)。它是網(wǎng)2016-12-27
網(wǎng)絡(luò)漏洞掃描工具Acunetix Web Vulnerability Scanner(AWVS)使用介紹
Acunetix Web Vulnerability Scanner(簡(jiǎn)稱AWVS)是一款知名的網(wǎng)絡(luò)漏洞掃描工具,它通過(guò)網(wǎng)絡(luò)爬蟲測(cè)試你的網(wǎng)站安全,檢測(cè)流行安全漏洞。倫敦時(shí)間2015年6月24日,官方發(fā)布了2016-09-28