Docker构建Web渗透测试工具容器
Docker是世界领先的软件集装化平台,针对不同的渗透测试类型,我们完全可以使用Docker创建相应的环境。有了Docker容器,你可以把测试环境放到U盘或者云端。
Docker是什么
Docker是一个开源的技术,在软件容器中,你可以创建、运行、测试和部署应用程序。Dcoker可以让你在任何环境中快速、可靠、稳定地部署应用程序。
容器具有可移植、方便、快速的优点。使用Docker,我们可以创建一个映像,在这个映像的基础上再创建其它环境。比如,我们下载了Kali Linux作为基础容器,这里面没装我们需要的工具。我们将它看做基础容器,在上面安装需要的工具,然后保存成一个新的映像,不会影响原始的映像。
也就是说,可以以原始映像为基础,创建出包含取证工具、Web渗透测试工具的容器。
用于Web渗透测试的工具
在这篇文章中,只使用了控制台工具。
W3af-console
SQLMap
Arachni
Nikto
Websploit
Nmap
安装
Docker的安装依赖于你使用的操作系统,但是,现在我们可以在官方仓库中找到针对大部分系统的安装包。
在这篇文章中,我们使用OpenSuse系统。
_0x4a0x72@pwned ~ sudo zypper se docker
S | Nome | Resumo | Tipo
–+——————————+————————————————————–+————-
| docker | The Linux container runtime | pacote
_0x4a0x72@pwned ~ sudo zypper in docker
安装成功后,你必须启用并启动服务
_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发布者在HUB Docker上有一个官方映像,这可以大大加快我们的工作。
使用命令:sudo docker search Kali,可以列出Docker HUB上的映像,我们选择第一个。
_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
使用下面的命令,可以开启容器。
_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
工具安装
我们可以在容器外面进行安装,但是这里我会演示如何像虚拟机一样访问容器。
我们执行下面的命令获取容器的shell。
_0x4a0x72@pwned ~ sudo docker exec -it WebPentest bash
root@a5fb073e53c8:/#
在拿到shell后,我们更新容器,安装web渗透测试时需要的工具。
root@a5fb073e53c8:/# apt-get update
root@a5fb073e53c8:/# apt-get upgrade
root@a5fb073e53c8:/# apt-get install websploit w3af-console arachni nikto sqlmap websploit nmap
安装完成后,我们可以在容器里面正常执行命令
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
或者也可以在容器外面运行。在完成命令之后,使用转义序列Ctrl-p + Ctrl-q,你可以不退出shell,而是断开连接。
_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
结论
使用Docker容器,我们可以根据需要创建渗透测试环境或者审计环境。我们也可以将容器作为证据的一部分向客户展示,或者将容器交给客户让他们进行审计。
相关文章
- 一个自动化的SQL注入工具,其主要功能是扫描、发现并利用给定URL的SQL注入漏洞,内置了很多绕过插件,支持的数据库是MySQL 、Oracle 、PostgreSQL 、Microsoft SQL Server2023-02-04
- Nmap是一款网络扫描和主机检测的非常有用的工具。Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器。它可以适用于winodws,linux,mac等操作2019-03-16
SQLMAP注入检查方法 11种常见SQLMAP使用方法详解
sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,很多人都是通过这个工具实施的检测与注入,对于我们从事安全防御的人来说,一定要引起注意,一般的程序员写的代2018-08-16- 这篇文章主要介绍了lcx用法之心得总结,需要的朋友可以参考下2017-09-06
- 这篇文章主要介绍了lcx端口转发详细介绍及使用方法(lcx内网转发姿势),需要的朋友可以参考下2017-09-06
- 这是我们的Nmap备忘单的第四部分,本文中我们将讨论更多东西关于扫描防火墙,IDS / IPS 逃逸,Web服务器渗透测试等。在此之前,我们应该了解一下防火墙的一些基础知识以便2016-12-27
- 众所周知NMAP是经常用来进行端口发现、端口识别。除此之外我们还可以通过NMAP的NSE脚本做很多事情,比如邮件指纹识别,检索WHOIS记录,使用UDP服务等2016-12-27
- 这是我们的第二期NMAP备忘单,基本上,我们将讨论一些高级NMAP扫描的技术,我们将进行一个中间人攻击(MITM)。现在,游戏开始了2016-12-27
- nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网2016-12-27
网络漏洞扫描工具Acunetix Web Vulnerability Scanner(AWVS)使用介绍
Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞。伦敦时间2015年6月24日,官方发布了2016-09-28
最新评论