我遇到了安全漏洞 - 可能的流量控制[严重性 - 低] 使用Checkmarx扫描以下PHP代码。 使用IF或isset()时出错
谢谢!
答案 0 :(得分:3)
这是因为您依靠POST变量的原始值来进行流控制(即决定执行哪个代码)。这是一种风险(都是低风险),因为攻击者可能会强制您的代码自行决定或以您可能没有预料到的方式执行代码。
很难知道这对你来说实际上是一个问题,因为看到整个代码在这里工作,只有你可以确定。这不是你需要改变或修正的东西,只是需要注意的事情。
答案 1 :(得分:0)
在第一个代码中,您需要在访问之前检查索引中是否存在$ _POST数据。
if (empty($_POST['maintDetail']))
return;
$myVar = $_POST['mainDetails'];//safe!
对于您发布的第二个代码块,我不确定。看起来很好。虽然你应该检查!empty
,如果你想要那里有明确的内容,因为技术上会设置一个空字符串。如果您想了解更多相关信息,请查看this page。