@@ -48,7 +48,7 @@ private class DefaultCommandInjectionSanitizer extends CommandInjectionSanitizer
4848/**
4949 * A taint-tracking configuration for unvalidated user input that is used to run an external process.
5050 */
51- module RemoteUserInputToArgumentToExecFlowConfig implements DataFlow:: ConfigSig {
51+ module InputToArgumentToExecFlowConfig implements DataFlow:: ConfigSig {
5252 predicate isSource ( DataFlow:: Node src ) { src instanceof ThreatModelFlowSource }
5353
5454 predicate isSink ( DataFlow:: Node sink ) { sink instanceof CommandInjectionSink }
@@ -61,15 +61,24 @@ module RemoteUserInputToArgumentToExecFlowConfig implements DataFlow::ConfigSig
6161}
6262
6363/**
64- * Taint-tracking flow for unvalidated user input that is used to run an external process .
64+ * DEPRECATED: Use `InputToArgumentToExecFlowConfig` instead .
6565 */
66- module RemoteUserInputToArgumentToExecFlow =
67- TaintTracking:: Global< RemoteUserInputToArgumentToExecFlowConfig > ;
66+ deprecated module RemoteUserInputToArgumentToExecFlowConfig = InputToArgumentToExecFlowConfig;
67+
68+ /**
69+ * Taint-tracking flow for unvalidated input that is used to run an external process.
70+ */
71+ module InputToArgumentToExecFlow = TaintTracking:: Global< InputToArgumentToExecFlowConfig > ;
72+
73+ /**
74+ * DEPRECATED: Use `InputToArgumentToExecFlow` instead.
75+ */
76+ deprecated module RemoteUserInputToArgumentToExecFlow = InputToArgumentToExecFlow;
6877
6978/**
7079 * A taint-tracking configuration for unvalidated local user input that is used to run an external process.
7180 */
72- module LocalUserInputToArgumentToExecFlowConfig implements DataFlow:: ConfigSig {
81+ deprecated module LocalUserInputToArgumentToExecFlowConfig implements DataFlow:: ConfigSig {
7382 predicate isSource ( DataFlow:: Node src ) { src instanceof LocalUserInput }
7483
7584 predicate isSink ( DataFlow:: Node sink ) { sink instanceof CommandInjectionSink }
@@ -82,9 +91,11 @@ module LocalUserInputToArgumentToExecFlowConfig implements DataFlow::ConfigSig {
8291}
8392
8493/**
94+ * DEPRECATED: Use `InputToArgumentToExecFlow` instead and configure threat model sources to include `local`.
95+ *
8596 * Taint-tracking flow for unvalidated local user input that is used to run an external process.
8697 */
87- module LocalUserInputToArgumentToExecFlow =
98+ deprecated module LocalUserInputToArgumentToExecFlow =
8899 TaintTracking:: Global< LocalUserInputToArgumentToExecFlowConfig > ;
89100
90101/**
@@ -93,10 +104,9 @@ module LocalUserInputToArgumentToExecFlow =
93104 * reporting overlapping results.
94105 */
95106predicate execIsTainted (
96- RemoteUserInputToArgumentToExecFlow:: PathNode source ,
97- RemoteUserInputToArgumentToExecFlow:: PathNode sink , Expr execArg
107+ InputToArgumentToExecFlow:: PathNode source , InputToArgumentToExecFlow:: PathNode sink , Expr execArg
98108) {
99- RemoteUserInputToArgumentToExecFlow :: flowPath ( source , sink ) and
109+ InputToArgumentToExecFlow :: flowPath ( source , sink ) and
100110 argumentToExec ( execArg , sink .getNode ( ) )
101111}
102112
0 commit comments