【发布时间】:2011-12-19 20:49:03
【问题描述】:
我们有一个 Web 应用程序,它以 XML 格式而不是标准数据库保存调查数据。它使用第三方调查组件(实际上是this component,但经过修改以添加一些功能)
目前,我们正在使用一种非常严格的白名单验证方法来防止潜在的恶意输入进入调查结果 XML 文件。然而,白名单规则正在变成我们客户的支持问题。它们太严格了,我想知道我是不是太限制了。我不知道如果有人使用尖括号(html/xml 标签未闭合或闭合)等对 XML 文档产生什么影响。
如果我将这些存储在 CDATA 部分中,然后对输出进行清理,是否可以防止在这些情况下损坏 XML 文档?我们确实使用 Microsoft.Anti-Xss 和 Web Protection 库来清理所有不受信任的输出。
更好的是,是否有防止 XML 注入或特定于 XML 数据的 XSS 的指南?还是我只是想多了?
核心问题是,只要我正确地清理输出,我是否需要过滤输入?我偏执的天性说是的,但我不确定,我想我会征求一些专家的意见。
【问题讨论】: