什么是XSS跨站脚本
攻击者利用网站漏洞把恶意的脚本代码注入到网页中,就会执行其中恶意的代码, 对受害用户可能采取Cookie资料盗取,会话劫持,钓鱼欺骗等各种攻击
黑客一旦挖掘到xss漏洞,就可以利用漏洞实施会话劫持,资料窃取,渗透入侵和传播蠕虫病毒等一系列攻击。
所有来自cookie,post表单,http头的内容都可能会产生xss
xssFilter 一般是基于白名单的安全过滤策略,即把要处理的数据分成白名单和黑名单两大列表
很多Html标记中的属性都支持javascript:[code]伪协议形式,这个特殊的协议类型声明了URL的主体是任意的javaScript代码
除了/**/外,样式标签里的\和结束符\0也是被浏览器忽略的
string.formcharcode()用于把字符转为ASCLL
把跨站脚本拆分成几个片段,然后再使用某种方式将其拼凑在一起执行,这和缓冲区溢出的shellcode的利用方式效果一致
exploit是表示完整写好的漏洞利用工具(或程序),具有一定攻击性
shellcode: 指利用一个漏洞时所执行的代码
poc:是一段证明漏洞存在的程序片段
攻击者往往会把shellcode写到远程服务器上,然后再使用<script>标签对其进行调用,或者使用一些本地存储对象进行存储和调用等
方便起见,shellcode可写到其他服务器的文件上,然乎再用<script>标签进行动态加载
另一种方式实现shellcode的存储和调用,利用window.location.hash属性
httpOnly用于避免cookie被js访问
攻击者在获取受害者的cookie信息后,还需要web系统建立会话,才能完全侵入用户的账号