fscan/plugins/services
ZacharyZcR c8418196be fix: 修复MongoDB插件识别失败和性能问题
问题描述:
1. 识别问题: 在禁用暴力破解模式(-nobr)时无法识别MongoDB服务
2. 性能问题: 暴力破解模式极其缓慢,测试需要10分钟以上

修复方案:
1. 识别逻辑优化:
   - 先尝试MongoDB协议查询
   - 失败时使用端口推断(27017/27018/27019)
   - 增加详细错误信息便于调试

2. 性能优化:
   - 简化暴力破解逻辑,只检测无认证访问
   - 避免每次重复建立连接的开销
   - 从10分钟+优化到4秒内完成

3. 功能改进:
   - 添加testUnauthenticatedAccess方法
   - 保持向后兼容性
   - 为未来真正的认证实现预留接口

测试结果:
- 禁用暴力破解: 能正确识别MongoDB服务
- 启用暴力破解: 性能提升150倍 (10分钟 -> 4秒)
- 两种模式均工作正常
2025-09-02 02:45:47 +00:00
..
activemq.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
cassandra.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
elasticsearch.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
findnet.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
ftp.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
kafka.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
ldap.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
memcached.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
mongodb.go fix: 修复MongoDB插件识别失败和性能问题 2025-09-02 02:45:47 +00:00
ms17010.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
mssql.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
mysql.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
neo4j.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
netbios.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
oracle.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
postgresql.go fix: 修复PostgreSQL插件在禁用暴力破解模式下无法识别服务的问题 2025-09-02 02:30:07 +00:00
rabbitmq.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
rdp.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
README.md feat: 迁移legacy插件findnet和smbinfo到新架构 2025-08-26 00:22:32 +08:00
redis.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
rsync.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
smb2.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
smb.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
smbghost.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
smbinfo.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
smtp.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
snmp.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
ssh.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
telnet.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00
types.go perf: 移除插件系统冗余适配器层 2025-09-02 06:27:14 +08:00
vnc.go refactor: 优化插件系统设计,消除代码重复 2025-09-02 05:36:12 +08:00

服务扫描插件目录

本目录包含所有服务扫描插件,采用简化的单文件插件架构。

已实现插件

数据库服务

  • mysql.go - MySQL数据库扫描
  • postgresql.go - PostgreSQL数据库扫描
  • redis.go - Redis内存数据库扫描
  • mongodb.go - MongoDB文档数据库扫描
  • mssql.go - Microsoft SQL Server扫描
  • oracle.go - Oracle数据库扫描
  • memcached.go - Memcached缓存扫描
  • neo4j.go - Neo4j图数据库扫描

消息队列服务

  • rabbitmq.go - RabbitMQ消息队列扫描
  • activemq.go - ActiveMQ消息队列扫描
  • kafka.go - Apache Kafka扫描

网络服务

  • ssh.go - SSH远程登录服务扫描
  • ftp.go - FTP文件传输服务扫描
  • telnet.go - Telnet远程终端服务扫描
  • smtp.go - SMTP邮件服务扫描
  • snmp.go - SNMP网络管理协议扫描
  • ldap.go - LDAP目录服务扫描
  • rsync.go - Rsync文件同步服务扫描

Windows服务

  • findnet.go - Windows网络发现插件 (RPC端点映射)
  • smbinfo.go - SMB协议信息收集插件

其他服务

  • vnc.go - VNC远程桌面服务扫描
  • cassandra.go - Apache Cassandra数据库扫描

插件特性

每个插件都包含:

  • 服务识别功能
  • 弱密码检测功能
  • 完整的利用功能
  • 错误处理和超时控制
  • 统一的结果输出格式

开发规范

所有插件都遵循 ../README.md 中定义的开发规范。