kawaiipantsu/NetworkSambaScanner

GitHub: kawaiipantsu/NetworkSambaScanner

网络Samba扫描器,用于检测SMB/Samba漏洞。

Stars: 0 | Forks: 0

# 网络 Samba 扫描器 一个用于扫描网络范围 SMB/Samba 漏洞的 Go 终端应用程序。 ## 功能 - **SMB 版本检测** – 通过原始协商数据包识别 SMBv1、SMBv2.x 和 SMBv3.x - **共享枚举** – 通过 NetShareEnum 列出所有可用的共享(空会话、访客或配置的凭据) - **权限测试** – 测试每个凭据下每个共享的读写访问权限 - **危险共享检测** – 标记 `ADMIN$`、`C$`、`IPC$`、`PRINT$` 等 - **严重性分类** – 发现结果评级为 INFO / WARNING / CRITICAL - **多种报告格式** – 纯文本、自包含 HTML 和 PDF - **电子邮件发送** – 通过 SMTP 使用 STARTTLS 或隐式 TLS 发送报告 - **cron 友好** – 设计用于单次 CLI 或计划 cron 执行 - **全局配置文件** – 所有设置在一个 YAML 文件中;所有功能均可单独切换 ## 快速开始 ``` # 构建 make # 编写默认配置文件 ./dist/networksambascanner --default-config # 编辑配置 $EDITOR ~/networksambascanner/networksambascanner.yaml # 运行扫描 ./dist/networksambascanner ``` ## 安装 ``` # 安装到 /usr/local/bin,配置在 /etc/ sudo make install # 或指定自定义前缀 sudo make install PREFIX=/opt/networksambascanner ``` ## 配置文件位置(按顺序搜索) 1. `/etc/networksambascanner.yaml` 2. `/usr/local/etc/networksambascanner.yaml` 3. `$HOME/networksambascanner/networksambascanner.yaml` 4. `$HOME/etc/networksambascanner.yaml` 使用 `-c ` 传递参数以使用特定文件。 ## 使用方法 ``` networksambascanner [options] -c, --config Path to config file --default-config Write default config and exit --default-config-path Print where --default-config would write to --dry-run Show which hosts would be scanned (no network probes) --show-config Print loaded config and exit -v, --version Print version -h, --help Show help ``` ## Cron 示例 ``` # 每日 02:00 扫描,将输出追加到 cron 日志 0 2 * * * /usr/local/bin/networksambascanner >> /var/log/networksambascanner/cron.log 2>&1 ``` ## 报告格式 | 格式 | 描述 | |------|--------| | `text` | 可读的纯文本 | | `html` | 自包含的暗色主题 HTML 报告 | | `pdf` | 通过 go-pdf/fpdf 生成 PDF 文档 | ## 构建目标 ``` make # build for current platform make build-debug # build with race detector make test # run tests make release # cross-compile Linux/macOS/Windows make install # install to /usr/local/bin make clean # remove dist/ ``` ## 依赖项 | 包名 | 目的 | |------|------| | `github.com/hirochachacha/go-smb2` | SMB2/3 客户端(共享枚举) | | `github.com/fatih/color` | 终端颜色 | | `github.com/schollz/progressbar/v3` | 实时进度条 | | `github.com/go-pdf/fpdf` | PDF 生成 | | `gopkg.in/yaml.v3` | YAML 配置解析 | SMBv1 检测使用手工制作的原始 TCP 协商数据包,没有外部依赖。
标签:Cron任务, EVTX分析, Go语言, Samba服务, SMB协议, YAML配置, 并发扫描, 日志审计, 权限测试, 枚举共享, 版本识别, 程序破解, 系统安装, 网络安全, 邮件发送, 配置文件管理, 隐私保护