【发布时间】:2020-07-10 12:46:32
【问题描述】:
我最近创建了一个 API,允许上传视频和音频文件,它运行良好,直到一位客户上传了一个大视频,我收到了这个错误:
未能读取申请表。超过多部分正文长度限制 134217728。
从许多帖子中可以明显看出,请求大小限制背后的理念是减少 DDoS 攻击的机会。 (如果我错了,请纠正我)。
- What security holes do I open up if I do not limit the max request length for file upload to my webserver?
- https://manage.accuwebhosting.com/knowledgebase/2997/ASPNet-Error--Maximum-request-length-exceeded.html
但是,我自己上传了一个大视频,并在本地 PC 和服务器上观看了带宽。我有这个应用程序的 VPS,我可以使用任务管理器的性能选项卡,通过选择以太网并查看发送和接收图表来查看带宽。
关键是,我在上传文件时看到高流量持续了几分钟,然后我看到了那个错误。这意味着即使 ASP.NET Core 拒绝请求,服务器的资源也会被消耗。
所以,我不明白这部分。 ASP.NET Core 如何通过限制请求大小来减少 DoS 或 DDoS 攻击的机会,而实际占用带宽?如果请求的负载/正文太大,甚至不消耗带宽,则逻辑方法是从一开始就删除 multipart/form-data 内容类型的请求。
【问题讨论】:
标签: asp.net-core-mvc ddos