XSS代码注入方式
Posted 区块链小哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XSS代码注入方式相关的知识,希望对你有一定的参考价值。
1、理解数据的上下文
数据从输入到输出经过了哪些处理,数据流向如何
(1)用户输入的数据输出到了html页面的什么位置。
(2)哪些类型的用户数据是允许通过的,哪些是禁止的。
(3)过滤器采取了什么措施对特殊字符进行过滤。
今天先说用户输入数据在HTML出现的4种情况的第一种:
输出在HTML标签之间:<HTML标签>[用户输入]</HTML标签>
l 如果过滤器是对script、alert黑名单过滤,且过滤器只检查纯小写或纯大写关键字,则使用大小混写绕过,如”scrIpt”
l 如果过滤器是将关键字直接删除,且过滤一次,则可以采用多重嵌套方式绕过,如”scrscriptpt”
l 如果过滤器是对带尖括号的关键字如”<script>”进行匹配,则可以采用script后加空格的方式绕过
l 如果过滤器是对匹配关键字进行异常报错处理,则可构造如下所示代码,利用HTML实体编码,将”alert(1)”替换成HTML实体字符”alert(1)”
l 过滤器单独对尖括号进行异常处理,使用了htmlentities()或htmlspecialchars()函数
以上是关于XSS代码注入方式的主要内容,如果未能解决你的问题,请参考以下文章