77<p >Directly writing user input (for example, an HTTP request parameter) to an HTTP header
88can lead to an HTTP request-splitting or response-splitting vulnerability.</p >
99
10- <p >HTTP Response- splitting can lead to vulnerabilities such as XSS, and cache poisoning.</p >
11- <p >HTTP Request- splitting can allow an attacker to inject/smuggle an additional HTTP request into a client's outgoing socket connection.
10+ <p >HTTP response splitting can lead to vulnerabilities such as XSS and cache poisoning.</p >
11+ <p >HTTP request splitting can allow an attacker to inject an additional HTTP request into a client's outgoing socket connection.
1212This can allow an attacker to perform an SSRF-like attack.</p >
1313
14- <p >In the context of a servlet container, if the user input includes blank lines,
15- and if the servlet container does not itself escape the blank lines,
16- then a remote user can cause the response to turn into two separate responses,
17- one of which is controlled by the remote user. This is also HTTP Response- splitting.</p >
14+ <p >In the context of a servlet container, if the user input includes blank lines
15+ and the servlet container does not escape the blank lines,
16+ then a remote user can cause the response to turn into two separate responses.
17+ The remote user can then control one response, which is also HTTP response splitting.</p >
1818</overview >
1919
2020<recommendation >
2121<p >Guard against HTTP header splitting in the same way as guarding against cross-site scripting.
2222Before passing any data into HTTP headers, either check the data for special characters, or
2323escape any special characters that are present.</p >
2424
25- <p >In the case of code calling Netty API's directly, ensure that the <code >validateHeaders</code > parameter is set to <code >true</code >.</p >
25+ <p >If the code calls Netty API's directly, ensure that the <code >validateHeaders</code > parameter is set to <code >true</code >.</p >
2626</recommendation >
2727
2828<example >
@@ -42,8 +42,8 @@ The second way will verify the parameters before using them to build the HTTP re
4242</example >
4343
4444<example >
45- <p >The following example shows the use of the library ' netty' with HTTP request-splitting verification configurations .
46- The second way will verify the parameters before using them to build the HTTP request.</p >
45+ <p >The following example shows the use of the netty library with configurations for verification of HTTP request splitting .
46+ The second recommended approach in the example verifies the parameters before using them to build the HTTP request.</p >
4747
4848<sample src =" NettyRequestSplitting.java" />
4949</example >
0 commit comments