freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

邮件安全(一)
2021-12-15 23:08:45
所属地 上海

简单记录下邮件安全学习过程

现代因特网电子邮件系统组成情况如图所示 大致分为3个主要部分

用户代理   (user agent )

邮件服务器(mail server)

简单邮件服务协议(Simple Mail Transfer Protocol,  SMTP)

图片.png

一封邮件被发送的过程如下:

发送方通过用户代理将要邮件传送至发送的邮件服务器中,随后发送方邮件服务器利用SMTP协议将该邮件发送至接收方邮件服务器中,当邮件未能成功投出时,邮件进入发送方邮件服务器的报文队列中,每隔30min尝试再次投递一次。

邮件服务器存在一个邮箱,用于维护和管理不同用户的邮件,通过用户名与密码来进行鉴权。

应用层协议 SMTP,利用TCP进行通信,其为Server/Client的架构,并且同时位于一台邮件服务器上 。当其向另一台邮件服务器投递邮件时,为Server端。当接收邮件时,作为Client端。与HTTP协议相比,它更像一个“推”协议,而HTTP协议为”拉“协议。

通信过程演示

演示环境使用的是window server2012中自带的smtp服务器
图片.png

简单配置完成后

首先使用telnet 命令连接发送方邮件服务器  命令如下

telnet 192.168.142.128 25

helo test//向邮件服务器打招呼 同时让其进行自我介绍 过程类似于TCP的三次握手
mail from:hr@test.com//设置邮件的发送人
rcpt to:马赛克@126.com//设置邮件的接收人
data//输入data表示 后续部分为邮件正文
subject:test//设置邮件主题
from://设置发送人昵称
to://设置接收人昵称
cc:test1@126.com//设置该邮件的抄送人

123//编写邮件正文
.//用<crlf>.<crlf>表示邮件编写完成

提示Queued mail for delivery表示邮件进入队列中

首先使用EHLO 查看smtp服务器所支持的命令
图片.png
图片.png
之后可以收到如下邮件
图片.png

同样可以通过添加邮件主题 修改特定的发件人  修改特定的邮件内容来达到钓鱼的目的
图片.png

漏洞爆发点

1、SMTP注入

部分应用在通过代码操作SMTP服务器时 可能由于过滤不严 而导致SMTP注入漏洞的产生

以JAVA为例  有研究人员发现当使用特定版本的javamail时  攻击者通过手工输入<crlf>换行符 控制subject、from、to等邮件字段 控制邮件内容,造成邮件劫持等

话不多说 直接上payload讲解一下

RCPT TO:">[CRLF]rcpt to:[马赛克]@126.com[CRLF]DATA[CRLF](邮件内容)[CRLF].[CRLF]QUIT[CRLF]

可以看到 在输入邮件接收人时,先是使用   ">  对内容进行闭合 之后插入[crlf]换行符 手动插入 rcpt to: 至此 邮件的后半部分内容被完全控制

同样通过日志 来观测下整个过程
图片.png

在第三行设置收件人处  我们可以看到 插入的  "> [CRLF] 生效,并成功将收件人改为了自己的邮箱

图片.png
利用该特性 可以在写入内容data处插入cc  将邮件抄送至攻击者的邮箱

漏洞复现(测试发现1.5版本javaMail存在smtp注入):

pom文件如下

<dependency>
  <groupId>com.sun.mail</groupId>
  <artifactId>javax.mail</artifactId>
  <version>1.5.0</version>
</dependency>

利用JavaMail实现用户输入 发件人、邮件主题和邮件内容后 发送邮件功能
图片.png

核心功能代码示例如下

图片.png
createMinmeMessage方法如下
图片.png

正常使用 成功发送邮件至目标邮箱

图片.png
在邮件subject处插入 payload:  %0d%0acc:[攻击者邮箱]

可以看到邮件头中出现了抄送人字段(但实验中并未将邮件成功抄送 有了解的师傅希望能指教一下)

图片.png
2、发件人伪造

在红蓝对抗中 若目标公司未配置spf等安全防护措施 便可以进行发件人伪造

可以提高钓鱼邮件的迷惑性 增加成功率 如下图

(ps:华为有时能发有时发不出,nslookup也看过其spf策略使用的是硬失败   T^T)
图片.png

对于发件人伪造的情况 目前主流的安全措施有

  • SPF
  • DMARC
  • DKMI

这些内容放下一篇讲
下一篇
图片.png

参考链接:

http://www.renfei.org/blog/introduction-to-spf.html

https://www.freebuf.com/articles/database/188313.html

https://www.freebuf.com/sectool/184555.html

# 漏洞分析 # 企业安全 # 邮件钓鱼 # 邮件伪造
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者