DeepExploit工具(后渗透自动化工框架)调研

DeepExploit工具调研

Deep Exploit是一款可与Metasploit链接使用,且结合机器学习的全自动渗透测试工具。

0x00 安装

安装步骤

根据官方安装手册:https://github.com/13o-bbr-bbq/machine_learning_security/wiki/Installation

  1. 安装Kali

  2. 命令执行git clone https://github.com/13o-bbr-bbq/machine_learning_security.git

  3. 命令执行 安装python3的pipapt-get install python3-pip

  4. 切换到DeepExploit目录下运行pip3 install -r requirements.txt

  5. 编辑config.ini,修改其中的server_host为本机IP(ifconfig查看一下~)

  6. 编辑proxychains.conf,修改监听IP和端口(要求和DeepExploit目录下config.iniproxy_hostproxy_port对应)

  7. 初始化Metasploit DB,命令执行msfdb init

  8. 启动Metasploit,命令执行msfconsole

  9. 启动Metasploit RPC服务,命令执行

    msf > load msgrpc ServerHost=172.16.108.139 ServerPort=55553 User=test Pass=test1234
    [*] MSGRPC Service:  172.16.108.139:55553 
    [*] MSGRPC Username: test
    [*] MSGRPC Password: test1234
    [*] Successfully loaded plugin: msgrpc
    

安装的坑记录

0x01 使用&工作原理

DeepExploit Train模式

执行命令:python3 DeepExploit.py -t 地址 -m train

command options description
-t, –target 训练易受攻击主机的IP地址
-m, –mode 执行模式”训练”

train

训练过程

功能有点像Metasploit之前的db_autopwn。

训练结果报告

最终测试结束以后,报告会存储在/report/train下:

result

切换到DeepExploit目录下执行命令:python3 CreateReport.py -m train

[+] Creating training report.
[*] Creating training report done.

/report/train目录下会多出一个DeepExploit_train_report.html的HTML报告文件,打开查看结果:

result

DeepExploit Test模式

执行命令python3 DeepExploit.py -t 172.16.108.140 -m test

流程与DeepExploit Train模式一样,如果Deep Exploit成功利用了目标服务器,它会进一步的对其他内部服务器进行横行攻击。

问题

测试靶机有445端口开放,并且存在漏洞。

DeepExploit在做探测的时候也检测到了端口的开放情况:

但是445端口在匹配Metasploit模块的时候却是0,没有利用模块:

端口匹配模块使用的是Metasploit的search语法:

search_cmd = 'search name:' + service_name + ' type:exploit app:server\n'

调试输出service_name,发现445端口的是unknown,所以无法搜索出利用模块。