javascript - 避免 Veracode CWE-80 : Improper Neutralization of Script-Related HTML in jquery htm() method

标签 javascript jquery ajax veracode

我刚刚完成了对 asp.net mvc web 应用程序的第一次 Veracode 静态扫描,Veracode 发现了数十个 CWE-80:网页中与脚本相关的 HTML 标签的中和不当缺陷。

几乎所有这些都涉及使用 jquery html() 方法。我们的模式是在 javascript 中进行 $.ajax() 调用,并在成功事件中在 html 元素中显示 $.ajax 调用的结果,如下所示:

success: function(data) {
    $('#elementid').html(data);
}

在大多数情况下,这些 $.ajax() 调用是对返回 MVC 部分 View 、充满 html 标记等的 MVC Controller 方法的调用。

我们将如何更改我们的 javascript,以便像这样的调用不会被 Veracode 标记为 CWE-80 缺陷?我们仍然可以对 Controller 方法进行客户端 $.ajax 调用,这些方法返回 html block 并通过 Veracode 测试吗?

最佳答案

我安排了一次 Veracode 咨询,了解到 Veracode 只是将所有 $.html() 调用标记为中等严重程度的缺陷。我们可以采取两种行动:

  1. 将缺陷标记为“已缓解”并提供解释,或者
  2. 更改代码以删除对 $.html() 的所有调用。

我们选择将所有这些缺陷标记为“已缓解”。

关于javascript - 避免 Veracode CWE-80 : Improper Neutralization of Script-Related HTML in jquery htm() method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50863812/

相关文章:

javascript - 参数对象正在将我的数组转换为列表? javascript

javascript - 使用 JWT 授权从 express node.js 下载文件

javascript - 如何知道元素是否在屏幕上可见。如果没有,请滚动页面

javascript:一次预加载一个图像

ajax - Grails Ajax : Render Template not picking up parent resource(js)

jquery - 通过 jquery 注入(inject) html 后,事件处理程序无法使用/不使用委托(delegate)

javascript - 如何在共享点列表中循环执行以下代码

javascript - 如何在拖动 block 元素时显示光标位置,就像拖动 img 和选定的文本一样?

javascript - 访问 Radgrid 中的 MasterTableView 编辑表单以获取对文本框的引用

javascript - 保存给定文件的位置