gpt4 book ai didi

c# - HttpUtility.HtmlAttributeEncode 的缺点

转载 作者:行者123 更新时间:2023-12-02 15:04:56 27 4
gpt4 key购买 nike

我必须对一个字段进行编码,以确保脚本注入(inject)的安全。

我知道我可以使用 HttpUtility.HtmlEncode 和 Decode,但是这种用于 HI-ASCII 字符的方法超出了数据库中字段大小的范围,并且我不想更改数据字段列的大小。

相反,如果我使用 HttpUtility.HtmlAttributeEncode,它可以正常工作,因为它不会对 HI-ASCII 字符进行编码。

它安全吗?它有什么缺点。

最佳答案

来自HttpUtility..::.HtmlAttributeEncode Method (String) :

The HtmlAttributeEncode method converts only quotation marks ("), ampersands (&), and left angle brackets (<) to equivalent character entities. It is considerably faster than the HtmlEncode method.

The string result from the HtmlAttributeEncode method should be used only for double-quoted attributes. Security issues might arise when using the HtmlAttributeEncode method with single-quoted attributes.

然而,将编码输入存储在数据库中并不是通常的做法。很难预测编码版本会变得多长。

更好的方法是直接存储输入,并且仅在需要时(当您以 HTML 形式输出时)对其进行编码。

关于c# - HttpUtility.HtmlAttributeEncode 的缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2463251/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com