Penta 是一款使用 Python3 的渗透测试半自动化工具。它提供了高级功能,用于提取特定服务器上发现的漏洞信息。我目前正在使用漏洞数据库开发一个扫描系统。



penta 需要以下软件包。
解决 Python 包依赖。
$ pipenv install
如果你不喜欢 pipenv
$ pip install -r requirements.txt
$ pipenv run start <选项>
或者
$ python penta/penta.py <选项>
$ pipenv run start -h
usage: penta.py [-h] [-v] [--proxy PROXY]
Penta 是渗透测试半自动化工具
optional arguments:
-h, --help 显示此帮助信息并退出
-v, --verbose 增加日志详细级别
--proxy PROXY 代理 [IP:PORT]
======= 主菜单 ===========================================
> 基于 IP 扫描的菜单
构建漏洞数据库的菜单
[退出]
======= 渗透测试菜单列表 ===================================
> 端口扫描
Nmap & 漏洞扫描
检查 HTTP 选项方法
抓取 DNS 服务器信息
Shodan 主机搜索
FTP 匿名连接
SSH 暴力破解连接
Metasploit 框架
更改目标主机
[返回]
端口扫描
检查目标主机的端口状态并识别活跃服务。
Nmap
使用 Nmap 进行额外端口检查。
检查 HTTP 选项方法
检查目标主机的 HTTP 方法(例如 GET、POST)。
抓取 DNS 服务器信息
显示并检索 DNS whois 信息及有用记录。
Shodan 主机搜索
从 Shodan 收集主机服务信息。
需要申请 Shodan API 密钥 以启用此功能。
FTP 匿名连接
检查端口 21 是否允许匿名访问。
FTP 用户通常使用明文登录协议(通常是用户名和密码格式)进行身份验证,但如果服务器允许,他们可以匿名连接。如果管理员允许匿名登录,任何人都可以登录服务器。
SSH 暴力破解连接
检查 SSH 连接并尝试暴力破解。
字典数据位于 data/dict。
Metasploit 框架 [自动扫描为未来功能]
检查已开放端口的有用 msf 模块。
模块数据库位于 data/msf/module_list.db。
目前,我已构建了模块列表数据库,并正在迁移到使用它的方法。
======= 报告菜单列表 ====================================
> 每日报告:CVE、EDB、MSF...
查看报告
获取 CVEs
获取 Exploits
获取 Msf 模块
数据库菜单
[返回]
生成每日报告
在线获取变更的 CVE、Metasploit 框架模块及最新的 ExploitDB 记录,并将信息输出到终端。
查看报告
将本地数据库 vuln_db.sqlite3 中记录的漏洞信息输出到终端,无需在线获取信息。
获取 CVEs
从 NVD 数据源 下载指定年份的 CVE 并记录到数据库。
获取 Exploits (实验性功能)
从在线站点检索 ExploitDB 中的漏洞利用信息。
获取 Metasploit 框架模块
msf 的每个模块包含硬编码的 CVE 信息及对扫描有用的其他信息。此功能汇总每个模块中在线和离线记录的信息,并提供与 CVE 和 EDB 的关联。
如果你对 penta 有更多疑问,请参阅非常详细的 wiki,其中对 penta 进行了详细说明。
Penta 采用 MIT 许可证发布,请参阅 LICENSE。