У меня есть сервер в cherrpy, где я хочу предотвратить загрузку больших файлов. Чтобы предотвратить это, я указываю максимальный размер тела запроса. Однако я не совсем уверен, предотвращает ли это загрузку больших файлов. Что делать, если кто-то указывает неправильную длину контента при загрузке файла? Будет ли этого достаточно, чтобы обмануть мой сервер?
Можно ли предотвратить загрузку больших файлов на сервер, указав максимальный размер тела запроса?
Ответы (2)
Я бы использовал Curl, чтобы попытаться проверить вашу теорию. Похоже, это может работать для установки фиктивной длины содержимого.
curl_setopt($ch, CURLOPT_HTTPHEADER, 'Content-Type: application/octet-stream','Content-length: 100');
Использование длины контента Curl
Надеюсь это поможет!
Эндрю
person
Andrew Kloos
schedule
07.01.2013
CherryPy не разрешает полную загрузку во всех случаях. CherryPy wsgiserver будет жаловаться, если значение Content-Length запроса превысит максимальное значение. Если Content-Length меньше указанного максимума, сервер попытается прочитать только это количество байтов. Если запрос использует фрагментированное кодирование (и, следовательно, не включает Content-Length), то CherryPy будет жаловаться, когда количество прочитанных байтов превысит указанный максимум.
person
fumanchu
schedule
07.01.2013