为什么 veracode 检测到 ini_set('auto_detect_line_endings') 调用包含参数注入缺陷?

Why veracode detects that ini_set('auto_detect_line_endings') call contains an argument injection flaw?

在扫描 Drupal 代码时,我收到此消息“此调用包含参数注入缺陷。函数的参数是使用用户提供的输入构造的 没有适当地划定或消毒它。” 它指的是:

$default_line_endings = TRUE;
ini_set('auto_detect_line_endings', (bool) $default_line_endings);

我在 Drupal 模块中内联使用它。 有什么想法可以避免这种情况吗?我需要像那样使用该变量。

这是一个安全警告,因为您的 ini 配置取决于一个变量。

虽然看起来变量的值实际上并不取决于用户的输入,但请考虑尝试以下操作:

$default_line_endings = TRUE;
...
...

if(!$default_line_endings)
    ini_set('auto_detect_line_endings', false);
else
    ini_set('auto_detect_line_endings', true);