Skip to content

Commit c780956

Browse files
committed
add setAttributeNS method in the XSS test
1 parent ccdc821 commit c780956

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ 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 |
6365
| tst.js:2:7:2:39 | target |
6466
| tst.js:2:16:2:32 | document.location |
6567
| tst.js:2:16:2:39 | documen ... .search |
@@ -229,13 +231,15 @@ edges
229231
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:4:25:4:28 | data |
230232
| tst3.js:2:12:2:75 | JSON.pa ... tr(1))) | tst3.js:5:26:5:29 | data |
231233
| 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 |
232235
| tst3.js:2:23:2:74 | decodeU ... str(1)) | tst3.js:2:12:2:75 | JSON.pa ... tr(1))) |
233236
| tst3.js:2:42:2:56 | window.location | tst3.js:2:42:2:63 | window. ... .search |
234237
| tst3.js:2:42:2:63 | window. ... .search | tst3.js:2:42:2:73 | window. ... bstr(1) |
235238
| tst3.js:2:42:2:73 | window. ... bstr(1) | tst3.js:2:23:2:74 | decodeU ... str(1)) |
236239
| tst3.js:4:25:4:28 | data | tst3.js:4:25:4:32 | data.src |
237240
| tst3.js:5:26:5:29 | data | tst3.js:5:26:5:31 | data.p |
238241
| 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 |
239243
| tst.js:2:7:2:39 | target | tst.js:5:18:5:23 | target |
240244
| tst.js:2:7:2:39 | target | tst.js:12:28:12:33 | target |
241245
| tst.js:2:7:2:39 | target | tst.js:23:42:23:47 | target |
@@ -366,6 +370,7 @@ edges
366370
| 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 |
367371
| 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 |
368372
| 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 |
369374
| 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 |
370375
| 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 |
371376
| 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: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,9 @@ 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('foobar', 'href', data.p); // NOT OK
10+
foo.setAttributeNS('baz', 'width', data.w); // OK
11+
12+
913
for (var p in data)
1014
foo.setAttribute(p, data[p]); // not flagged since attribute name is unknown

0 commit comments

Comments
 (0)