Artem Smotrakov created FILEUPLOAD-297:
------------------------------------------

             Summary: Default maximum sizes for requests and files
                 Key: FILEUPLOAD-297
                 URL: https://issues.apache.org/jira/browse/FILEUPLOAD-297
             Project: Commons FileUpload
          Issue Type: Improvement
            Reporter: Artem Smotrakov
         Attachments: default_upload_size_limits_v1.patch

Currently FileUpload allows setting the maximum allowed size of a complete 
request and the maximum allowed size of a file to be uploaded. However the 
library doesn't set any default limitations. Introducing default values may be 
a little defense-in-depth measure to reduce a risk of (D)DoS attacks for 
applications which forgot to set such limits.

Here is how other libraries/servers set such default values:
 # nginx sets the maximum allowed size of the client request body to 1MB
 ## 
[http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size]
 # By default, the IIS 7 upload limit is 30MB
 ## [https://docs.microsoft.com/en-us/windows/desktop/bits/upload-limits]
 # PHP sets max size of post data allowed to 8MB. PHP also sets the maximum 
size of an uploaded file to 2MB
 ## [https://www.php.net/manual/en/ini.core.php#ini.post-max-size]
 ## [https://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize]
 # Spring Boot specifies the maximum size permitted for uploaded files. The 
default is 1MB. It also specifies the maximum size allowed for 
multipart/form-data requests. The default is 10MB.
 ## 
[https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/autoconfigure/web/servlet/MultipartProperties.html]

As you can see, default values look pretty different. I am attaching a patch 
which sets the maximum file size to 2MB and the maximum size of a request to 
10MB. Adding such limits by default introduces a risk that some applications 
may break, so maybe the numbers should be higher. Please let me know if such an 
update is okay, and I'll create a pull request.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to