・「クライアントサイド」のJavaScriptでは、innerHTMLをエスケープ(サニタイズ)する必要ないのか?
サイトのJSON_APIがスクリプトタグを含む文字列を送ってきていて、
こちらのGreaseMonkeyスクリプトは今はそれをそのまま表示してしまっている。(見た目は消える)
これはXSS的に問題だと思っていたのだが、以下を見ると、またこちらでも試した限り、
divタグの中身等としてappendChild/insertBeforeする分には実行されないようだ。
> が!残念ながらこの場合はscriptは動きません。
> http://tech-blog.tsukaby.com/archives/894
とはいえ、見た目消えてしまうのでどのみち修正は必要なのだが、
XSSの脆弱性という意味での対策は必要ないということでいいのだろうか?
俺はJavaScriptの専門家ではない。
したがって情報は基本的に全てWebなのだが、例えば以下のように、
> 例えば、DOM Based XSSを発生させる典型的なコードの例として、
> 以下のようなinnerHTMLの使用があったとします。
> // ★★★脆弱なコードの例★★★
> var div = document.getElementById( "msg" );
> div.innerHTML = some_text; // 外部からコントロール可能な文字列
> http://www.atmarkit.co.jp/ait/articles/1312/17/news010_2.html
とあって、その後「ブラウザー上で」エスケープするなりcreateTextNodeをしているわけだが、
これって全くの間違いで、必要ないのだろうか?
(サーバーサイドならもちろん必要として、クライアントサイドなら問題なしでいいのか?
今のところ、筆者もこれらを混同しているように見える。
記事は2013/12と古いのだが、これ以降に仕様変更されたのか?
なお上記一つ目(動かないと書いている方)のブログは2015/04)
なお念のため再度言うが、「クライアントサイド」で「innerHTML」の場合。
「サーバーサイド」でもなく、「outerHTML」でもない。
JavaScript情報交換所(プログラミング既習者専用) [無断転載禁止]©2ch.net
435デフォルトの名無しさん
2016/10/16(日) 16:56:27.94ID:u0ZoFejPレスを投稿する
ニュース
- 佐藤二朗 ハラスメント報道にコメント「大変残念。全ての事実が明らかになることを望みます」所属事務所「到底受け入れられない」★66 [Ailuropoda melanoleuca★]
- 【円安】1ドル162円突破の「異常な円安」はなぜ止まらない? 原因が「ホルムズ危機」でも「高圧財政」でも変わらない"唯一の解決策" [ぐれ★]
- 中田敦彦・福田萌夫妻、5年間暮らしたシンガポールから日本へ帰国を告白。家族で選んだ大きな決断★2 [ちょこ★]
- 橋本愛、佐藤二朗とのトラブル…横浜流星や吉沢亮との「密着シーン」となにが違ったのか ★3 [ネギうどん★]
- 【W杯】カボベルデ 英雄40歳GKボジニャ、インスタのフォロワー数が2500万人に到達!大会前の5万人から500倍に! [阿弥陀ヶ峰★]
- 【サッカー】森保監督になぜ“続投報道”が相次ぐのか? 「赤字31億円」のJFAが抱えた後任選考 “2つの難航要素” [ネギうどん★]
- 【STARDOM】スターダムワールド Part.125
- 2026 EWC 鈴鹿8時間耐久ロードレース Lap2
- 2026 EWC 鈴鹿8時間耐久ロードレース Lap3
- 【MLB】ドジャース vs パドレス ★8
- 【地上波/DAZNほか】 FIFAワールドカップ2026 総合スレ★319【メキシコ/カナダ/アメリカ】
- 【D専】
- ジャップ、調理台で店員が寝てるラーメン屋がありかなしかで大激論…🫪 [667744927]
- 🏡だっせぇ靴🐷👞ときったねぇ指🫪👆🏽
- ナルトダンスってキモいやつがTikTokに汚染されてたからブロックしまくってようやく落ち着いてきた
- 【悲報】高市早苗の公設秘書、底辺ネトウヨみたいなことを言い出すwwwwwwwwっw [834922174]
- 【高市】アニメや漫画で学んだ知識「モーターは液体窒素で冷やすと回転数が上がる」「靴下を裏返しに履けば敵にやられずに済む」 [784319933]
- 千晴「ボゲ」←これ