eval在perl 5.10.1中运行setuid时会在eval中抛出不安全依赖,在5.8.8中正常工作

时间:2017-09-07 02:12:13

标签: perl

eval("local our ".$custom_fields_hash->{ $id }->{ 'name' }); 

抛出

  

“运行setuid时eval中的不安全依赖”

in perl 5.10.1。

在5.8.8

中工作正常

1 个答案:

答案 0 :(得分:2)

你倒退了。安全检查在5.10.1中工作正常,但在5.8.8中没有。

您正在以污点模式运行(因为您正在以setuid模式运行)并且您显然正在将代码从不受信任的来源传递到eval。这是一个重大的安全违规,因此Perl阻止你这样做。

perlsec了解详情。