0

最近我们发现有人从我们的服务器发送了未经请求的电子邮件。这导致服务器被列入黑名单。我认为这是黑客使用的表单没有正确转义数据,或者它也可能是其他东西?

我们有许多网站都有自己的“联系我们”类型的表格。我正在检查所有表格并确保帖子数据被转义。我发现一个表单将 POST 数据添加到消息中而没有先验证它。我刚刚在发送电子邮件之前添加了一张支票。您认为以下内容是否足够,或者在通过 filter_var 运行电子邮件帖子值之前将其转义是更好的做法?

    if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
    {
        $message = $email." says hello";
        $headers = "From: me@example.com";
        mail('to@example.com', 'Subject', $message, $headers);          
    }

我是否应该检查传输日志以查找标头注入攻击/其他攻击,如果是,我会寻找什么?

4

1 回答 1

0

您可以做的最好的事情是检查您的日志以查看谁在发送这些电子邮件,因为您可能不会检查所有用户的脚本。此外,过滤/转义/编码您自己的表单输入(尽管您绝对应该这样做)没有任何意义,因为您的任何用户都可以使用您的 smtp 服务器。

以下是跟踪邮件日志的方法:

tail -f /var/mail/exim_mainlog
tail -f /var/log/exim_mainlog
tail -f /var/log/exim_paniclog
tail -f /var/log/exim_rejectlog
于 2012-06-25T09:29:54.123 回答