Snaffler 文件共享扫描指南:Windows/AD 共享目录里怎么挖出敏感文件

📅 2026/8/27 17:04:07
Snaffler 文件共享扫描指南:Windows/AD 共享目录里怎么挖出敏感文件
Snaffler 文件共享扫描指南Windows/AD 共享目录里怎么挖出敏感文件【免费下载链接】Snafflera tool for pentesters to help find delicious candy, by l0ss and Sh3r4 ( Twitter: /mikeloss and /sh3r4_hax )项目地址: https://gitcode.com/gh_mirrors/sn/SnafflerSnaffler 是一款面向渗透测试与红队的网络共享扫描与敏感文件发现工具。它从域环境出发自动枚举可读共享把 SSH 私钥、数据库凭据、内存转储这类糖果从海量文件里挑出来。为什么要在 Windows 共享里翻敏感文件渗透进域之后真正的收获往往不在内存或注册表里而躺在某个共享目录中备份机上的 NTDS.DIT、存着密码的 .rdp、内嵌域管凭据的 PowerShell 脚本。人肉翻找毫无胜算——一台域里有上千台机器每台挂着几十个共享文件混杂着各种语言的代码和配置。这类场景需要的是能成规模、低声响地把共享空间过一遍的机制。Snaffler 把大海捞针变成了一条流水线。一次扫描的完整旅程 整场扫描像传送带一样推进每个环节有专门的模块执行并把产物交给下一站共享发现主控先向 AD 要计算机清单再对每台机器调用 Win32 接口 NetShareEnum 拉出共享列表实现集中在 SnaffCore/ShareFind/。IPC$ 与 PRINT$ 在这里直接被跳过省掉无意义的流量。产出一批 UNC 路径。共享过滤每个共享先过共享层规则。默认规则包按后缀剔除非文件共享SYSVOL、NETLOGON 这类复制型共享只扫第一台域控其余直接跳过。可读且通过的共享被封装成目录遍历任务。目录遍历TreeWalker 用 GetFiles / GetDirectories 逐层下钻。进入每个子目录前SnaffRules/DefaultRules/PathRules/ 里的目录规则决定是否放行——大型误报目录、Windows 系统目录在此被整剪掉这是带宽省得最多的地方。产出的文件逐个投入文件任务队列。文件评估FileScanner 依次拿文件过文件规则链代码在 SnaffCore/FileScan/。命中 Snaffle 即记录规则名与内容上下文命中 Discard 则静默丢弃命中 Relay 则交给指定下游规则复检。结果输出命中结果按兴趣级别过滤后输出可写文件plain/JSON/TSV或标准输出打开 Snaffle 开关时还会把命中原文件拷到本地留档。背后的质检规则 ⚙️Snaffler 的判断逻辑不写死在代码里而是一整套 TOML 规则文件见 SnaffRules/DefaultRules/。把它想象成工厂的多级质检文件像产品过一关才能进下一关。四种质检动作动作作用典型场景Discard直接淘汰不再检查图片文件、已知误报目录Snaffle判定命中并输出id_rsa、.kdbx、NTDS.DITRelay转交指定下游规则继续查先按 .ps1 后缀筛选再查内容CheckForKeys专项核查证书是否带私钥.der、.p12 等证书文件五种匹配方式Exact精确、Contains包含、StartsWith前缀、EndsWith后缀、Regex正则可作用于文件名、扩展名、完整路径或内容。规则链的灵魂是先廉价、后昂贵Relay 类规则只看扩展名一次字符串比较Regex 内容检查却要读文件。廉价规则放前面大部分文件在进入昂贵环节前就被筛掉——像仓库先扫外包装标签只对可疑包裹开箱验货。MatchAction Relay MatchLocation FileExtension WordList [\.ps1, \.psm1] RelayTargets [KeepPsCredentials, KeepAwsKeysInCode]为什么能扫得这么快三条互相独立的任务队列并行运转如同各自配齐工人的流水线ShareTaskScheduler消化这台机器有哪些共享任务量约等于机器数TreeTaskScheduler消化这个目录里有哪些文件任务量等于目录数FileTaskScheduler消化这个文件值不值钱任务量可能上百万。每条队列有独立线程池ShareThreads / TreeThreads / FileThreads和积压上限MaxShareQueue / MaxTreeQueue / MaxFileQueue。队列满了上游线程就阻塞形成天然节流避免内存爆掉。更关键的是动态再平衡共享队列清空后其线程名额划给文件队列文件积压过半时又回吐一条线程给目录队列让三条线的速度始终咬合。实战参数与 OPSEC目标关键参数说明低噪音-f只经 DFS 发现共享不逐机 SMB 枚举提速-r内容搜索的大小上限超限文件只按名字判断降噪-b只输出指定兴趣级别0-3的命中自定义规则-p指向 TOML 规则目录整体替换默认规则包丰富上下文-j加大内容命中点两侧显示的字节数文件捕获-m / -l命中原文件拷贝到本地-l 限定拷贝上限本地隐蔽-i直接指定目录做文件扫描跳过 AD 与共享枚举进攻场景下-f 与 -i 是隐蔽度最高的组合前者不做逐机连接尝试后者甚至不发起网络请求。快速答疑 支持 DFS 吗支持。未指定目标时它会直接从 AD 读取 DFS 命名空间某共享若同时可经 DFS 路径访问优先走 DFS 入口且同一命名空间只扫一次避免重复流量。怎么加自己的规则照抄一份默认 TOML改 MatchLocation、WordList 与 MatchAction放入 -p或 RuleDir指向的目录即可。注意自定义目录是替换默认规则包不是叠加。超大文件怎么办内容类规则只在 -r 阈值内生效超限文件仅受名称/扩展名规则约束拷贝方面用 -l 限制大小防止把整块虚拟磁盘镜像拉回测试机。把翻遍全域共享找糖果压缩成一条命令是 Snaffler 给出的答案发现、过滤、遍历、检查各有专属流水线规则全部可替换。想动手的话git clone https://gitcode.com/gh_mirrors/sn/Snaffler 拿到源码在实验域里先跑一轮 -f看看共享里到底藏着什么。【免费下载链接】Snafflera tool for pentesters to help find delicious candy, by l0ss and Sh3r4 ( Twitter: /mikeloss and /sh3r4_hax )项目地址: https://gitcode.com/gh_mirrors/sn/Snaffler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考