@beisen/xss-filter

sanitize untrusted HTML tool for beisencorp

Usage no npm install needed!

<script type="module">
  import beisenXssFilter from 'https://cdn.skypack.dev/@beisen/xss-filter';
</script>

README

开发用

依赖项:babel-preset-env、uglify-js
编译:npm run build

使用

方法 说明
1.XSSFilter.HTMLEncode 转义 HTML 内容
2.XSSFilter.HTMLDecode 用于翻译转义过的 HTML 内容
3.XSSFilter.trim 用于去除空格
4.XSSFilter.JavaScriptEncode 用于转义 JavaScript 内容(备用,仅参考)
5.XSSFilter.URLEncode 用于转义 URL
6.XSSFilter.URLDecode 用于翻译转义过的 URL

转义字符范围

字符 原因
" ' 能够闭合属性
& 在属性或 script 标签中使用&#构造字符会被解析为原文 使过滤失效
< > 能够闭合标签
` 可被用于字符串的插值计算
0x00-0x20 空格和部分系统预留 主要防止构造空字符逃避 WAF
0x7F-0xFF 特殊符号 制表位等 防止利用换行和系统不支持的字符逃避 WAF
0x0100-0x2700 拉丁语字符 防止利用异体字符逃避 WAF