保护ARP3 - 针对SQL注入攻击的AutoResponse Plus安装

时间:2013-08-05 21:06:03

标签: sql code-injection

我正在使用自动回复电子邮件软件(AutoResponse Plus - ARP3)。这是一个安装在cgi-bin目录下的perl脚本。上周,有人入侵了该软件。从我的服务器使用此软件发送了大量垃圾邮件。很少有研究表明该软件没有防止SQL注入的机制。

如果您在同一条船上,请与供应商联系以获得修复。因为看起来没有简单的解决方案可以100%修复它,因为这个软件的源代码是缩小的。模糊处理。

1 个答案:

答案 0 :(得分:2)

你好像很困惑。注入错误是编码错误,而不是验证问题。在生成代码时,无法将文本转换为适当的文字。

例如,

my $stmt = "
   SELECT *
     FROM Table
    WHERE $field='$value'
";

应该是

my $stmt = "
   SELECT *
     FROM Table
    WHERE ".$dbh->quote_identifier($field)."=".$dbh->quote($value)."
";

my $stmt = "
   SELECT *
     FROM Table
    WHERE ".$dbh->quote_identifier($field)."=?
";
# Followed by ->execute($value) instead of ->execute()