我想知道将 nginx 中的 client_max_body_size 从 1MB 提高到 20GB 是否存在任何安全风险?
提高 client_max_body_size nginx 有什么安全风险吗?
信息安全
网络服务器
nginx
2021-08-15 22:15:00
1个回答
显然,设置client_max_body_size为 20 GB 是不合理的,我想知道为什么您会允许(用户?您自己?)上传如此巨大的文件。
client_max_body_size管理相应的 HTTP Header 参数。作为一种安全的良好做法,我们必须始终将标头和消息正文限制为最小的合理长度。为什么 ?20 GB 是如此之大,以至于您将服务器置于与2013 年相同的场景中,当时 Django允许用户使用非常长的密码,迫使 Django(而不是托管它的服务器)执行非常昂贵的哈希计算,您可能会猜到, 对整个 Django 的身份验证框架的拒绝服务攻击。
这就是说,如果您将client_max_body_size. 例如,您将如何设置keepalive_timeout参数?您如何根据client_max_body_size设置为 20 GB 的事实来计算它?可能是20秒?20分钟 ?两个小时?同样的问题涉及client_header_timeout,并且client_body_timeout 分别设置了 Nginx 在客户端上等待指定请求标头或请求提供对象的最长时间。