File tree Expand file tree Collapse file tree 1 file changed +4
-0
lines changed
cpp/ql/src/Security/CWE/CWE-022 Expand file tree Collapse file tree 1 file changed +4
-0
lines changed Original file line number Diff line number Diff line change @@ -111,6 +111,10 @@ class TaintedPathConfiguration extends TaintTracking::Configuration {
111
111
112
112
predicate hasFilteredFlowPath ( DataFlow:: PathNode source , DataFlow:: PathNode sink ) {
113
113
this .hasFlowPath ( source , sink ) and
114
+ // The use of `isUserInput` in `isSink` in combination with `asSourceExpr` causes
115
+ // duplicate results. Filter these duplicates. The proper solution is to switch to
116
+ // using `LocalFlowSource` and `RemoteFlowSource`, but this currently only supports
117
+ // a subset of the cases supported by `isUserInput`.
114
118
not exists ( DataFlow:: PathNode source2 |
115
119
this .hasFlowPath ( source2 , sink ) and
116
120
asSourceExpr ( source .getNode ( ) ) = asSourceExpr ( source2 .getNode ( ) )
You can’t perform that action at this time.
0 commit comments