Using the 3-parameter form of open would be a good practice to check for. It would be good to warn about system or exec calls that pass arguments inside the first parameter (i.e. system("$command $arg1 $arg2") instead of system($command, $arg1, $arg2)).
If practical, warning about DBI statements that use inline variables where prototypes are better (i.e. $dbh->prepare("update table set my_val = $somevalue") instead of $dbh->prepare("update table set my_val = ?")). I'm guessing that would be a challenge, but it sure would be nifty.
Yes, proper untainting would probably solve these issues, but I've seen too many coders untaint such things extremely poorly.
In reply to Re: Ideas Wanted for Perl::Critic Security Policies
by radiantmatrix
in thread Ideas Wanted for Perl::Critic Security Policies
by jthalhammer
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |