mirror of
https://github.com/shadow1ng/fscan.git
synced 2025-09-14 05:56:46 +08:00

- 移动adapters目录到plugins下统一管理 - 删除已迁移的老版本插件文件,避免代码重复 - 更新所有legacy适配器引用,统一使用legacy目录下的源文件 - 新增FindNet插件的legacy适配器,支持135端口RPC扫描 - 修复包导入路径,确保适配器正常工作 - 清理插件目录结构,分离新架构插件和legacy插件
54 lines
1.6 KiB
Go
54 lines
1.6 KiB
Go
package smb
|
||
|
||
import (
|
||
"github.com/shadow1ng/fscan/plugins/adapters"
|
||
"github.com/shadow1ng/fscan/plugins/base"
|
||
LegacyPlugins "github.com/shadow1ng/fscan/plugins/legacy"
|
||
)
|
||
|
||
// NewSmbPlugin 创建SMB弱密码检测插件
|
||
func NewSmbPlugin() base.Plugin {
|
||
// 插件元数据
|
||
metadata := &base.PluginMetadata{
|
||
Name: "smb",
|
||
Version: "1.0.0",
|
||
Author: "fscan-team",
|
||
Description: "SMB服务弱密码检测和共享枚举",
|
||
Category: "service",
|
||
Ports: []int{445, 139}, // SMB端口
|
||
Protocols: []string{"tcp"},
|
||
Tags: []string{"smb", "weak-password", "service", "brute-force"},
|
||
}
|
||
|
||
// 适配器选项
|
||
options := &adapters.LegacyPluginOptions{
|
||
CheckBruteFlag: true, // SMB依赖暴力破解标志
|
||
IsVulnPlugin: false, // 这是服务检测插件,不是漏洞检测
|
||
IsInfoPlugin: true, // 包含信息收集功能
|
||
CustomPorts: []int{445, 139}, // SMB端口
|
||
}
|
||
|
||
// 创建适配器,直接使用老版本的SmbScan函数
|
||
return adapters.NewLegacyPlugin(metadata, LegacyPlugins.SmbScan, options)
|
||
}
|
||
|
||
// init 自动注册SMB插件
|
||
func init() {
|
||
// 创建插件工厂
|
||
metadata := &base.PluginMetadata{
|
||
Name: "smb",
|
||
Version: "1.0.0",
|
||
Author: "fscan-team",
|
||
Description: "SMB服务弱密码检测和共享枚举",
|
||
Category: "service",
|
||
Ports: []int{445, 139},
|
||
Protocols: []string{"tcp"},
|
||
Tags: []string{"smb", "weak-password", "service", "brute-force"},
|
||
}
|
||
|
||
factory := base.NewSimplePluginFactory(metadata, func() base.Plugin {
|
||
return NewSmbPlugin()
|
||
})
|
||
|
||
base.GlobalPluginRegistry.Register("smb", factory)
|
||
} |