Skip to content

Commit 425448a

Browse files
committed
Fix java/netty-http-request-or-response-splitting overlay compilation regression
1 parent 5e8b12a commit 425448a

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

java/ql/src/Security/CWE/CWE-113/NettyResponseSplitting.ql

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import java
1717
import semmle.code.java.dataflow.FlowSources
1818

19+
overlay[local?]
1920
abstract private class InsecureNettyObjectCreation extends ClassInstanceExpr {
2021
int vulnerableArgumentIndex;
2122

@@ -27,6 +28,7 @@ abstract private class InsecureNettyObjectCreation extends ClassInstanceExpr {
2728
abstract string splittingType();
2829
}
2930

31+
overlay[local?]
3032
abstract private class RequestOrResponseSplittingInsecureNettyObjectCreation extends InsecureNettyObjectCreation
3133
{
3234
override string splittingType() { result = "Request splitting or response splitting" }
@@ -35,6 +37,7 @@ abstract private class RequestOrResponseSplittingInsecureNettyObjectCreation ext
3537
/**
3638
* Request splitting can allowing an attacker to inject/smuggle an additional HTTP request into the socket connection.
3739
*/
40+
overlay[local?]
3841
abstract private class RequestSplittingInsecureNettyObjectCreation extends InsecureNettyObjectCreation
3942
{
4043
override string splittingType() { result = "Request splitting" }
@@ -43,11 +46,13 @@ abstract private class RequestSplittingInsecureNettyObjectCreation extends Insec
4346
/**
4447
* Response splitting can lead to HTTP vulnerabilities like XSS and cache poisoning.
4548
*/
49+
overlay[local?]
4650
abstract private class ResponseSplittingInsecureNettyObjectCreation extends InsecureNettyObjectCreation
4751
{
4852
override string splittingType() { result = "Response splitting" }
4953
}
5054

55+
overlay[local?]
5156
private class InsecureDefaultHttpHeadersClassInstantiation extends RequestOrResponseSplittingInsecureNettyObjectCreation
5257
{
5358
InsecureDefaultHttpHeadersClassInstantiation() {
@@ -58,6 +63,7 @@ private class InsecureDefaultHttpHeadersClassInstantiation extends RequestOrResp
5863
}
5964
}
6065

66+
overlay[local?]
6167
private class InsecureDefaultHttpResponseClassInstantiation extends ResponseSplittingInsecureNettyObjectCreation
6268
{
6369
InsecureDefaultHttpResponseClassInstantiation() {
@@ -66,6 +72,7 @@ private class InsecureDefaultHttpResponseClassInstantiation extends ResponseSpli
6672
}
6773
}
6874

75+
overlay[local?]
6976
private class InsecureDefaultHttpRequestClassInstantiation extends RequestSplittingInsecureNettyObjectCreation
7077
{
7178
InsecureDefaultHttpRequestClassInstantiation() {
@@ -74,6 +81,7 @@ private class InsecureDefaultHttpRequestClassInstantiation extends RequestSplitt
7481
}
7582
}
7683

84+
overlay[local?]
7785
private class InsecureDefaultFullHttpResponseClassInstantiation extends ResponseSplittingInsecureNettyObjectCreation
7886
{
7987
InsecureDefaultFullHttpResponseClassInstantiation() {
@@ -83,6 +91,7 @@ private class InsecureDefaultFullHttpResponseClassInstantiation extends Response
8391
}
8492
}
8593

94+
overlay[local?]
8695
private class InsecureDefaultFullHttpRequestClassInstantiation extends RequestSplittingInsecureNettyObjectCreation
8796
{
8897
InsecureDefaultFullHttpRequestClassInstantiation() {

0 commit comments

Comments
 (0)