关于邮件安全—Hack之路

邮件安全

邮件的发送和短信的发送是在很多业务场景上是用户首选。在使用邮件发送过程中,业务某些情况与短信一样,如注册验证,密码找回,建议添加图片验证码,IP,邮箱限制除此之外还需要注意邮箱注入问题的发生。
邮件注入
邮件注入是针对PHP内置邮件功能的一种攻击类型。攻击者通过注入任何邮件头,字段如BCC,CC,主题等,利用系统邮件服务器发送垃圾邮件。这种攻击的主要原因是由于没有对用户的输入进行严格的过滤和审查,接收用户信息并发送电子邮件消息的应用程序。在PHP中使用email()函数进行邮箱发送。如果对用户的输入没有进行检查通常会造成邮件注入,下面是mail()函数的说明。
     bool mail (sting $to ,sting $subject ,string $message [,mixed $additional_headers [,string $additional_parametes]])
下面是一段邮件发送的示例

<?php
$email = $_POST [’email’];
mail(“someone@ptpress.com.cn”, “Subject:”报名邮件”,”有新用户报名请及时处理”,”From:$email”);
echo “邮件发送成功”;

此代码中允许对发件人,发件标题以及内容进行自定义,会将邮件统一发送到someone@ptpress.com.cn 邮箱。由于SMTP区分消息头部和消息主题的依据%0A%0A双行换行符决定的,消息头里的属性是以%0A区分的,因此用户如果自行将%0A%0A或%0A写道变量中,会直接控制消息体控制被发送对象及内容。如果用户在email参数中输入:

From:sender@ptpress.com.cn%0ACc:otherl@ptpress.com.cn%0ABcc:other2@ptpress.com.cn

在发送者字段email后注入Cc和Bcc参数,消息将被发送到other1@ptpress.com.cn和other2@ptpress.com.cn账户,但是这并不是研发人员本意。除此之外,恶意攻击者还可以修改邮件标题,如email内容输入:

From:sender@ptpress.com.cn%0ASubject:这是一封广告邮件

攻击者将假的主题Subject添加到原来的主题中,并且在某些情况下将覆盖原本的主题Subject。如果输入以下内容,假消息将被添加到原始消息中。

From:sender@ptpress.com.cn%0A%0A 这是一封新邮件

攻击者通过灵活运用%0A对邮件进行截断,从而诱导服务器给任何用户发送任意内容,给服务器和企业造成损失,所以在接收到用户的请求后要进行严格的过滤,防止用户恶意注入

PHPMailer漏洞

PHPMaler是一个用于发送电子邮件的 PHP函数包,堪称全球最流行的邮件发送类之一。全球范围内有很多用户直接用PHPMailer进行发送,且无须搭建复杂的Email服务。

(1) PHPMailer在5.2.18之前的版本存在一一个漏洞, 远程攻击者利用该漏洞,可在Web服务器中执行任意远程代码,攻击者主要在常见的Web表单中,如意见反馈表单、注册表单、邮件密码重置表单等,使用邮件发送的组件时利用此漏洞。

(2) PHPMailer在5.2.21及之前的版本中存在任意文件读取漏洞,攻击者利用该漏洞,可获取服务器中的任意文件内容。

网站地址:https://www.hackzl.cn;发布者:hack之路,转转请注明出处:https://www.hackzl.cn/index.php/2020/09/24/%e5%85%b3%e4%ba%8e%e9%82%ae%e4%bb%b6%e5%ae%89%e5%85%a8-hack%e4%b9%8b%e8%b7%af/

发表评论

邮箱地址不会被公开。 必填项已用*标注