zpf124
2023-07-25 17:18:18 +08:00
楼主的问题我们也遇到过,但你们的 QA 估计就只会背八股文,知其然不知其所以然,实际上是 WebDAV(对小白)不安全。
restful 是 作者发现人家 WebDAV 搞的这套 http method 很符合他的想法,所以复用(偷)了他们定义的 http method 而已,仅此而已,实际两者没什么关系。
而安测会将这个提示为风险的实际原因是针对小白的规则拦截导致被 AOE ,根本原因是有些小白用 IIS 或者其他一键脚本开启了 WebDAV 服务但没做鉴权,效果就和允许匿名的 FTP 服务一样,导致文件被脚本小子加密或者删除。
我们是某个合作的甲方人家找的安测出的报告里包含 “中风险漏洞: 使用 PUT ,http method”, 不过人家给的报告还包含里处理建议/参考, “打开服务设置,选择 IIS 服务器,关闭 WebDAV 服务”,所以我们一看就明白了
另外我们的要求只是高危漏洞必须处理,其他的可以商量,所以我们就解释说明了一下就 ok 了,如果你们的安测是甲方
的而且道理说不通,要求必须按规定,按他们原有的测试脚本,那你只能投降了。
-------------------------------
最后如果楼主只能改了,那也不算非常麻烦,spring 有个拦截器可以把 POST( "xxx/api", {"_method":"put"}) 转换识别为 put 请求,这样整体后端代码就不用改了。
前端呢也可以将 http 工具再封装一下, 把其他 method 改成 post + _method 参数的方式。