WebDAV 的风险点
WebDAV 是把 Web 服务器变成可读写文件目录的扩展协议,用一组额外的方法完成目录浏览、上传与移动。问题往往出在启用后忘记收紧:目录可写时可直接上传内容,方法开放时未授权即可枚举目录结构。检查以方法集与目录权限为主,写方法验证需要客户明确授权并安排清理。
基本信息
| 关键方法 | PROPFIND 列目录、PUT 上传、MKCOL 建目录、MOVE 与 COPY 移动 |
|---|---|
| 常见承载 | IIS 的 WebDAV 模块、Nginx 与 Apache 的扩展模块 |
| 判定信号 | 未认证即可列目录或看到方法被允许 |
| 风险 | 未授权上传、目录枚举与内容替换 |
| 处置方向 | 关闭不需要的 WebDAV,或限制认证与目录范围 |
典型使用场景
- 外网站点核查:确认是否无意中启用了 WebDAV 能力
- 共享目录评估:确认目录权限与认证要求是否匹配数据敏感度
- 迁移与升级核查:服务器组件升级后方法集是否发生变化
- 变更前评估:关闭或限制 WebDAV 前核对现有使用方
- 复测:确认限制生效后未授权方法不再可用
检查方式
检查方式
# 只读探测:查看目录列举能力与返回的方法信息
curl -s -X PROPFIND -i https://target.example/ | head -n 20
# 关注返回的状态与允许的方法列表
# 服务端侧核查模块与目录配置,确认是否允许写
# 写方法验证需授权与清理安排,通常以配置核查替代方法与风险对照
| 方法 | 作用 | 风险 |
|---|---|---|
| PROPFIND | 列出目录与属性 | 暴露目录结构 |
| PUT | 上传文件到指定路径 | 可投递脚本或覆盖内容 |
| MKCOL | 创建目录 | 便于批量投放 |
| MOVE 与 COPY | 移动与复制资源 | 可改写现有文件布局 |
| DELETE | 删除资源 | 破坏业务内容 |
不要用 PUT 上传测试文件验证可写:会遗留垃圾数据,必要时先取得授权并约定清理方式。
不同产品对 WebDAV 的支持差异明显:IIS、Nginx 与 Apache 的模块与默认行为各不相同,结论要写明承载产品与版本,否则整改方按其他产品的经验处理可能不生效。