From 8e7c2f298b80dad56fea4ff5906d0c4accab3eff Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:07:33 +0200 Subject: [PATCH 1/7] Update DangerousFunctions.scala --- .../io/joern/scanners/c/DangerousFunctions.scala | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/scala/io/joern/scanners/c/DangerousFunctions.scala b/src/main/scala/io/joern/scanners/c/DangerousFunctions.scala index 18b7119..1a1d537 100644 --- a/src/main/scala/io/joern/scanners/c/DangerousFunctions.scala +++ b/src/main/scala/io/joern/scanners/c/DangerousFunctions.scala @@ -24,7 +24,7 @@ object DangerousFunctions extends QueryBundle { score = 8, withStrRep({ cpg => // format: off - cpg.method("gets").callIn + cpg.method("(?i)gets").callIn // format: on }), tags = List(QueryTags.badfn) @@ -45,8 +45,8 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - val printfFns = cpg.method("printf").callIn.whereNot(_.argument.order(1).isLiteral) - val sprintsFns = cpg.method("(sprintf|vsprintf)").callIn.whereNot(_.argument.order(2).isLiteral) + val printfFns = cpg.method("(?i)printf").callIn.whereNot(_.argument.order(1).isLiteral) + val sprintsFns = cpg.method("(?i)(sprintf|vsprintf)").callIn.whereNot(_.argument.order(2).isLiteral) (printfFns ++ sprintsFns) // format: on }), @@ -67,7 +67,7 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - cpg.method("scanf").callIn + cpg.method("(?i)scanf").callIn // format: on }), tags = List(QueryTags.badfn) @@ -88,7 +88,7 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - cpg.method("(strcat|strncat)").callIn + cpg.method("(?i)(strcat|strncat)").callIn // format: on }), tags = List(QueryTags.badfn) @@ -111,7 +111,7 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - cpg.method("(strcpy|strncpy)").callIn + cpg.method("(?i)(strcpy|strncpy)").callIn // format: on }), tags = List(QueryTags.badfn) @@ -133,7 +133,7 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - cpg.method("strtok").callIn + cpg.method("(?i)strtok").callIn // format: on }), tags = List(QueryTags.badfn) @@ -153,7 +153,7 @@ object DangerousFunctions extends QueryBundle { score = 4, withStrRep({ cpg => // format: off - cpg.method("getwd").callIn + cpg.method("(?i)getwd").callIn // format: on }), tags = List(QueryTags.badfn) From c6ea3b2d0611d70f3a20f4173b701c4ce3e061e1 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:08:27 +0200 Subject: [PATCH 2/7] Update IntegerTruncations.scala --- src/main/scala/io/joern/scanners/c/IntegerTruncations.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala b/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala index 03fa528..45429d0 100644 --- a/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala +++ b/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala @@ -31,7 +31,7 @@ object IntegerTruncations extends QueryBundle { withStrRep({ cpg => // format: off cpg. - method("strlen"). + method("(?i)strlen"). callIn. inAssignment. target. From 45f43dcbb06701ff21612ed0305338fa6223c2c0 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:08:49 +0200 Subject: [PATCH 3/7] Update IntegerTruncations.scala --- src/main/scala/io/joern/scanners/c/IntegerTruncations.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala b/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala index 45429d0..ccaebfc 100644 --- a/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala +++ b/src/main/scala/io/joern/scanners/c/IntegerTruncations.scala @@ -31,7 +31,8 @@ object IntegerTruncations extends QueryBundle { withStrRep({ cpg => // format: off cpg. - method("(?i)strlen"). + method. + name("(?i)strlen"). callIn. inAssignment. target. From 8cb2b9480fd7c4bc76e1283917d3cc67ce4589a9 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:09:39 +0200 Subject: [PATCH 4/7] Update CredentialDrop.scala --- src/main/scala/io/joern/scanners/c/CredentialDrop.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/scala/io/joern/scanners/c/CredentialDrop.scala b/src/main/scala/io/joern/scanners/c/CredentialDrop.scala index bd4e10f..be9956a 100644 --- a/src/main/scala/io/joern/scanners/c/CredentialDrop.scala +++ b/src/main/scala/io/joern/scanners/c/CredentialDrop.scala @@ -27,7 +27,7 @@ object CredentialDrop extends QueryBundle { withStrRep({ cpg => // format: off cpg. - method("set(res|re|e|)uid"). + method("(?i)set(res|re|e|)uid"). callIn. whereNot(_.dominatedBy.isCall.name("set(res|re|e|)?gid")) // format: on @@ -52,7 +52,7 @@ object CredentialDrop extends QueryBundle { withStrRep({ cpg => // format: off cpg. - method("set(res|re|e|)gid"). + method("(?i)set(res|re|e|)gid"). callIn. whereNot(_.dominatedBy.isCall.name("setgroups")) // format: on From ff24c4080252e511676ba852452a5e2ec3ba77a8 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:11:50 +0200 Subject: [PATCH 5/7] Update HeapBasedOverflow.scala --- src/main/scala/io/joern/scanners/c/HeapBasedOverflow.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/io/joern/scanners/c/HeapBasedOverflow.scala b/src/main/scala/io/joern/scanners/c/HeapBasedOverflow.scala index 2c9cc6c..1ac821e 100644 --- a/src/main/scala/io/joern/scanners/c/HeapBasedOverflow.scala +++ b/src/main/scala/io/joern/scanners/c/HeapBasedOverflow.scala @@ -34,7 +34,7 @@ object HeapBasedOverflow extends QueryBundle { where(_.argument(1).arithmetics).l cpg. - method("memcpy"). + method("(?i)memcpy"). callIn.l. filter { memcpyCall => memcpyCall. From 8ce237ec76101dafe0816c0997dac715e64df3a2 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:12:54 +0200 Subject: [PATCH 6/7] Update NullTermination.scala --- src/main/scala/io/joern/scanners/c/NullTermination.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/io/joern/scanners/c/NullTermination.scala b/src/main/scala/io/joern/scanners/c/NullTermination.scala index db47fb6..a845a6e 100644 --- a/src/main/scala/io/joern/scanners/c/NullTermination.scala +++ b/src/main/scala/io/joern/scanners/c/NullTermination.scala @@ -30,7 +30,7 @@ object NullTermination extends QueryBundle { // format: off val allocations = cpg.method(".*malloc$").callIn.argument(1).l cpg. - method("strncpy"). + method("(?i)strncpy"). callIn. map { c => (c.method, c.argument(1), c.argument(3)) From 73060ed5a99ed5be61919d74e77416c67aacd588 Mon Sep 17 00:00:00 2001 From: Niko Schmidt Date: Sat, 3 Apr 2021 17:13:15 +0200 Subject: [PATCH 7/7] Update RetvalChecks.scala --- src/main/scala/io/joern/scanners/c/RetvalChecks.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/io/joern/scanners/c/RetvalChecks.scala b/src/main/scala/io/joern/scanners/c/RetvalChecks.scala index da73297..1b7f61b 100644 --- a/src/main/scala/io/joern/scanners/c/RetvalChecks.scala +++ b/src/main/scala/io/joern/scanners/c/RetvalChecks.scala @@ -24,7 +24,7 @@ object RetvalChecks extends QueryBundle { // format: off implicit val noResolve: NoResolve.type = NoResolve val callsNotDirectlyChecked = cpg. - method("(read|recv|malloc)"). + method("(?i)(read|recv|malloc)"). callIn. filterNot { y => val code = y.code