--- title: XSS --- # XSS by Halloworld > [slides](https://slides.com/halloworld/nisra2020-enlightened-xss/fullscreen) > [slides-課後公布版](https://slides.com/halloworld/xss/fullscreen) > [課程影片連結](https://youtu.be/WCj3zAKDwyU) > [slido 匿名發問](https://app.sli.do/event/mayuzmwd/live/questions)(連結已關閉) --- ###### tags: `Enlightened` `NISRA` `2020` <style> .navbar-brand::after { content: " × NISRA"; } </style> ## 網頁の組成 * ### HTML:給網頁一個基礎的長相 * ### CSS:幫網頁化妝 - CSS用到極致的例子 ==> [AIS3 報復性聊天室](/@AIS3-2020/chat) * ### Javascript: - 不等於Java,與後端互動,幫網頁做事件觸發、特效 - 跟python一樣是直譯式語言 - 可用Console執行 ## XSS * ### 你可以在Console試試這個:) - `document.getElementsByTagName('body')[0].innerHTML=""` * ### XSS reflected(反射型) - 讓使用者發出惡意的請求(ex:奇怪ㄉ按鈕),伺服器將回應後, 將有害的javascript直接回顯在webpage - 需要社交工程 (把惡意連結傳給別人) ==> 想辦法用騙的就對了: ) * ### XSS DOM - DOM 全稱為 Document Object Model - 一個描述HTML的樹狀結構,讓我們能透過js動態產生網頁,無須透過伺服器 - 發生原因 - 沒有詳細檢查資料,使得操作 DOM 的過程帶入了惡意指令 - 觸發跟反射型類似,只差在DOM渲染的部分 - 詳情請洽: https://ithelp.ithome.com.tw/articles/10202689 * ### XSS Stored (儲存型) - 會將惡意語法存入伺服器資料庫中 - 常見位置 - 論壇文章 - 留言板 - 能夠將惡意語法常駐 - 當使用者瀏覽時,能夠直接執行惡意語法,~~讚👍~~ - XSS GAME 1. `<scrpit>alert(X)</script>` 2. `<img src="XXX" onerror="alert(X)">` 3. `frame#0<onerror="alert(X)"`