XSS(Cross-site scripting) 又稱跨網站指令碼,也同屬於注入攻擊的一種。當使用者讀取網站後網站會執行攻擊者的程式碼,通常是透過HTML/JavaScript這種不在伺服器端而是在客戶端的瀏覽器執行的語言程式。XSS可以分成兩種:
反射型XSS(Reflected Attack)是令使用者點擊特定連結的一種手法。這種攻擊是針對客戶端的,並不會攻擊到伺服器端。
如果一個網站的函數是會把使用者搜尋的東西以url參數接收的時候。下面是假設一個網站我搜尋了禮品卡後顯示的結果:https://reflectedattack.com/
https://reflectedattack.com/search?term=giftcard
攻擊者可以把連結修改成這樣:https://reflectedattack.com/search?term=<script>/*attack+code+here+*</script>
這樣當使用者點擊了上方的網址的時候,後面的惡意程式碼就會被執行。攻擊者就可以竊取使用者的資料、cookie等。
Persistent attack的部分我會留著明天來解釋!
參考資料
Reflected XSS
跨網站指令碼
跨站腳本攻擊(Cross-Site Scripting, XSS)概述