【问题标题】:Html entity encoding in webapplicationWeb 应用程序中的 Html 实体编码
【发布时间】:2010-08-23 10:17:27
【问题描述】:

我正在寻找您的所有宝贵建议,以通过 Web 应用程序中的表单数据避免漏洞。 作为 html 实体编码的一部分,需要对哪些字符进行编码以避免此类注入攻击?。将哪些字符注入到我们的表单数据中会容易发生 HTML 注入?
到目前为止,我们正在将用户输入中的 \",/,\,:,*,?,,|,;,%,#,~ 字符替换到我们 Web 应用程序的表单输入字段中。此外,我们已经实现将 {"","\'","&"} 编码为 {"","&"} 的编码方法,我们允许这些字符从用户输入到我们的申请表字段。是否需要将编码方法增强到任何其他字符以摆脱任何漏洞情况? 请尽快向我提供您的宝贵建议。 感谢和问候, 苏雷什巴布

【问题讨论】:

  • 各大平台都有这方面的现成功能。你用的是什么平台?

标签: html encoding entity


【解决方案1】:

基本上,将 &" 转义为相应的 html 实体就足够了,但是有一些复杂的攻击,包括一些字符模式,使浏览器切换到另一种编码,攻击者在其中编码了攻击字符串。

由于它很复杂,有一些库会不断更新以尽可能以最好的方式完成这项工作,其中之一是 HTML Purifier(用于 php)。

【讨论】:

    【解决方案2】:

    试用 Apache Commons - 朗: http://commons.apache.org/lang/api-release/index.html

    StringEscapeUtils 类为您的问题提供了一种方法。 http://commons.apache.org/lang/api-release/org/apache/commons/lang/StringEscapeUtils.html

    【讨论】:

      猜你喜欢
      • 2014-09-16
      • 1970-01-01
      • 2012-10-29
      • 2011-03-19
      • 1970-01-01
      • 1970-01-01
      • 2016-11-05
      • 2010-09-09
      • 2013-09-15
      相关资源
      最近更新 更多