Javascript 导致CWE-201代码错误的jQueryResult.load()函数
以下代码段导致代码错误CWE-201Javascript 导致CWE-201代码错误的jQueryResult.load()函数,javascript,veracode,Javascript,Veracode,以下代码段导致代码错误CWE-201 function advice(tab){ var foo = document.getElementById("foo").value; var bar = document.getElementById("bar").value; tab.loader.load({ url : contextPath+"/test.do?method=helloWorld", method :
function advice(tab){
var foo = document.getElementById("foo").value;
var bar = document.getElementById("bar").value;
tab.loader.load({
url : contextPath+"/test.do?method=helloWorld",
method : "POST",
params : {
method : "hi",
Foo : foo,
Bar : bar,
scripts : true
}
});
}
不知道我错在哪里。请纠正我。简言之,就是关于暴露敏感信息的风险。我假设您共享的代码片段不是实际的代码,因为很难确定POST请求的哪一部分可能会引入这种暴露
我看到的可以通过扫描标记为敏感数据源的来源是您通过POST发送的参数。如果您认为有必要发送此敏感数据,则必须实施某种形式的访问控制检查,以确保只有具有正确权限的用户才能执行此操作。另外,确保通过HTTPS上下文发送数据也是一个很好的签入代码
我不确定您正在使用的底层服务器端web框架,因此我无法对将在此客户端调用之上生成的验证提出代码建议
如果数据本质上不敏感,则这是误报,您必须向您的安全团队报告
另一方面,我认为通过URL或querystring控制方法调用不是一个好主意。攻击者可以猜测或模糊它可以发送的有效方法列表,如果您的代码没有正确的authn/authz检查,则您的应用程序/api可能会受到攻击