V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CongRong
V2EX  ›  信息安全

Under The Docker Run Kali Linux

  •  
  •   CongRong · 2016-03-04 21:46:51 +08:00 · 3629 次点击
    这是一个创建于 3187 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简介

    • Docker是一个由 GO 语言写的程序运行的开源的应用容器引擎( Linux containers , LXCs ),让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app )。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架包括系统。

    • Kali Linux是基于 Debian 的 Linux 发行版, 设计用于数字取证和渗透测试 和 黑客攻防。
      Kali Linux 预装了许多渗透测试软件,包括 nmap (端口扫描器)、 Wireshark (数据包分析器)、 John the Ripper (密码破解器),以及 Aircrack-ng (一套用于对无线局域网进行渗透测试的软件). 用户可通过硬盘、 live CD 或 live USB 运行 Kali Linux 。 Metasploit 的 Metasploit Framework 支持 Kali Linux , Metasploit 一套针对远程主机进行开发和执行 Exploit 代码的工具。

    好处

          Docker 相比 KVM 之类最明显的特点就是启动快,资源占用小。因此对于构建隔离的标准化的运行环境,轻量级的 PaaS , 构建自动化测试和持续集成环境,以及一切可以横向扩展的应用都可轻松应对。具体说来,Docker 在如下几个方面具有较大的优势

    • 更快速的交付和部署
    • 更高效的虚拟化
    • 更轻松的迁移和扩展
    • 更简单的管理

          kali 原镜像所含的渗透套件很丰富,基本渗透中的需求都可以满足,但是长期使用会显得有些臃肿,比如换个环境(迁移),扔锅(被取证)等等,既然想方便/快捷/高效的使用 Kali , Docker 虚拟化再合适不过。

    安装 Docker

          我是在Mac下安装的 Docker , Docker 引擎使用了 Linux 内核特定的特性,所以要让它运行在 OS X 上我们需要用一个轻量型的虚拟机,如(Virtualbox, Vmware Fusion, Parallel Desktop)等。用 OS X 的 Docker 客户端来控制虚拟 Docker 来构建,运行以及管理 Docker 容器。

          Boot2Docker 是帮助控制虚拟机中 Docker 的工具,它会下载一个安装好 docker 的虚拟机,并控制其实现 docker 功能:

    brew install boot2docker
    

    安装 Docker client :

    # Get the docker client file
    DIR=$(mktemp -d ${TMPDIR:-/tmp}/dockerdl.XXXXXXX) && \
    curl -f -o $DIR/ld.tgz https://get.docker.io/builds/Darwin/x86_64/docker-latest.tgz && \
    gunzip $DIR/ld.tgz && \
    tar xvf $DIR/ld.tar -C $DIR/ && \
    cp $DIR/usr/local/bin/docker ./docker
    
    # Set the environment variable for the docker daemon
    export DOCKER_HOST=tcp://127.0.0.1:4243
    
    # Copy the executable file
    sudo cp docker /usr/local/bin/
    

          或者直接使用Boot2Docker.pkg安装,安装好后运行 boot2docker 这个 client command ,这个过程会进行初始化下载一个 boot2docer.iso ,然后会用 ssh 生成用于 docker 的 ssh 的公钥和私钥对,用于远程.

    初始化后运行 boot2docker 报了个错,对应设置到环境变量即可。

    ➜ ~ boot2docker start
    Waiting for VM and Docker daemon to start...
    .o
    Started.
    Writing /Users/CongRong/.boot2docker/certs/boot2docker-vm/ca.pem
    Writing /Users/CongRong/.boot2docker/certs/boot2docker-vm/cert.pem
    Writing /Users/CongRong/.boot2docker/certs/boot2docker-vm/key.pem
    Your environment variables are already set correctly.
    
    To connect the Docker client to the Docker daemon, please set:
    export DOCKER_CERT_PATH=/Users/CongRong/.boot2docker/certs/boot2docker-vm
    export DOCKER_TLS_VERIFY=1
    export DOCKER_HOST=tcp://192.168.59.103:2376
    
    Or run: `eval "$(boot2docker shellinit)"`
    

    安装镜像

          kali-linux-docker 的DockerHub 主页,或者直接搜索:

    ➜ ~ docker search kali
    NAME                                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
    kalilinux/kali-linux-docker               Kali Linux 2.x Base Image                       120                  [OK]
    linuxkonsult/kali-metasploit              Kali base image with metasploit                 26                   [OK]
    linuxkonsult/kali                         Kali Linux 2.0 base image                       8
    brimstone/kali                                                                            3                    [OK]
    kkirsche/kali-linux-docker                Unofficial Kali Linux Docker                    2                    [OK]
    kalilinux/kali-linux-docker-rolling       Kali Linux Rolling Docker Image                 2                    [OK]
    wsec/kali-metasploit                      Official Kali Base image + Metasploit           2                    [OK]
    officialkali/kali                                                                         2
    kalilinux/kali                                                                            2
    lodelestra/kali-linux-metasploit-docker   metasploit docker based on kali-linux-docker    1                    [OK]
    ctarwater/kali-msf                        Kali + Metasploit + Postgresql                  1                    [OK]
    e3rp4y/kali-metasploit                                                                    1                    [OK]
    blackfinsecurity/tha-kali                                                                 1                    [OK]
    andresriancho/w3af-kali                                                                   0                    [OK]
    ctarwater/kali                            Kali base image (no tools)                      0                    [OK]
    netxp/kali                                kali                                            0                    [OK]
    johnsandiford/kali                                                                        0                    [OK]
    miteshshah/kali                           Kali Linux                                      0                    [OK]
    nicot/kali                                                                                0                    [OK]
    lxj616/docker-kali-custom-tools           docker-kali-custom-tools                        0                    [OK]
    jasonchaffee/kali-linux                   Kali Linux Docker Container                     0                    [OK]
    ctarwater/kali-msf-micro                  Kali + Metasploit with all of the Metasplo...   0                    [OK]
    scottj/kali-docker                        Custom Kali 2.0 Docker Build                    0                    [OK]
    digitalshokunin/kali-metasploit                                                           0                    [OK]
    butlerrc30/kali-ssh                       Kali image that generates random cert for ...   0                    [OK]
    

    安装 Kali :

    docker pull kalilinux/kali-linux-docker
    

    拉取安装后就可以启动了,因为是纯净的 kali 镜像所以只有 420MB ,需要什么直接 apt-get 。

    Alt text

    常见问题

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6006 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 02:54 · PVG 10:54 · LAX 18:54 · JFK 21:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.