msploitego - Maltego的渗透测试套件




这是一个测试版,请多多包涵并报告任何问题。
更新内容
- 新功能
- 现在通过Postgres查询支持Metasploit的多个工作区
- 一个bash脚本,可对目标运行大量辅助模块,真正让Metasploit数据库变得“丰满”
- 转换:
- 枚举Metasploit工作区
- Nikto解析器[从文件]
- Enum4linux解析器(从文件)
- DNS扫描
- 错误修复
msploitego利用Metasploit数据库中收集的数据,通过枚举并为特定服务创建实体。像samba、smtp、snmp、http等服务有进一步的枚举转换。实体可以从Metasploit XML文件加载,或直接从Postgres msf数据库中获取。
欢迎提出关于新转换和增强的建议!!!
依赖要求
- Python 2.7
- 仅在Kali Linux上测试过
- 软件安装
- Metasploit框架
- nmap
- enum4linux
- snmp-check
- nikto
- exploitdb
- wpscan
安装
- 在Maltego中从msploitego/src/msploitego/resources/maltego/msploitego.mtz导入配置
- 签出并更新Maltego中的转换路径
- 最简单的方法是在/root/下创建一个指向转换目录的符号链接
- ln -s /path/to/your/msploitego/src/msploitego/transforms /root/
常规使用
- 在Metasploit中运行db_nmap扫描,或导入之前的扫描
-
msf> db_nmap -vvvv -T5 -A -sS -ST -Pn
-
msf> db_import /path/to/your/nmapfile.xml
-
将数据库导出为XML文件
-
msf> db_export -f xml /path/to/your/output.xml
-
在Maltego中拖拽一个MetasploitDBXML实体到图形上。
-
更新实体路径为你的Metasploit数据库文件路径。
-
运行MetasploitDB转换以枚举主机。
-
然后可以通过多个转换枚举Metasploit DB中存储的服务、漏洞。
- 由于性能限制,不推荐此方法。如果XML文件很大,运行转换将消耗大量内存。
使用Postgres(推荐!)
- 拖拽一个Postgresql DB实体到画布上,输入数据库详情。
- 直接对正在运行的DB运行Postgresql转换。
- 如果你不知道Postgresql实例的密码,请查看/usr/share/metasploit-framework/config/database.yml
建议
- 首先增强你的Metasploit DB
- 查看scripts目录下的msploitstarter.sh。它运行nmap然后运行大量辅助模块来充实你的Metasploit DB。
- 运行详细的nmap扫描。例如:db_nmap -vvvv -sS -sV -sU -A -T5 1.1.1.1/24
- 将Nessus或OpenVAS的结果导入Metasploit,并使用枚举漏洞转换。
- 在所有http/https端口上运行auxiliary/crawler/msfcrawler。这将收集有用数据。
- 运行nikto扫描并输出xml,然后在'Nikto文件'字段中输入完整路径文件名。运行Nikto解析器进行枚举。
待办事项
- 直接连接到Postgres数据库 - 测试版
- 为生成的实体添加更多、更多、更多的转换。
已知问题
- 某些Metasploit实体(如战利品文件)有时包含MaltegoTransform类无法处理的错误字符,导致抛出异常且无返回结果。我绞尽脑汁试图“清理”/解码这些数据,但未能成功。