Encoding 清理HTML-获取一些未知的编码?
我正在使用解析Encoding 清理HTML-获取一些未知的编码?,encoding,.net-core,html-sanitizing,Encoding,.net Core,Html Sanitizing,我正在使用解析.netcore中的输入来防止XSS注入。HtmlSanitizer实现-我不知道Angle Sharp做什么,但它对一些字符进行编码,如: 输入: !;@#$%^&*():?~ 输出: !;@$%^&;*():“?~ 请注意,和&分别被编码为、和&。我这里有两个问题: 这是什么编码 (可选)是否有方法使用AngleSharp或其他库来撤消它 旁注-所有有害的东西都会根据需要被剥离,这种格式的改变无论如何都会发生在“安全”html上,只是要指出,我并没有撤销
.netcore
中的输入来防止XSS注入
。HtmlSanitizer实现-我不知道Angle Sharp做什么,但它对一些字符进行编码,如:
输入:
!;@#$%^&*():?~
输出:
!;@$%^&;*():“?~
请注意,
和&
分别被编码为
、
和&
。我这里有两个问题:
旁注-所有有害的东西都会根据需要被剥离,这种格式的改变无论如何都会发生在“安全”html上,只是要指出,我并没有撤销该库的任何安全特性,所以我们不会就此进行长时间的讨论 这些字符串是HTML编码的。html编码的目的是防止XSS,但由于我已经剥离了任何可能有害的代码,所以在我的情况下,这只是杀伤力过大。更多详细信息请参见本答案(引用自此处):
- 小于字符()转换为
- 符号和字符(&)转换为
&代码>
- 双引号字符(“)转换为
”
- 代码大于或等于0x80的任何ASCII码字符
转换为
,其中 是ASCII字符值和#
如前所述,您可以使用内置工具在
.NET Core
中对字符串进行html编码和解码。请提供一个示例。如果您知道编码是什么,您可能会从发布的信息中知道@Asp.Net中内置了HTML编码/解码。有关更多信息,请参阅。