mirror of
https://github.com/nginx/nginx.git
synced 2025-06-17 17:20:42 +08:00
Detect runaway chunks in ngx_http_parse_chunked().
As defined in HTTP/1.1, body chunks have the following ABNF: chunk = chunk-size [ chunk-ext ] CRLF chunk-data CRLF where chunk-data is a sequence of chunk-size octets. With this change, chunk-data that doesn't end up with CRLF at chunk-size offset will be treated as invalid, such as in the example provided below: 4 SEE-THIS-AND- 4 THAT 0
This commit is contained in:
parent
9cb22efa3f
commit
77c01f10a1
@ -2268,6 +2268,9 @@ ngx_http_parse_chunked(ngx_http_request_t *r, ngx_buf_t *b,
|
|||||||
break;
|
break;
|
||||||
case LF:
|
case LF:
|
||||||
state = sw_chunk_start;
|
state = sw_chunk_start;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
goto invalid;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user