内网评估60 条

SMB 共享枚举方法

枚举主机共享列表、访问权限与可写性:找“全盘共享”“Everyone 可写”类配置问题,注意只读为主。

SMB 共享枚举查什么

文件共享是内网横向移动的重要跳板:一份「全员可写」的共享目录可以被用来投递可执行文件,一个「全盘共享」可以让人直接读到系统盘内容,而配置不当的共享还可能允许匿名列出。枚举的目标是把共享名、可用账号、读权限与写权限列清楚,重点是找 Everyone 可写与匿名可列这两类配置问题。原则是只读为主:写权限的确认方式必须提前与管理员约定。

基本信息

对象文件服务器、成员机、NAS 设备(Windows 或 Samba)
枚举内容共享列表、匿名可列性、账号可读范围、写权限标记
常用工具smbclient、netexec 或 crackmapexec 的 shares 模块
纪律不遍历目录树、不拷出业务文件
写权限验证与管理员约定,用空目录或测试文件方式确认

典型使用场景

  • 内网评估中识别文件共享暴露面与横向移动路径
  • 核查匿名可列共享:这类配置会直接暴露共享清单
  • 发现「全盘共享」与过度授权目录,作为配置问题提出
  • 评估共享目录中是否存在敏感文件命名线索(只看目录与文件名)
  • 修复验证:确认权限已收敛,匿名枚举已被拒绝

枚举示例

枚举示例
smbclient -L //10.0.10.20 -N              # 匿名列出共享清单
smbclient -L //10.0.10.20 -U testuser%密码   # 指定账号列出(用测试账号)
netexec smb 10.0.10.0/24 --shares            # 批量枚举共享与权限标记
# 记录:共享名 + 匿名可列性 + 读权限 + 写权限标记 + 备注
# 不遍历目录内容;需要确认写权限时先与管理员约定测试目录

结果与判断

结果含义处置
匿名可列出共享清单匿名访问未关闭列为配置问题,建议禁用匿名枚举
共享标记为 Everyone 可写可投递文件,横向移动风险高优先级提出并要求收敛权限
共享名为磁盘根(如 C$、D$)管理共享被普通账号可达核查账号权限与网络可达范围
需凭据且权限受限配置合理记录为已核查
写权限验证以空目录或测试文件方式与管理员配合进行,避免覆盖或污染真实业务文件。
共享权限与 NTFS 权限是两层:共享层给了写权限但 NTFS 层拒绝时实际不可写,判断时要看两层并记录验证方式。

易错点

  • 为验证写权限在真实共享上传文件:可能覆盖业务文件,留下难以清理的痕迹
  • 只列共享名不看权限实质:共享名看不出权限,必须看访问标记与实测结果
  • 忽略 NTFS 与共享权限的双层关系:只看一层会得出错误结论
  • 遍历目录树统计文件:超出证明问题所需,等于批量获取客户文件清单

数据来源与参考

  • Microsoft Learn(SMB 共享)
  • Samba 官方文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌