在日常的渗透测试或内网安全评估中,你是否曾为繁杂的资产发现与漏洞验证流程感到头疼?今天为大家介绍一款名为 SweetBabyScan(甜心宝贝扫描器)的国产工具,它或许能成为你手中的利器。这款工具定位为轻量级的内网资产探测与漏洞扫描器,并集成了 Xray 与 Nuclei 的 POC 库,同时支持弱口令爆破等实用功能。
工具简介与定位
SweetBabyScan 是一款支持弱口令爆破的内网资产探测漏洞扫描工具,集成了 Xray 与 Nuclei 的 POC。其主要功能涵盖:
- 主机存活检测:支持 IP 和域名,探测方式支持 PING/ICMP。
- 端口扫描:识别 IP 和域名上的开放端口及服务。
- Web资产识别:自动进行网站爬虫、截图和 CMS 识别。
- 漏洞检测:利用集成的 Nuclei 和 Xray POC 进行漏洞扫描。
- 内网信息收集:支持网卡识别、域控识别,并内置了 SMBGhost、MS17017 等高危漏洞的检测能力。
- 弱口令爆破:
- 文件服务:FTP, SMB
- 远程服务:SSH, RDP, SNMP
- 数据库:Redis, MongoDB, MySQL, SQLServer, PostgreSQL, Elasticsearch, Oracle, Memcached
- 网络穿透与代理:支持 TCP 端口转发、内网穿透以及 SOCK5 代理功能。
工具使用截图
工具运行时会根据当前系统自动下载对应版本的 Chromium 以支持爬虫截图功能。








高级用法示例
调高主机探测与端口扫描的并发数以提升速度:
./SbScan -h 192.168.0.0/16 -wsh 500 --wsp 500



端口扫描支持多种格式:单个端口、端口列表、端口范围或预定义类型。
./SbScan -h 192.168.188.0/24 -p 80,22,81-89


查询漏洞库中与特定组件相关的POC,例如列出所有 weblogic 相关的漏洞检测脚本:
./SbScan --lpn --fpn weblogic


一、工具编译
首先获取项目代码及最新的POC库:
git clone https://github.com/inbug-team/SweetBabyScan.git --recursive
初始化 Go 模块:
go mod tidy
go mod vendor
Windows 平台编译:
set GOOS=windows
set GOARCH=amd64
go build -ldflags="-s -w" -trimpath -o SbScan.exe
set GOOS=windows
set GOARCH=386
go build -ldflags="-s -w" -trimpath -o SbScan.exe
Mac 或 Linux 平台编译:
GOOS=darwin GOARCH=amd64 go build -ldflags="-s -w" -trimpath -o SbScan
GOOS=darwin GOARCH=arm64 go build -ldflags="-s -w" -trimpath -o SbScan
GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -trimpath -o SbScan
GOOS=linux GOARCH=386 go build -ldflags="-s -w" -trimpath -o SbScan
二、运行与常用命令
基本自动扫描(使用默认网段):
./SbScan
扫描指定IP段:
./SbScan -h=192.168.188.1/24
扫描指定IP段和端口:
./SbScan -h=192.168.188.1/24 -p=tiny
./SbScan -h=192.168.188.1/24,10.0.0.1/16 -p=22,80,443
混合扫描IP段和域名:
./SbScan -h=192.168.188.1/24,10.0.0.1/24,www.a.com,www.b.xyz,www.c.net
修改并发参数以提高性能:
./SbScan -wsh=2048 -wsp=1024 -h=192.168.188.1/24,10.0.0.1/16 -p=22,80,443
跳过部分扫描阶段:
./SbScan -h=192.168.188.1/24 -p=22,80 --nsh --nsp --nsw --nsv
使用自定义字典和指定输出:
./SbScan -h=ip.txt -wp=pass.txt -wu=user.txt -oe=test.xlsx -ot=test.txt -ssw=redis,ssh,mysql
使用内置弱口令爆破生成器:
./SbScan -h=192.168.188.1/24 -iwp -pp=test,Test -pc=@ -ps=123
开启TCP端口转发:
./SbScan --pf -sh=192.168.188.1:8080 -lp=8080
内网穿透 - 公网服务器端启动:
./SbScan --pm --pms -secret=自定义密码
内网穿透 - 客户端端口映射:
./SbScan --pm --pmc -secret=自定义密码 -su=公网IP:9188 -pcm=8081-127.0.0.1:8080,8082-127.0.0.1:8080,8088-192.168.166.55:80
127.0.0.1:8080 映射到 公网8081
127.0.0.1:8080 映射到 公网8082
192.168.166.55:80 映射到 公网8088
内网Sock5穿透:
./SbScan --pm --pmc --pmcs -secret=自定义密码 -su=公网IP:9188
三、全部参数说明
使用帮助命令查看所有参数:
./SbScan --help
Usage:
./SbScan [flags]
Flags:
-il, -isLog 显示日志 (default true)
-is, -isScreen 启用截图 (default true)
-oe, -outputExcel string 指定保存excel文件路径[以.xlsx结尾]
-ot, -outputTxt string 指定保存txt文件路径[以.txt结尾]
-h, -host string 检测网段/域名,或者txt文件[以.txt结尾,一行一组回车换行] (default "192.168.0.0/16,172.16.0.0/12,10.0.0.0/8")
-p, -port string 端口范围:tiny[精简]、web[WEB服务]、normal[常用]、database[数据库]、caffe[咖啡厅/酒店/机场]、iot[物联网]、all[全部]、自定义 (default "web")
-pt, -protocol string 端口范围:tcp、udp、tcp+udp (default "tcp+udp")
-hb, -hostBlack string 排除网段
-msh, -methodScanHost string 验存方式:PING、ICMP (default "ICMP")
-wsh, -workerScanHost int 存活并发 (default 250)
-tsh, -timeOutScanHost int 存活超时 (default 3)
-r, -rarity int 优先级 (default 10)
-wsp, -workerScanPort int 扫描并发 (default 250)
-tspc, -timeOutScanPortConnect int 端口扫描连接超时 (default 6)
-tsps, -timeOutScanPortSend int 端口扫描发包超时 (default 6)
-tspr, -timeOutScanPortRead int 端口扫描读取超时 (default 6)
-inpo, -isNULLProbeOnly 使用空探针,默认使用自适应探针
-iuap, -isUseAllProbes 使用全量探针,默认使用自适应探针
-wss, -workerScanSite int 爬虫并发 (default 16)
-tss, -timeOutScanSite int 爬虫超时 (default 6)
-ts, -timeOutScreen int 截图超时 (default 60)
-lpn, -listPocNuclei 列举Poc Nuclei
-lpx, -ListPocXray 列举Poc Xray
-fpn, -filterPocName string 筛选POC名称,多个关键字英文逗号隔开
-fvl, -filterVulLevel string 筛选POC严重等级:critical[严重] > high[高危] > medium[中危] > low[低危] > info[信息]、unknown[未知]、all[全部],多个关键字英文逗号隔开
-tspn, -timeOutScanPocNuclei int PocNuclei扫描超时 (default 6)
-wsPoc, -workerScanPoc int Poc并发 (default 100)
-gsw, -groupScanWeak int 爆破分组 (default 20)
-wsw, -workerScanWeak string 爆破并发,键值对形式,英文逗号分隔 (default "ssh:1,smb:1,rdp:1,snmp:1,sqlserver:4,mysql:4,mongodb:4,postgres:4,redis:6,ftp:1,clcsearch:4,oracle:4,memcached:4")
-tsw, -timeOutScanWeak int 爆破超时 (default 6)
-nsh, -noScanHost 跳过主机存活检测
-nsw, -noScanWeak 跳过弱口令爆破
-nsp, -noScanPoc 跳过POC漏洞验证
-nsv, -noScanVul 跳过高危系统漏洞探测
-ssw, -serviceScanWeak string 指定爆破协议:ssh,smb,rdp,snmp,sqlserver,mysql,mongodb,postgres,redis,ftp,clickhouse,elasticsearch,oracle,memcached,多个协议英文逗号分隔,默认全部
-au, -aUser string 追加弱口令账号字典[以.txt结尾]
-ap, -aPass string 追加弱口令密码字典[以.txt结尾]
-wu, -wUser string 覆盖弱口令账号字典[以.txt结尾]
-wp, -wPass string 覆盖弱口令密码字典[以.txt结尾]
-iap, -isAPass 追加弱口令生成器
-iwp, -isWPass 覆盖弱口令生成器
-pp, -passwordPrefix string 密码前缀,多个英文逗号分隔
-pc, -passwordCenter string 密码中位,多个英文逗号分隔
-ps, -passwordSuffix string 密码后缀,多个英文逗号分隔
-pf, -portForward 开启端口转发
-sh, -sourceHost string 目标转发主机
-lp, -localPort int 本机代理端口
-pm, -portMap 开启内网穿透
-pmc, -portMapClient 开启内网穿透-客户端
-pms, -portMapServer 开启内网穿透-服务端
-pmcs, -portMapClientSock5 开启内网穿透-客户端Sock5
-s, -secret string 穿透密钥,自定义 (default "SBScan")
-psl, -portServerListen int 穿透服务端监听端口 (default 9188)
-sp, -sock5Port int Sock5监听端口 (default 9189)
-sau, -sock5AuthUsername string Sock5鉴权账号
-sap, -sock5AuthPassword string Sock5鉴权密码
-su, -serverUri string 穿透服务端地址,公网IP:端口
-pcm, -portClientMap string 穿透客户端映射字典,多个英文逗号隔开,格式:8080-127.0.0.1:8080,9000-192.168.188.1:9000
小结:SweetBabyScan 作为一个功能聚合型的扫描器,对于需要快速进行内网资产梳理、常规漏洞排查以及弱口令测试的安全人员来说,具有一定的实用价值。其开源的特性也便于社区开发者共同完善。你可以关注云栈社区获取更多此类实用的安全工具与实战技巧。