常见漏洞验证121 条

HTTP 方法支持检查

核查服务器允许的方法集:PUT/DELETE 直通、TRACE 回显、方法重载(X-HTTP-Method-Override)都可能扩大操作面。

HTTP 方法支持检查

这项检查核对 Web 服务器实际允许的方法集合,以及网关、反向代理与应用三层配置是否一致。三类风险值得关注:写方法直通(放行上传与删除语义的方法,可能直接作用于资源或目录)、回显类方法(把请求内容原样回显,配合其他技术可形成跨站追踪)、以及方法重载(用请求头覆盖真实方法,绕过只在网关层生效的规则)。核查只需读取方法集与响应形态,不需要用写方法对生产资源做实际验证。

基本信息

核查内容服务端返回的允许方法集与实际放行情况
三层差异网关、反向代理与应用各自可能放行不同方法
主要风险写方法直通、回显泄漏、方法重载绕过
修复方向按需放行方法,在网关层统一收敛

典型使用场景

  • 静态站点:服务器默认放行方法远超实际需要
  • 接口服务:仅用查询与提交两种方法,却放行了完整方法集
  • 上传目录:写方法放行后可在目录内创建文件
  • 反向代理差异:网关收敛了方法,后端仍接受原始方法
  • 跨站追踪核查:回显类方法开启时的风险确认

检查方式

检查方式
curl -s -X OPTIONS -i https://target.example/ | grep -i '^allow'
# 分别对关键路径核查:首页、接口前缀、上传与静态资源目录
curl -s -o /dev/null -w '%{http_code}\n' -X TRACE https://target.example/
# 记录状态码与响应体特征,确认回显类方法是否开启
# 不执行写入与删除类方法,只记录方法集与响应形态

方法与风险

方法风险建议
写方法类可在目标创建或删除资源仅对必要路径开放并加认证
回显类原样回显请求内容关闭,除非业务确有需要
重载头覆盖真实方法绕过网关规则网关层拒绝该请求头
查询类一般风险低,但可放大信息泄露按需开放并加访问控制
结论要写清是在哪一层观察到的方法集:网关响应与后端响应不一致本身就是一个需要整改的配置问题。

易错点

  • 只测根路径:接口子路径常采用完全不同的方法配置
  • 把反向代理默认放行当作业务配置:未核对后端实际接受的方法
  • 用写方法对生产资源做验证:可能直接造成数据变更或残留文件
  • 忽略方法重载头:只在网关层收敛方法会被该请求头绕过
  • 不记录响应码与响应形态:结论缺少证据,整改后无法复核

数据来源与参考

  • RFC 9110(HTTP 方法)
  • OWASP WSTG WSTG-CONF-06
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌