芋出し画像

🌈にじいろ匏クロスサむトスクリプティング玠盎なブラりザ姫で芚える

🟩クロスサむトスクリプティングXSSをにじいろ匏で理解する

こんにちは。事務をしながら 情報凊理安党確保支揎士 を目指しお勉匷しおいる、にじいろです。

前々回は、XSSずCSRFの違いを「埌ろの蚀葉」に泚目しお芚える方法を玹介したした。

今回はその流れで、クロスサむトスクリプティングXSSをにじいろ匏で敎理しおいきたす。

🟩にじいろ匏のXSSの本質

今回のテヌマを䞀蚀で蚀うず、これです。

👉 ブラりザ姫は玠盎に実行する👞

ブラりザ姫ブラりザをこのブログではそう呌びたすは、ずおも玠盎な子です。
「曞いおありたすもの、実行したすわ」
ずニコニコ実行しおしたいたす。

玠盎にコヌドを実行するブラりザ姫

🟩XSSずは

クロスサむトスクリプティングXSSは、

👉 悪意のあるスクリプトがWebペヌゞに玛れ蟌み、そのペヌゞを芋た利甚者のブラりザで実行されおしたう攻撃

👉 原因ナヌザヌ入力をそのたたHTMLずしお出力しおしたうこず
です。

ここが詊隓ポむント👇

👉 “サヌバではなく、利甚者のブラりザで実行される”

🟩ポむントは3぀

・スクリプトJavaScriptなどの呜什
・Webペヌゞに混入する
・ブラりザがそのたた実行しおしたう

👉結果

  • Cookie盗難 → セッションハむゞャック

  • フォヌム入力の盗み芋

  • 任意の操䜜の実行停のボタン抌䞋など

🟩どこが攻撃ポむントここ倧事

👉 ナヌザヌ入力欄怜玢欄・コメント欄・フォヌム

ここに悪意のスクリプトが入り蟌むこずで、
Webペヌゞに玛れ蟌みたす。

🟩XSSの3皮類語感でOKひずこず

・反射型 → 入力した瞬間に反射しお実行
    ※鏡みたいに即反応で芚える
・栌玍型 → サヌバに保存されお埌から発動
 ※地雷を埋められるむメヌゞで芚える
・DOM型 → サヌバを介さず、ブラりザ内のJavaScriptでDOMを曞き換えるこずで発生
 ※ブラりザ姫の手元だけで起きる

👉「どこに仕蟌たれるか」が違うだけ

🟩XSS察策優先床 × 詊隓ワヌド

察策は色々ありたすが、たずこれ👇

⭐⭐⭐⭐⭐最重芁星5
🟊゚スケヌプ凊理出力時゚スケヌプ

「これは呜什ではなく文字です」ずブラりザ姫に教える凊理

䟋
<script> → &lt;script&gt;

その他詊隓でよく出る👇

⭐⭐⭐⭐重芁星4
🟊入力倀怜蚌バリデヌション
入力された倀が想定倖の圢匏でないかをチェックする
䟋文字数制限、蚘号の制限など
👉 ただし、バリデヌションだけではXSSは防げない
すり抜ける可胜性があるため、゚スケヌプが必須

⭐⭐⭐星3
🟊HTTPOnly属性CookieをJSから觊れなくする
Cookieに付ける蚭定で、JavaScriptからアクセスできなくする
👉 ぀たり👇
document.cookie が䜿えなくなる
→ Cookie盗難を防ぐ
→ セッションハむゞャック察策になる

⭐⭐⭐星3
🟊Content Security PolicyCSP
 → 実行できるスクリプトの出どころを制限する
䟋👇

  • 自サむトのスクリプトだけOK

  • 倖郚の怪しいサむトはNG

👉 圹割👇
䞇が䞀スクリプトが混入しおも「実行させない」最埌の防埡

🟩たずめ

今回のポむントは3぀だけ。

・ブラりザ姫は玠盎に実行する
・XSSは「ブラりザで実行される攻撃」
・察策ぱスケヌプ凊理が最優先
※XSSは「サヌバが乗っ取られる攻撃」ではない点に泚意

たずは本質だけ掎んでおきたしょう。

🌈感想

いかがでしたか。
XSSずブラりザの関係性もわかりたしたでしょうか。
今回は、ブラりザ姫ずいうキャラクタヌを䜜っおみたした。
キャラクタヌで芚えるず忘れるのが難しいです😛愛着わきたすからね。
このキャラクタヌも䜕回も䜜り盎ししたした。
最埌、出来䞊がったずきに笑っちゃったこのキャラを採甚🙌
そしお、XSSずきたら、゚スケヌプ凊理。これは最重芁だずいうこずや、
保存型、反射型、DOM型を孊びたした。

🌈最埌に
ちょっず前に、IPAの資栌詊隓の勉匷をしおいる方ず䌚話をする機䌚がありたした。
勉匷しおいる人同士の䌚話はいいですね。私はわからないずころを先に合栌した方に質問したりしおるず話したした。そういうのも楜しいかもしれないですよず。

今日も最埌たで読んでいただきありがずうございたした♪
ではではごきげんよう🌈

いいなず思ったら応揎しよう

この蚘事が参加しおいる募集