Skip to content

Commit 2729566

Browse files
committed
add setAttributeNS('xlink', 'href',..) example in XSS test
1 parent c780956 commit 2729566

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

javascript/ql/test/query-tests/Security/CWE-079/Xss.expected

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,10 @@ nodes
6060
| tst3.js:5:26:5:31 | data.p |
6161
| tst3.js:7:32:7:35 | data |
6262
| tst3.js:7:32:7:37 | data.p |
63-
| tst3.js:9:38:9:41 | data |
64-
| tst3.js:9:38:9:43 | data.p |
63+
| tst3.js:9:37:9:40 | data |
64+
| tst3.js:9:37:9:42 | data.p |
65+
| tst3.js:10:38:10:41 | data |
66+
| tst3.js:10:38:10:43 | data.p |
6567
| tst.js:2:7:2:39 | target |
6668
| tst.js:2:16:2:32 | document.location |
6769
| tst.js:2:16:2:39 | documen ... .search |
@@ -231,15 +233,17 @@ edges
231233
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:4:25:4:28 | data |
232234
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:5:26:5:29 | data |
233235
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:7:32:7:35 | data |
234-
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:9:38:9:41 | data |
236+
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:9:37:9:40 | data |
237+
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:10:38:10:41 | data |
235238
| tst3.js:2:23:2:74 | decodeU ... str(1)) | tst3.js:2:12:2:75 | JSON.pa ... tr(1))) |
236239
| tst3.js:2:42:2:56 | window.location | tst3.js:2:42:2:63 | window. ... .search |
237240
| tst3.js:2:42:2:63 | window. ... .search | tst3.js:2:42:2:73 | window. ... bstr(1) |
238241
| tst3.js:2:42:2:73 | window. ... bstr(1) | tst3.js:2:23:2:74 | decodeU ... str(1)) |
239242
| tst3.js:4:25:4:28 | data | tst3.js:4:25:4:32 | data.src |
240243
| tst3.js:5:26:5:29 | data | tst3.js:5:26:5:31 | data.p |
241244
| tst3.js:7:32:7:35 | data | tst3.js:7:32:7:37 | data.p |
242-
| tst3.js:9:38:9:41 | data | tst3.js:9:38:9:43 | data.p |
245+
| tst3.js:9:37:9:40 | data | tst3.js:9:37:9:42 | data.p |
246+
| tst3.js:10:38:10:41 | data | tst3.js:10:38:10:43 | data.p |
243247
| tst.js:2:7:2:39 | target | tst.js:5:18:5:23 | target |
244248
| tst.js:2:7:2:39 | target | tst.js:12:28:12:33 | target |
245249
| tst.js:2:7:2:39 | target | tst.js:23:42:23:47 | target |
@@ -370,7 +374,8 @@ edges
370374
| tst3.js:4:25:4:32 | data.src | tst3.js:2:42:2:56 | window.location | tst3.js:4:25:4:32 | data.src | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
371375
| tst3.js:5:26:5:31 | data.p | tst3.js:2:42:2:56 | window.location | tst3.js:5:26:5:31 | data.p | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
372376
| tst3.js:7:32:7:37 | data.p | tst3.js:2:42:2:56 | window.location | tst3.js:7:32:7:37 | data.p | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
373-
| tst3.js:9:38:9:43 | data.p | tst3.js:2:42:2:56 | window.location | tst3.js:9:38:9:43 | data.p | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
377+
| tst3.js:9:37:9:42 | data.p | tst3.js:2:42:2:56 | window.location | tst3.js:9:37:9:42 | data.p | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
378+
| tst3.js:10:38:10:43 | data.p | tst3.js:2:42:2:56 | window.location | tst3.js:10:38:10:43 | data.p | Cross-site scripting vulnerability due to $@. | tst3.js:2:42:2:56 | window.location | user-provided value |
374379
| tst.js:5:18:5:23 | target | tst.js:2:16:2:32 | document.location | tst.js:5:18:5:23 | target | Cross-site scripting vulnerability due to $@. | tst.js:2:16:2:32 | document.location | user-provided value |
375380
| tst.js:8:18:8:126 | "<OPTIO ... PTION>" | tst.js:8:37:8:53 | document.location | tst.js:8:18:8:126 | "<OPTIO ... PTION>" | Cross-site scripting vulnerability due to $@. | tst.js:8:37:8:53 | document.location | user-provided value |
376381
| tst.js:12:5:12:42 | '<div s ... 'px">' | tst.js:2:16:2:32 | document.location | tst.js:12:5:12:42 | '<div s ... 'px">' | Cross-site scripting vulnerability due to $@. | tst.js:2:16:2:32 | document.location | user-provided value |

javascript/ql/test/query-tests/Security/CWE-079/tst3.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ foo.setAttribute("HREF", data.p); // NOT OK
66
foo.setAttribute("width", data.w); // OK
77
foo.setAttribute("xlink:href", data.p) // NOT OK
88

9+
foo.setAttributeNS('xlink', 'href', data.p); // NOT OK
910
foo.setAttributeNS('foobar', 'href', data.p); // NOT OK
1011
foo.setAttributeNS('baz', 'width', data.w); // OK
1112

0 commit comments

Comments
 (0)