首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP IMAP "FROM“authenticity

PHP IMAP "FROM“authenticity
EN

Stack Overflow用户
提问于 2014-10-18 17:29:58
回答 2查看 185关注 0票数 1

我有一个PHP脚本,它定期检查来自Google应用程序的电子邮件,然后查看电子邮件来自谁,并将该电子邮件分配到他们在我们平台上的帐户:

代码语言:javascript
复制
$inbox = imap_open(gHost,gUser,gPass) or die('Cannot connect to Gmail: ' . imap_last_error());

$criteria ="ALL"; 
$emails = imap_search($inbox, $criteria);

foreach($emails as $email_number) { //loop all emails
$header = imap_headerinfo($inbox, $email_number);
$from = $header->from[0]->mailbox . "@" . $header->from[0]->host;
//sql script here to check against users table and allocate the email
}

问题是,任何人都可以编写脚本向我们的平台发送带有虚假"from“的电子邮件,如果电子邮件是我们平台上的用户,它会将电子邮件分配给该用户,这会打开一个安全漏洞。我们已经对此进行了测试,电子邮件成功通过。我们如何检查发件人用户是否确实是从该用户发送的-可能是使用DKIM、spf等进行评分。

你知道检查真实性最好的方法是什么吗?

EN

回答 2

Stack Overflow用户

发布于 2014-10-18 18:51:05

From电子邮件字段的内容可配置。

你可以把它想象成一个类似于主题的字段。

我的意思是,任何有正确知识的人都可以把任何东西放在那里。

另一方面,作为一般规则,Gmail有非常好的垃圾邮件过滤器,所以这种情况不应该经常发生。

如果这种情况发生得太频繁,并且是一个问题,那么您应该实现一些额外的过滤。

例如,创建包含最多滥用电子邮件的数据库,并进行一些额外的处理。

票数 0
EN

Stack Overflow用户

发布于 2020-11-28 06:56:37

我知道,这个问题已经有好几年了,但我在谷歌搜索中偶然发现了这个问题,我希望我能帮助其他人找到那个页面。

TL;DR

发件人可以使用几乎每个text.

  • SPF设置
  • From-header。可用于验证电子邮件是否确实来自指定的发件人。
  • SPF和仅在发件人管理员配置的情况下才起作用。

正如线程创建者和Antoan Milkov已经提到的,发送者通常可以使用From-header中的几乎每个电子邮件地址或文本。

SPF

要验证是否允许发件人ip地址以From-sender的名义发送邮件,可以使用SPF。但SPF在大多数情况下都是默认不配置的,需要由域管理员设置。

更多细节:https://de.wikipedia.org/wiki/Sender_Policy_Framework

我还没有使用它,但也许这对在PHP中检查SPF很有帮助:

https://github.com/Mika56/PHP-SPF-Check

DKIM

使用DKIM,电子邮件由发送者签名,接收者可以检查签名是否有效。此外,DKIM还需要由域管理员配置。

更多细节:https://www.dmarcanalyzer.com/de/dkim-de/

这可能有助于用PHP验证DKIM签名:

https://github.com/angrychimp/php-dkim

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26438228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档