回答編集履歴

1

追記

2023/08/15 00:56

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア36626

test CHANGED
@@ -1 +1,11 @@
1
- 元ページのコンテキストにアクセスできるわけでもないと思いますので、特に危険はないように思います。
1
+  元ページのコンテキストにアクセスできるわけでもないと思いますので、特に危険はないように思います。
2
+
3
+ ---
4
+
5
+  条件をはっきりさせておきますと、元ページの実行コンテキストやDOMにアクセスできるわけではないので、`eval`や`Function`よりも安全であると思います。
6
+
7
+  軽くテストしてみた感じ、FirefoxではCORSが働きますが、Chromeでは同一ドメインとみなすようです。また、cookieについてはFirefoxでは同一ドメインとみなしているようですが、Chromeでは取得ができませんでした。
8
+
9
+  以上のことから、サンドボックス化した`iframe`よりはやや危険かもしれません。
10
+
11
+  別ユーザーの入力をHTMLエスケープせずに使用すれば、yambejpさんのご回答の通り、XSSの危険性があります。ただ、私見ではありますが、別ユーザーの入力をHTMLエスケープせずに使用する想定であれば、ご質問のコードがなくてもXSSのリスクがありますから、このコード特有のセキュリティリスクではないと理解しています。