Skip to content

Commit de71758

Browse files
authored
Merge pull request #19962 from kaspersv/kaspersv/overlay-java-local-TC-fixes
Overlay: Fix Java overlay compilation regressions
2 parents 8fda879 + 649091c commit de71758

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

java/ql/lib/semmle/code/java/security/TempDirLocalInformationDisclosureQuery.qll

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ module TempDirSystemGetPropertyDirectlyToMkdir =
203203
/**
204204
* A `MethodCall` against a method that creates a temporary file or directory in a shared temporary directory.
205205
*/
206+
overlay[local?]
206207
abstract class MethodCallInsecureFileCreation extends MethodCall {
207208
/**
208209
* Gets the type of entity created (e.g. `file`, `directory`, ...).
@@ -218,6 +219,7 @@ abstract class MethodCallInsecureFileCreation extends MethodCall {
218219
/**
219220
* An insecure call to `java.io.File.createTempFile`.
220221
*/
222+
overlay[local?]
221223
class MethodCallInsecureFileCreateTempFile extends MethodCallInsecureFileCreation {
222224
MethodCallInsecureFileCreateTempFile() {
223225
this.getMethod() instanceof MethodFileCreateTempFile and
@@ -246,6 +248,7 @@ class MethodGuavaFilesCreateTempFile extends Method {
246248
/**
247249
* A call to the `com.google.common.io.Files.createTempDir` method.
248250
*/
251+
overlay[local?]
249252
class MethodCallInsecureGuavaFilesCreateTempFile extends MethodCallInsecureFileCreation {
250253
MethodCallInsecureGuavaFilesCreateTempFile() {
251254
this.getMethod() instanceof MethodGuavaFilesCreateTempFile

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)