Java: Improve the Api sources and sinks implementation.

This commit is contained in:
Michael Nebel
2024-04-25 16:44:55 +02:00
parent b754706e44
commit f95b33049e
34 changed files with 154 additions and 214 deletions

View File

@@ -5,9 +5,11 @@
import java
import semmle.code.java.dataflow.DataFlow
private import semmle.code.java.dataflow.ExternalFlow
import semmle.code.java.security.CleartextStorageQuery
import semmle.code.xml.AndroidManifest
private import semmle.code.java.dataflow.ExternalFlow
private import semmle.code.java.dataflow.FlowSinks
private import semmle.code.java.dataflow.FlowSources
private class AndroidFilesystemCleartextStorageSink extends CleartextStorageSink {
AndroidFilesystemCleartextStorageSink() {
@@ -82,14 +84,14 @@ private class CloseFileMethod extends Method {
/**
* A class of local file open call source nodes.
*/
class LocalFileOpenCallSource extends DataFlow::Node {
class LocalFileOpenCallSource extends ApiSourceNode {
LocalFileOpenCallSource() { this.asExpr() instanceof LocalFileOpenCall }
}
/**
* A class of local file sink nodes.
*/
class LocalFileSink extends DataFlow::Node {
class LocalFileSink extends ApiSinkNode {
LocalFileSink() {
filesystemInput(this, _) or
closesFile(this, _)