Malformed Input
Malformed Input
These tests send pathological, oversized, or completely invalid payloads. The goal is not RFC compliance (there’s no RFC section for “what to do with binary garbage”) — it’s robustness. A well-implemented server should reject gracefully, not crash, hang, or consume unbounded resources.
Expected Behavior
- Binary garbage / empty / incomplete:
400, close, or timeout — the server may not even recognize a request was attempted - Oversized fields:
400,414 URI Too Long,431 Request Header Fields Too Large, or close - Invalid bytes (NUL, control chars, non-ASCII):
400or close - Integer overflow:
400or close
Tests
Random non-HTTP bytes.
100 KB URL.
100 KB header name.
100 KB header value.
100 KB method name.
10,000 headers.
NUL byte in request target.
Control characters in header value.
Non-ASCII bytes in header name.
Non-ASCII bytes in URL.
Content-Length exceeding 64-bit range.
Partial HTTP request.
Zero bytes sent.
Only spaces/tabs, no method or URI.
NUL byte in header value.
Chunk size integer overflow.
HTTP/2 preface sent to HTTP/1.1 server.
100KB chunk extension value.
Empty Content-Length value.