【问题标题】:How would you analyze a HTML string to be valid您将如何分析 HTML 字符串是否有效
【发布时间】:2013-12-05 15:54:00
【问题描述】:

我有一个以 HTML 格式获取用户输入的表单(BB 或类似的解决方案不会这样做,我无法控制)。 现在我需要确保所有标签都已关闭,所以它不会破坏我页面的 html 布局。
我想到的最简单的解决方案是仅在 iFrame 中显示我从用户那里获得的片段。
有没有更好的方法?
(同样,我没有控制该特定输入以及我如何获得它)。

【问题讨论】:

  • 如果你将字符串传递给 jQuery $('<div>....</div>') 它将创建一个有效的 dom 树
  • 但如果我通过'<div><font>ddfdfdfdf</div>''<font>fddfdfd'

标签: html xss


【解决方案1】:

我个人会检查并只允许某些标签(例如“”或“”作为示例)。如果您想允许所有 html,您可以使用客户端工具,例如“https://code.google.com/p/jquery-clean/”。我不确定您使用的是哪种服务器端技术,但您也希望在那里进行清洁/消毒。

除了检查布局是否正确(如果 html 来自不受信任的来源)之外,您还需要查看脚本标签以防止 XSS 或其他安全风险。有关详细信息,请参阅此页面 (http://jsoup.org/cookbook/cleaning-html/whitelist-sanitizer)。我知道这不是确切的问题,但检查确实很重要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-09
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 2011-06-17
    • 1970-01-01
    • 2013-04-14
    相关资源
    最近更新 更多