【问题标题】:security and mail() function in phpphp中的安全和mail()函数
【发布时间】:2010-10-20 10:49:06
【问题描述】:

我正在使用 mail() 发送简单的邮件。为方便起见,我使用标题来设置“发件人”地址。我想知道,我可以把任何地址放在那里并假装成任何人;我只是出于好奇而尝试对自己,实际上它有效!这是正常的吗?这是使用邮件功能的正确方法吗?有没有办法识别这些邮件的发件人身份?

编辑: 我使用我的gmail地址作为mail()标题中的“发件人”向自己发送了一封邮件。我收到了带有这些标题的消息:

…

Received: from smarty.dreamhost.com (smarty.dreamhost.com [208.113.175.8]) by mx.google.com with ESMTP id w21si2197938ybh.68.2010.10.19.19.33.30; Tue, 19 Oct 2010 19:33:30 -0700 (PDT)

Received: from nationals.dreamhost.com (nationals.dreamhost.com [69.163.165.6]) by smarty.dreamhost.com (Postfix) with ESMTP id EB56D6E804A for <myMail@gmail.com>; Tue, 19 Oct 2010 19:33:29 -0700 (PDT)

Received: by nationals.dreamhost.com (Postfix, from userid 3598506) id E4BB635C83F; Tue, 19 Oct 2010 19:33:29 -0700 (PDT)

Return-Path: <mySite@nationals.dreamhost.com>

Received-Spf: pass (google.com: domain of mySite@nationals.dreamhost.com designates 208.113.175.8 as permitted sender) client-ip=208.113.175.8;

Authentication-Results: mx.google.com; spf=pass (google.com: domain of mySite@nationals.dreamhost.com designates 208.113.175.8 as permitted sender) smtp.mail=mySite@nationals.dreamhost.com     



发生了什么?我无法解释标题,但看起来 google 接受了假地址!

【问题讨论】:

  • 我不知道具体情况,但是如果您尝试发送带有不同于发送它的服务器域名的 from: 标头的电子邮件,gmail 将检测到该地址被欺骗,并将其添加到垃圾邮件文件夹中。
  • 这也适用于真实邮件!

标签: php security email


【解决方案1】:

欢迎使用 SMTP。

一直以来,您都可以在您选择的电子邮件中添加任何发件人地址,就像您可以在您选择的实体信函中添加任何回信地址一样。

为了扩展这个比喻,验证一封信是由特定个人邮寄的唯一方法是查看其他细节,例如邮戳;同样,关于谁发送电子邮件的唯一真实线索是邮件服务器在识别最后接触邮件的服务器过程中添加的附加标头。

故事的寓意:永远不要相信发件人地址;安全性从来都不是电子邮件系统的预期功能。正如 Vint Cerf 最近谈到我们现有的 Internet 协议时所说:“我们从未打算让这些东西流出。”

【讨论】:

    【解决方案2】:

    是的,发件人标头只是一个标头,任何人都可以声称自己是使用电子邮件的任何人。但是,大多数邮件服务器会将发送服务器的 IP 地址与来自电子邮件地址的 DNS MX-Record 不匹配的任何内容视为垃圾邮件

    【讨论】:

      【解决方案3】:

      是的,这是可能的。如果您从未解析到发送电子邮件的 IP 的域发送电子邮件,则更有可能将您的服务器的 IP 列入黑名单并将您的邮件标记为垃圾邮件。

      有一次这样的愚人节玩笑让我很开心......

      只是不要经常这样做,否则您可能会被列入黑名单。我不确定要追溯它,但我认为它应该是可行的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-01
        • 2013-07-15
        • 2021-06-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-17
        • 2017-08-07
        相关资源
        最近更新 更多