Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
修复HP FOD工具报告的javascript文件中的XSS漏洞_Javascript_Jquery - Fatal编程技术网

修复HP FOD工具报告的javascript文件中的XSS漏洞

修复HP FOD工具报告的javascript文件中的XSS漏洞,javascript,jquery,Javascript,Jquery,我在通过HP FOD工具进行扫描的项目中有以下代码处理dashboard.js文件,在线发现以下漏洞: var selectOption = $("#county option[value=" + selectValue + "]").text(); 工具说明如下: handlers.js中的lambda()方法将未验证的数据发送到web 浏览器位于上面的第行 这意味着变量selectValue可以包含任何内容,并用于填充可提交到服务器的选项的值 如果您确定在服务器上清理了您的国家/地区选项

我在通过HP FOD工具进行扫描的项目中有以下代码处理dashboard.js文件,在线发现以下漏洞:

 var selectOption = $("#county option[value=" + selectValue + "]").text();
工具说明如下:

handlers.js中的lambda()方法将未验证的数据发送到web 浏览器位于上面的第行


这意味着变量
selectValue
可以包含任何内容,并用于填充可提交到服务器的选项的值

如果您确定在服务器上清理了您的国家/地区选项,则您已经解决了该问题


任何HTML表单元素都可能被篡改,无论如何都应该在服务器上进行清理。

首先,你不能说
selectValue
来自何处(我认为这是重要的一点),静态分析所能完成的工作总是有限制的

在任何情况下,我现在能想到的最糟糕的情况是获得一个选择器,该选择器匹配页面上的任意项目并删除它们:

var selectValue=“””,*,foo[bar”;
变量选择器=“#县选项[value=“+selectValue+”];
var selectOption=$(选择器);
log(“最终选择器:%s”,选择器,selectOption.length);
console.log(“所选项目:%s”,selectOption.length);

那么,您将未经验证的数据发送到上面一行的web浏览器中,不要……我不知道还有什么要说。其中最重要的一点是,您似乎没有提出一个实际问题,
selectValue
来自哪里?这段代码应该做什么?