@@ -9,31 +9,31 @@ private import semmle.code.java.security.ArbitraryApkInstallation
9
9
* A dataflow configuration for flow from an external source of an APK to the
10
10
* `setData[AndType][AndNormalize]` method of an intent.
11
11
*/
12
- private module ApkConf implements DataFlow:: ConfigSig {
12
+ private module ApkInstallationConfiguration implements DataFlow:: ConfigSig {
13
13
predicate isSource ( DataFlow:: Node node ) { node instanceof ExternalApkSource }
14
14
15
15
predicate isSink ( DataFlow:: Node node ) {
16
16
exists ( MethodAccess ma |
17
17
ma .getMethod ( ) instanceof SetDataMethod and
18
18
ma .getArgument ( 0 ) = node .asExpr ( ) and
19
19
(
20
- PackageArchiveMimeTypeConfiguration :: hasFlowToExpr ( ma .getQualifier ( ) )
20
+ PackageArchiveMimeTypeFlow :: hasFlowToExpr ( ma .getQualifier ( ) )
21
21
or
22
- InstallPackageActionConfiguration :: hasFlowToExpr ( ma .getQualifier ( ) )
22
+ InstallPackageActionFlow :: hasFlowToExpr ( ma .getQualifier ( ) )
23
23
)
24
24
)
25
25
}
26
26
}
27
27
28
- module ApkConfiguration = DataFlow:: Make< ApkConf > ;
28
+ module ApkInstallationFlow = DataFlow:: Make< ApkInstallationConfiguration > ;
29
29
30
30
/**
31
31
* A dataflow configuration tracking the flow from the `android.content.Intent.ACTION_INSTALL_PACKAGE`
32
32
* constant to either the constructor of an intent or the `setAction` method of an intent.
33
33
*
34
34
* This is used to track if an intent is used to install an APK.
35
35
*/
36
- private module InstallPackageActionConfig implements DataFlow:: StateConfigSig {
36
+ private module InstallPackageActionConfiguration implements DataFlow:: StateConfigSig {
37
37
class FlowState = string ;
38
38
39
39
predicate isSource ( DataFlow:: Node source , FlowState state ) {
@@ -69,15 +69,15 @@ private module InstallPackageActionConfig implements DataFlow::StateConfigSig {
69
69
predicate isBarrier ( DataFlow:: Node node , FlowState state ) { none ( ) }
70
70
}
71
71
72
- private module InstallPackageActionConfiguration =
73
- TaintTracking:: MakeWithState< InstallPackageActionConfig > ;
72
+ private module InstallPackageActionFlow =
73
+ TaintTracking:: MakeWithState< InstallPackageActionConfiguration > ;
74
74
75
75
/**
76
76
* A dataflow configuration tracking the flow of the Android APK MIME type to
77
77
* the `setType` or `setTypeAndNormalize` method of an intent, followed by a call
78
78
* to `setData[AndType][AndNormalize]`.
79
79
*/
80
- private module PackageArchiveMimeTypeConfig implements DataFlow:: StateConfigSig {
80
+ private module PackageArchiveMimeTypeConfiguration implements DataFlow:: StateConfigSig {
81
81
class FlowState = string ;
82
82
83
83
predicate isSource ( DataFlow:: Node node , FlowState state ) {
@@ -111,5 +111,5 @@ private module PackageArchiveMimeTypeConfig implements DataFlow::StateConfigSig
111
111
predicate isBarrier ( DataFlow:: Node node , FlowState state ) { none ( ) }
112
112
}
113
113
114
- private module PackageArchiveMimeTypeConfiguration =
115
- TaintTracking:: MakeWithState< PackageArchiveMimeTypeConfig > ;
114
+ private module PackageArchiveMimeTypeFlow =
115
+ TaintTracking:: MakeWithState< PackageArchiveMimeTypeConfiguration > ;
0 commit comments