File tree Expand file tree Collapse file tree 4 files changed +28
-0
lines changed
javascript/ql/test/library-tests/TaintTracking Expand file tree Collapse file tree 4 files changed +28
-0
lines changed Original file line number Diff line number Diff line change @@ -14,6 +14,8 @@ legacyDataFlowDifference
14
14
| constructor-calls.js:4:18:4:25 | source() | constructor-calls.js:44:8:44:19 | f_safe.taint | only flow with NEW data flow library |
15
15
| constructor-calls.js:20:15:20:22 | source() | constructor-calls.js:39:8:39:14 | e.param | only flow with NEW data flow library |
16
16
| exceptions.js:53:14:53:21 | source() | exceptions.js:54:10:54:10 | e | only flow with NEW data flow library |
17
+ | export-taint.js:3:22:3:29 | source() | import-taint.js:7:10:7:25 | mod.object.taint | only flow with OLD data flow library |
18
+ | export-taint.js:3:22:3:29 | source() | import-taint.js:14:14:14:29 | mod.object.taint | only flow with OLD data flow library |
17
19
| getters-and-setters.js:53:21:53:28 | source() | getters-and-setters.js:53:10:53:30 | getX(ne ... rce())) | only flow with NEW data flow library |
18
20
| nested-props.js:14:15:14:22 | source() | nested-props.js:15:10:15:16 | obj.x.y | only flow with NEW data flow library |
19
21
| nested-props.js:27:18:27:25 | source() | nested-props.js:28:10:28:14 | obj.x | only flow with NEW data flow library |
165
167
| exceptions.js:144:9:144:16 | source() | exceptions.js:132:8:132:27 | returnThrownSource() |
166
168
| exceptions.js:150:13:150:20 | source() | exceptions.js:153:10:153:10 | e |
167
169
| exceptions.js:158:13:158:20 | source() | exceptions.js:161:10:161:10 | e |
170
+ | export-taint.js:2:12:2:19 | source() | import-taint.js:6:10:6:18 | mod.taint |
171
+ | export-taint.js:2:12:2:19 | source() | import-taint.js:13:14:13:22 | mod.taint |
168
172
| factory-function.js:21:13:21:20 | source() | factory-function.js:7:10:7:12 | obj |
169
173
| factory-function.js:22:13:22:20 | source() | factory-function.js:7:10:7:12 | obj |
170
174
| factory-function.js:26:7:26:14 | source() | factory-function.js:16:14:16:16 | obj |
Original file line number Diff line number Diff line change @@ -15,6 +15,8 @@ legacyDataFlowDifference
15
15
| constructor-calls.js:4:18:4:25 | source() | constructor-calls.js:44:8:44:19 | f_safe.taint | only flow with NEW data flow library |
16
16
| constructor-calls.js:20:15:20:22 | source() | constructor-calls.js:39:8:39:14 | e.param | only flow with NEW data flow library |
17
17
| exceptions.js:53:14:53:21 | source() | exceptions.js:54:10:54:10 | e | only flow with NEW data flow library |
18
+ | export-taint.js:3:22:3:29 | source() | import-taint.js:7:10:7:25 | mod.object.taint | only flow with OLD data flow library |
19
+ | export-taint.js:3:22:3:29 | source() | import-taint.js:14:14:14:29 | mod.object.taint | only flow with OLD data flow library |
18
20
| getters-and-setters.js:53:21:53:28 | source() | getters-and-setters.js:53:10:53:30 | getX(ne ... rce())) | only flow with NEW data flow library |
19
21
| nested-props.js:14:15:14:22 | source() | nested-props.js:15:10:15:16 | obj.x.y | only flow with NEW data flow library |
20
22
| nested-props.js:27:18:27:25 | source() | nested-props.js:28:10:28:14 | obj.x | only flow with NEW data flow library |
115
117
| exceptions.js:144:9:144:16 | source() | exceptions.js:132:8:132:27 | returnThrownSource() |
116
118
| exceptions.js:150:13:150:20 | source() | exceptions.js:153:10:153:10 | e |
117
119
| exceptions.js:158:13:158:20 | source() | exceptions.js:161:10:161:10 | e |
120
+ | export-taint.js:2:12:2:19 | source() | import-taint.js:6:10:6:18 | mod.taint |
121
+ | export-taint.js:2:12:2:19 | source() | import-taint.js:13:14:13:22 | mod.taint |
118
122
| factory-function.js:21:13:21:20 | source() | factory-function.js:7:10:7:12 | obj |
119
123
| factory-function.js:22:13:22:20 | source() | factory-function.js:7:10:7:12 | obj |
120
124
| factory-function.js:26:7:26:14 | source() | factory-function.js:16:14:16:16 | obj |
Original file line number Diff line number Diff line change
1
+ export default {
2
+ taint : source ( ) ,
3
+ object : { taint : source ( ) }
4
+ } ;
Original file line number Diff line number Diff line change
1
+ import 'dummy' ;
2
+
3
+ async function test1 ( ) {
4
+ let mod = await import ( "./export-taint" ) ;
5
+ sink ( mod ) ; // OK
6
+ sink ( mod . taint ) ; // NOT OK
7
+ sink ( mod . object . taint ) ; // NOT OK [INCONSISTENCY] - blocked by access path limit
8
+ }
9
+
10
+ function test2 ( ) {
11
+ import ( "./export-taint" ) . then ( mod => {
12
+ sink ( mod ) ; // OK
13
+ sink ( mod . taint ) ; // NOT OK
14
+ sink ( mod . object . taint ) ; // NOT OK [INCONSISTENCY] - blocked by access path limit
15
+ } ) ;
16
+ }
You can’t perform that action at this time.
0 commit comments