【问题标题】:How to avoid "Possible Flow Control Vulnerability" in php?如何避免php中的“可能的流控制漏洞”?
【发布时间】:2015-03-13 10:15:52
【问题描述】:

我遇到了一个安全漏洞 - 可能的流控制 [严重性 - 低] 使用 Checkmarx 扫描以下 PHP 代码。 使用 IF 或 isset() 时出错

谢谢!!

【问题讨论】:

    标签: php security checkmarx


    【解决方案1】:

    这是因为您依赖 POST 变量的原始值进行流控制(即决定执行哪些代码)。这是一种风险(尽管风险很低),因为攻击者可能会强制您的代码自行决定或以您可能没有预料到的方式执行代码。

    如果没有看到这里工作的整个代码,很难知道这是否真的对您来说是个问题,只有您才能确定。这不是你需要改变或修复的东西,只是需要注意的东西。

    【讨论】:

      【解决方案2】:

      在第一个代码中,您需要在访问 $_POST 数据之前检查它是否存在于索引中。

      if (empty($_POST['maintDetail']))
         return;
       $myVar = $_POST['mainDetails'];//safe!
      

      对于您发布的第二个代码块,我不确定。在我看来很好。虽然您应该检查!empty,如果您希望那里有明确的内容,因为在技术上将设置一个空字符串。如果您想了解更多信息,请查看this page

      【讨论】:

      • 我会尝试这个解决方案,然后用输出回复你
      • @bulk 我将使用 filter_var 内置函数来清理我的 post 变量。
      猜你喜欢
      • 2021-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-28
      • 1970-01-01
      • 2022-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多