質問編集履歴

3

xss内容変更

2019/01/21 09:18

投稿

sho_jonas
sho_jonas

スコア77

test CHANGED
File without changes
test CHANGED
@@ -54,7 +54,7 @@
54
54
 
55
55
  "error":"Forbidden",
56
56
 
57
- "message":"Invalid CSRF Token '<script>alert(\"hoge\")</script>' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.",
57
+ "message":"Invalid CSRF Token '<script>var a = 123;alert(a)</script>' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.",
58
58
 
59
59
  "path":"/hoge/"}
60
60
 

2

誤記修正、再現方法記述

2019/01/21 09:18

投稿

sho_jonas
sho_jonas

スコア77

test CHANGED
File without changes
test CHANGED
@@ -10,21 +10,55 @@
10
10
 
11
11
 
12
12
 
13
- しかし、その設定をいれると_csrfという名前でhiddenで埋め込まれるのですが
13
+ ~~しかし、その設定をいれると_csrfという名前でhiddenで埋め込まれるのですが
14
14
 
15
- その項目がthymeleafでいうところのth:textではなくth:utextの挙動になっており
15
+ ~~~~その項目がthymeleafでいうところのth:textではなくth:utextの挙動になっており
16
16
 
17
17
  XSSが出来てしまいます。
18
18
 
19
+ ~~
20
+
21
+ ~~どうにかth:utextではなくth:textで埋め込んでくれる方法は無いのでしょうか。~~
22
+
23
+ 記載内容に誤りがあり修正させていただきます。申し訳ございません。
24
+
25
+ 正しくは、フォーム内の_csrfの項目にalertなどを埋め込んでsubmitしても
26
+
27
+ 403になりエラー画面を表示する仕組みを通りXSSは発生しません。
28
+
29
+ ただ、restClientなどで_csrfの項目にalertをいれるとresponseがjsonになり
30
+
31
+ 画面で表示するとscriptが発火してしまいます。
19
32
 
20
33
 
21
- どうにかth:utextではなくth:textで埋め込んでくれる方法は無いのでしょうか。
34
+
35
+
22
36
 
23
37
  色々調べては見たもののみつからず悩んでいる状況です。
24
38
 
25
39
  ご教授お願い致します。
26
40
 
27
41
 
42
+
43
+ ---
44
+
45
+ ・サンプル
46
+
47
+ ```json
48
+
49
+ {
50
+
51
+ "timestamp":1111111111111,
52
+
53
+ "status":403,
54
+
55
+ "error":"Forbidden",
56
+
57
+ "message":"Invalid CSRF Token '<script>alert(\"hoge\")</script>' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.",
58
+
59
+ "path":"/hoge/"}
60
+
61
+ ```
28
62
 
29
63
 
30
64
 

1

バージョン情報追記

2019/01/21 09:09

投稿

sho_jonas
sho_jonas

スコア77

test CHANGED
File without changes
test CHANGED
@@ -34,10 +34,12 @@
34
34
 
35
35
  spring boot 1.5.8.RELEASE
36
36
 
37
+ spring 4.3.12.RELEASE
38
+
37
39
  java 1.8
38
40
 
39
- spring security
41
+ spring security 4.2.3.RELEASE
40
42
 
41
- thymeleaf
43
+ thymeleaf 2.1.5.RELEASE
42
44
 
43
- tomcat
45
+ tomcat 8.5.23