Closed vsespb closed 10 years ago
Hi Victor,
Thank you for the bug report! It is a bug in the token handler, which failed to recognize the boundary between the true case and the false case in the ternary conditional operator.
I added several test cases based on yours, and this code now passes:
my $a = 1;
my $x = $a ? 'update' : $b;
But this code is still correctly detected as having a SQL injection vulnerability:
$test
? 'update' . ' ' . $table
: $var;
I merged the code into master already, and I will plan a release shortly.
Thank you !
Added milestone v1.3.0, for release this week.
well, it's false positive for as, as we have "update" as internal ID of some our internal stuff. however, I am not sure, maybe this can be treated as SQL injection in other cases.