VulScanner
一款适合在渗透测试中随时记录和保存的漏洞检测工具
项目地址:https://github.com/cn-xwhat/VulScanner
文末有详细配置教程
一、 主要模块
主要功能模块
-
任务管理: -
支持扫描任务、FOFA 采集、IP 段采集。 -
任务进度实时可视化,便于跟踪。
-
-
POC 管理: -
内置多种常见漏洞的 POC(Proof of Concept)。 -
支持自定义 POC 并进行模块化管理。
-
-
服务扫描: -
支持对目标进行服务的快速识别和扫描。
-
-
漏洞扫描: -
集成多种漏洞检测功能,包括弱密码检测、命令执行、未授权访问等。
-
-
FOFA 采集和 IP 段采集: -
融合 FOFA 数据,支持目标资产的快速采集。
-
01 任务列表
示例
实现功能:
-
可视化服务扫描结果,对于扫描进度实时显示,点击“服务扫描”或“漏洞扫描”进度标签可查看扫描结果
使用说明
-
可点击“笔”图标对任务描述进行即时修改,方便任务管理 -
可根据ip范围和扫描进度对结果进行过滤:
-
点击“新建任务”,可创建服务扫描或漏洞扫描任务
-
对于FOFA采集与IP段采集等结果也采取可视化列表形式查看:
02 POC列表
示例
实现功能:
-
工具内置34种常见且危害性较高的漏洞检测模块,可点击启用图标设置该模块是否启用,并可一键启/禁用,方便调试 -
可根据类型查看相应POC,方便信息整理
使用说明:
-
添加POC时根据漏洞相应信息填写各栏:
如该漏洞可实现方便的exp攻击,可同时选择exp类型:
并可在后续的漏洞扫描中根据不同类型的exp进行调用
2.提交poc名称后,module目录下会自动生成 ‘poc名称_poc.py’,如具有exp,将同时生成‘poc名称_exp.py’,漏洞检测时会根据poc名称进行反射调用,故请勿修改文件名:
poc和exp脚本初始化为模板文件,并对requests和文件操作函数进行封装,可根据具体验证方法修改文件,大致逻辑如下:
poc.py:
def fingerprint(service): #进行漏洞检测前首先进行指纹识别,如满足指纹则继续验证
if (指纹识别):
return True #如指纹识别结果需保存,可返回Str并保存至service.speciality
else:
return False
def poc(service): 进行漏洞检测
if (存在漏洞):
return ['漏洞名(自动生成)', '具体情况', ('漏洞等级(可选)')] #如漏洞检测需返回特殊结果,可用元组形式返回:([与前一致], '特殊结果'),其中特殊结果保存至vuln.specify
exp.py:
def exp(vuln):
return"命令执行结果"
具体模块:
-
弱密码类型:
-
数据库弱密码: -
包含mysql、mssql、redis、postgresql数据库弱密码检测功能 -
示例:
-
-
tomcat弱密码: -
采用metasploit内置tomcat弱密码字典,注意tomcat自带密码保护机制,大量爆破可能导致manager用户被禁用 -
爆破成功后可执行exp,自动部署webshell目录下zs.war包并可执行命令 -
示例:
-
-
axis2弱密码: -
自动探测axis2目录,如存在axis2-admin目录则尝试以admin/axis2登录 -
登陆成功后可执行exp,自动部署webshell下aar包并可执行命令 -
示例:
-
-
weblogic控制台弱密码: -
自动探测是否开放console路径,并尝试爆破,爆破成功则返回用户名/密码 -
示例:
-
-
Zyxel 硬编码后门账户: -
尝试以zyfwp/PrOw!aN_fXp登录ftp端口,如登陆成功则返回漏洞结果 -
示例:
-
-
daloradius弱密码(0day):
-
尝试以默认密码登录 -
登陆成功可执行exp,可上传文件至网站根目录 -
示例:
-
部分安全设备密码泄露: -
对中科网威等安全设备前端泄露密码进行探测并返回结果 -
示例:
-
-
ssh弱密码: -
对22端口进行爆破登录 -
如爆破成功则可使用命令执行exp: -
示例:
-
-
命令执行类型
-
shiro反序列化: -
对常见key进行探测,支持cbc/gcm加密方式,采用SimplePrincipalCollection的payload,可不出网测试 -
示例:
-
-
浪潮管理系统V4.0 RCE: -
支持未授权登录/登录接口RCE/SysShel接口RC!
-
* 如存在SysShell接口RCE漏洞,可使用命令执行exp:
* 示例:
-
用友OA BshServlet接口泄露: -
探测是否开放BshServlet接口 -
如存在漏洞,则可使用命令执行exp -
示例:
-
-
docker未授权漏洞: -
探测是否可访问info路径 -
示例:
-
-
Thinkphp debug命令执行: -
测试是否可调用debug模块执行代码 -
如存在漏洞,则可使用命令执行exp -
示例:
-
-
Thinkphp5命令执行: -
测试是否可调用index/think/app/invokefunction模块执行代码 -
如存在漏洞,则可使用命令执行exp -
示例:
-
-
weblogic_XML反序列化: -
上传文件测试是否存在XML反序列化漏洞 -
如存在漏洞,则可使用文件上传exp
-
-
weblogic_wls9-async反序列化: -
利用@lufei大佬的poc测试,如有命令回显则存在漏洞 -
如存在漏洞,则可使用命令执行exp
-
-
MS17_010: -
不多说了
-
-
Apache Solr Velocity模板远程执行: -
首先未授权获取目标全部core,再以此测试是否可修改params.resource.loader.enabled值,如可修改,则返回并保存,以供exp使用 -
如存在漏洞,可使用命令执行exp
-
-
泛微OA_XML反序列化: -
采用URLDNS模块测试 -
目前大部分系统均已修复,且进一步利用条件较为困难,故不提供exp
-
-
奇安信 网康下一代防火墙RCE: -
通过写入命令至文件方式利用,如写入成功,则存在漏洞 -
如存在漏洞,可使用命令执行exp
-
-
H3C SecParh堡垒机远程命令执行: -
首先通过未授权获取管理员权限,再代码注入执行命令 -
如存在漏洞,则可使用命令执行exp
-
###篇幅有限需要看完整版可以访问原项目查看
0x07 配置与使用
-
下载后请修改config.ini文件的数据库配置,仅支持mysql数据库:
-
登录mysql数据库创建名为scan的数据库 -
命令行安装所需第三方库: pip install -r requirements.txt
-
django初始化配置: python manage.py makemigrations
python manage.py migrate
-
配置初始poc: python install.py
-
启动django服务器: python manage.py runserver
-
访问http://127.0.0.1:8000/:
免责声明:
该文章所涉及到的安全工具和技术仅做分享和技术交流学习使用,使用时应当遵守国家法律,做一位合格的白帽专家。
使用本工具的用户需要自行承担任何风险和不确定因素,如有人利用工具做任何后果均由使用者承担,本人及文章作者还有泷羽sec团队不承担任何责任。
如果侵权请联系作者删除文章!
本文中所涉及到的资料已经全部给各位看官老爷准备并且打包好了,后台回复“8366”即可获取
原文始发于微信公众号(泷羽Sec-醉陌离):VulScanner:一款专业的红队漏洞检测工具
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论