Skip to content

Commit c9ec983

Browse files
committed
add js/client-side-unvalidated-url-redirection test for script tags inside react code
1 parent 3959168 commit c9ec983

2 files changed

Lines changed: 26 additions & 0 deletions

File tree

javascript/ql/test/query-tests/Security/CWE-601/ClientSideUrlRedirect/ClientSideUrlRedirect.expected

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@ nodes
33
| electron.js:4:12:4:22 | window.name |
44
| electron.js:7:20:7:29 | getTaint() |
55
| electron.js:7:20:7:29 | getTaint() |
6+
| react.js:10:60:10:76 | document.location |
7+
| react.js:10:60:10:76 | document.location |
8+
| react.js:10:60:10:81 | documen ... on.hash |
9+
| react.js:10:60:10:81 | documen ... on.hash |
610
| sanitizer.js:2:9:2:25 | url |
711
| sanitizer.js:2:15:2:25 | window.name |
812
| sanitizer.js:2:15:2:25 | window.name |
@@ -189,6 +193,10 @@ edges
189193
| electron.js:4:12:4:22 | window.name | electron.js:7:20:7:29 | getTaint() |
190194
| electron.js:4:12:4:22 | window.name | electron.js:7:20:7:29 | getTaint() |
191195
| electron.js:4:12:4:22 | window.name | electron.js:7:20:7:29 | getTaint() |
196+
| react.js:10:60:10:76 | document.location | react.js:10:60:10:81 | documen ... on.hash |
197+
| react.js:10:60:10:76 | document.location | react.js:10:60:10:81 | documen ... on.hash |
198+
| react.js:10:60:10:76 | document.location | react.js:10:60:10:81 | documen ... on.hash |
199+
| react.js:10:60:10:76 | document.location | react.js:10:60:10:81 | documen ... on.hash |
192200
| sanitizer.js:2:9:2:25 | url | sanitizer.js:4:27:4:29 | url |
193201
| sanitizer.js:2:9:2:25 | url | sanitizer.js:4:27:4:29 | url |
194202
| sanitizer.js:2:9:2:25 | url | sanitizer.js:16:27:16:29 | url |
@@ -358,6 +366,7 @@ edges
358366
| typed.ts:28:24:28:34 | redirectUri | typed.ts:29:33:29:43 | redirectUri |
359367
#select
360368
| electron.js:7:20:7:29 | getTaint() | electron.js:4:12:4:22 | window.name | electron.js:7:20:7:29 | getTaint() | Untrusted URL redirection due to $@. | electron.js:4:12:4:22 | window.name | user-provided value |
369+
| react.js:10:60:10:81 | documen ... on.hash | react.js:10:60:10:76 | document.location | react.js:10:60:10:81 | documen ... on.hash | Untrusted URL redirection due to $@. | react.js:10:60:10:76 | document.location | user-provided value |
361370
| sanitizer.js:4:27:4:29 | url | sanitizer.js:2:15:2:25 | window.name | sanitizer.js:4:27:4:29 | url | Untrusted URL redirection due to $@. | sanitizer.js:2:15:2:25 | window.name | user-provided value |
362371
| sanitizer.js:16:27:16:29 | url | sanitizer.js:2:15:2:25 | window.name | sanitizer.js:16:27:16:29 | url | Untrusted URL redirection due to $@. | sanitizer.js:2:15:2:25 | window.name | user-provided value |
363372
| sanitizer.js:19:27:19:29 | url | sanitizer.js:2:15:2:25 | window.name | sanitizer.js:19:27:19:29 | url | Untrusted URL redirection due to $@. | sanitizer.js:2:15:2:25 | window.name | user-provided value |
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import React from "react";
2+
import {Helmet} from "react-helmet";
3+
4+
class Application extends React.Component {
5+
render () {
6+
return (
7+
<div className="application">
8+
<Helmet>
9+
<title>My unsafe app</title>
10+
<script type="application/javascript" src={document.location.hash}/>
11+
</Helmet>
12+
</div>
13+
);
14+
}
15+
};
16+
17+
export default Application

0 commit comments

Comments
 (0)