Skip to content

Commit 3db6069

Browse files
committed
JS: Add test for new sink
1 parent 2752b4b commit 3db6069

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ nodes
5656
| angular2-client.ts:38:44:38:58 | this.router.url |
5757
| angular2-client.ts:38:44:38:58 | this.router.url |
5858
| angular2-client.ts:38:44:38:58 | this.router.url |
59+
| angular2-client.ts:40:45:40:59 | this.router.url |
60+
| angular2-client.ts:40:45:40:59 | this.router.url |
61+
| angular2-client.ts:40:45:40:59 | this.router.url |
5962
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
6063
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
6164
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
@@ -697,6 +700,7 @@ edges
697700
| angular2-client.ts:36:44:36:89 | this.ro ... .params | angular2-client.ts:36:44:36:91 | this.ro ... arams.x |
698701
| angular2-client.ts:36:44:36:89 | this.ro ... .params | angular2-client.ts:36:44:36:91 | this.ro ... arams.x |
699702
| angular2-client.ts:38:44:38:58 | this.router.url | angular2-client.ts:38:44:38:58 | this.router.url |
703+
| angular2-client.ts:40:45:40:59 | this.router.url | angular2-client.ts:40:45:40:59 | this.router.url |
700704
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
701705
| classnames.js:7:47:7:69 | classNa ... w.name) | classnames.js:7:31:7:84 | `<span ... <span>` |
702706
| classnames.js:7:47:7:69 | classNa ... w.name) | classnames.js:7:31:7:84 | `<span ... <span>` |
@@ -1238,6 +1242,7 @@ edges
12381242
| angular2-client.ts:35:44:35:91 | this.ro ... et('x') | angular2-client.ts:35:44:35:91 | this.ro ... et('x') | angular2-client.ts:35:44:35:91 | this.ro ... et('x') | Cross-site scripting vulnerability due to $@. | angular2-client.ts:35:44:35:91 | this.ro ... et('x') | user-provided value |
12391243
| angular2-client.ts:36:44:36:91 | this.ro ... arams.x | angular2-client.ts:36:44:36:89 | this.ro ... .params | angular2-client.ts:36:44:36:91 | this.ro ... arams.x | Cross-site scripting vulnerability due to $@. | angular2-client.ts:36:44:36:89 | this.ro ... .params | user-provided value |
12401244
| angular2-client.ts:38:44:38:58 | this.router.url | angular2-client.ts:38:44:38:58 | this.router.url | angular2-client.ts:38:44:38:58 | this.router.url | Cross-site scripting vulnerability due to $@. | angular2-client.ts:38:44:38:58 | this.router.url | user-provided value |
1245+
| angular2-client.ts:40:45:40:59 | this.router.url | angular2-client.ts:40:45:40:59 | this.router.url | angular2-client.ts:40:45:40:59 | this.router.url | Cross-site scripting vulnerability due to $@. | angular2-client.ts:40:45:40:59 | this.router.url | user-provided value |
12411246
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | Cross-site scripting vulnerability due to $@. | angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | user-provided value |
12421247
| classnames.js:7:31:7:84 | `<span ... <span>` | classnames.js:7:58:7:68 | window.name | classnames.js:7:31:7:84 | `<span ... <span>` | Cross-site scripting vulnerability due to $@. | classnames.js:7:58:7:68 | window.name | user-provided value |
12431248
| classnames.js:8:31:8:85 | `<span ... <span>` | classnames.js:8:59:8:69 | window.name | classnames.js:8:31:8:85 | `<span ... <span>` | Cross-site scripting vulnerability due to $@. | classnames.js:8:59:8:69 | window.name | user-provided value |

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

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ nodes
5656
| angular2-client.ts:38:44:38:58 | this.router.url |
5757
| angular2-client.ts:38:44:38:58 | this.router.url |
5858
| angular2-client.ts:38:44:38:58 | this.router.url |
59+
| angular2-client.ts:40:45:40:59 | this.router.url |
60+
| angular2-client.ts:40:45:40:59 | this.router.url |
61+
| angular2-client.ts:40:45:40:59 | this.router.url |
5962
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
6063
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
6164
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
@@ -708,6 +711,7 @@ edges
708711
| angular2-client.ts:36:44:36:89 | this.ro ... .params | angular2-client.ts:36:44:36:91 | this.ro ... arams.x |
709712
| angular2-client.ts:36:44:36:89 | this.ro ... .params | angular2-client.ts:36:44:36:91 | this.ro ... arams.x |
710713
| angular2-client.ts:38:44:38:58 | this.router.url | angular2-client.ts:38:44:38:58 | this.router.url |
714+
| angular2-client.ts:40:45:40:59 | this.router.url | angular2-client.ts:40:45:40:59 | this.router.url |
711715
| angular2-client.ts:44:44:44:76 | routeSn ... ('foo') | angular2-client.ts:44:44:44:76 | routeSn ... ('foo') |
712716
| classnames.js:7:47:7:69 | classNa ... w.name) | classnames.js:7:31:7:84 | `<span ... <span>` |
713717
| classnames.js:7:47:7:69 | classNa ... w.name) | classnames.js:7:31:7:84 | `<span ... <span>` |

javascript/ql/test/query-tests/Security/CWE-079/DomBasedXss/angular2-client.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class AppComponent implements OnInit {
1515
private route: ActivatedRoute,
1616
private sanitizer: DomSanitizer,
1717
private router: Router,
18-
// private sanitizer2: DomSanitizer2
18+
private sanitizer2: DomSanitizer2
1919
) {}
2020

2121
ngOnInit() {
@@ -37,7 +37,7 @@ export class AppComponent implements OnInit {
3737

3838
this.sanitizer.bypassSecurityTrustHtml(this.router.url); // NOT OK
3939

40-
// this.sanitizer2.bypassSecurityTrustHtml(this.router.url); // NOT OK
40+
this.sanitizer2.bypassSecurityTrustHtml(this.router.url); // NOT OK
4141
}
4242

4343
someMethod(routeSnapshot: ActivatedRouteSnapshot) {

0 commit comments

Comments
 (0)