首页 » 网站建设 » php捏造邮件技巧_红蓝对抗之邮件假造

php捏造邮件技巧_红蓝对抗之邮件假造

访客 2024-12-11 0

扫一扫用手机浏览

文章目录 [+]

2.POP3(Post Office Protocol 3)

由于它的版本3被广泛利用,以是被称为POP3。
紧张用来从邮件做事器上取回邮件到客户端,拥有认证机制

其事情流程:

php捏造邮件技巧_红蓝对抗之邮件假造

连接邮件做事器的110端口(如果是SSL或TLS连接的话,则是995端口)取回用户邮件删除做事器上的邮件同做事器断开连接

虽然POP客户端可以通过配置使得在做事器上连续存储邮件,但常日是删除做事器上的邮件,这与在IMAP上常日是不删除是不一样的

php捏造邮件技巧_红蓝对抗之邮件假造
(图片来自网络侵删)
3.IMAP(Internet Message Access Protocol)

它用来在一个邮件做事器上存储邮件,并且许可用户查看和操作(删除、回答等)这些邮件

其事情流程:

连接邮件做事器的143端口(SSL或TLS连接则是993端口)取回用户邮件保持这个连接直到邮件客户端被关闭,在连接的过程中会按照须要下载信息4.work together

可以参考下面的图片

首先发送方发送的邮件会被发送到SMTP做事器(比如你是163的邮箱账号,会被发送到smtp.163.com所在的做事器,或者是自己搭建的SMTP做事器),然后再被转发到吸收方所在的SMTP做事器,这都是通过SMTP协议实现的,之后吸收方再通过POP3或IMAP协议取回自己的邮件或直接查看做事器上的邮件。
当然,这是简化后的,只涉及这三个协议,真正的过程要比这个繁芜。

可以看出SMTP是必须的,由于它与其他两个协议的紧张功能是不同的,至于POP3和IMAP则是可以二选一的

0x02 邮件假造防护协议简介1.SPF

SPF(Sender Policy Framework),它因此IP地址认证电子邮件发件人身份的技能。
邮件吸收方会检讨我们的Mail From下的域名,并去检讨该域名的spf记录,如果spf记录存在,就会把邮件发送者的ip与spf记录进行匹配,如果匹配成功就认为是精确的邮件,否则则认为该邮件是假造的,将邮件按照规则进行处理

2.DKIM

DKIM(DomainKeys Identified Mail),该协议紧张浸染是校验邮件标头署名信息,防止邮件内容被修改。
邮件的发送者先将DKIM的公钥设置到dns上去,然后将邮件的署名插入邮件头中一起发送出去,邮件的吸收者接管到该邮件后,根据DKIM署名上标注的域名查询其dns获取公钥,验证邮件署名的有效性

v=1; a=rsa-sha256; c=relaxed/simple; d=test.com; h= subject:subject:from:from:content-transfer-encoding:content-type :content-type; s=dkim; t=1612344789; x=1614936790; bh=whCdi8wMe3 1tExV/kY1u1K6C1IjBREx7llkl8PePKUU=; b=38b67jyXwMi00rGK78y9QVL39g 0RnITLz7ysuwbgv/3yjMM8eYA+EDRRFGJohssAfD4fVi4VrhDgP+Bmnze9wxqqqH 0ClwV7fpvMMlHT4cVHMP0eCzvVtfswu3RBhoK3vS3z7iFQbG/bLa650xRy1PNP1G F+DR5f7E4AErAw1Mg=

a:署名算法c:用于对标头和正文的算法规范化,simple&relaxedd:是这一个域的署名。
在DMARC检讨署名中的域是否和发送者的域相匹配中用到q:定义用于检索DKIM公钥的查询方法。
它不必存在,默认为“ dns / txt”s:在DNS中探求RSA密钥的参数h:该当包含在署名中的邮件头字段列表bh:邮件正文的hashb:是署名本身的核心,包括’h’给出的字段,以及DKIM-Signature头本身(视b=为空)

3.DMARC

DMARC(Domain-based Message Authentication, Reporting & Conformance)是txt记录中的一种,是一种基于现有的SPF和DKIM协议的可扩展电子邮件认证协议,其核心思想是邮件的发送方通过特定办法(DNS)公开表明自己会用到的发件做事器(SPF)、并对发出的邮件内容进行署名(DKIM),而邮件的吸收方则检讨收到的邮件是否来自发送方授权过的做事器并核对署名是否有效。
对付未通过前述检讨的邮件,吸收方则按照发送方指定的策略进行处理,如直接投入垃圾箱或拒收。
从而有效识别并拦截敲诈邮件和钓鱼邮件,保障用户个人信息安全

0x03 假造的方法总结1.第三方STMP的做事器认证用户名与Mail From字段可以不同导致的攻击

这样攻击者可以假装这个域下的所有其他用户,假造该域下用户可以直接忽略所有验证协议

2.Mail From头和From头不一样

邮箱一样平常以显示给用户的是Data内的From头,有些邮箱通过直接设置From的办法来欺骗受害者,但是目前大部分邮箱如果Mail From头和From不一样会显示转发如图所示

3.空Mail From头

有些STMP做事器碰着空Mail From头可以通过,理论上按照SPF协议,如果做事器碰着空Mail From须要去验证HELO字段,但是由于对HELO字段的滥用,以是就很多做事器不根据HELO字段完成SPF验证,以是碰到空Mail From头的判断结果就变成none

4.多个From头

多个From头正常的处理办法是会被退信的,但是有一部分邮箱是只取部分显示,比如只显示第一个或只显示末了一个

5.From头上写多个Email地址

由于一个邮件可能被多个人编辑,以是可以在From上设置多个地址,然后设置一个Sender来确定真正的发件人,作为攻击者可以设置From头为<admin@qq.com>,<test@attack.com>或者增加一些基于基本规则的变革如[admin@qq.com],<test@attack.com>

6.解析不一致产生的攻击

1.Mail From和From字段都是支持富文本的。
比如<@a.com, @b.com:admin@c.com>依然是合法的地址,个中@a.com和@b.com是路由部分,admin@c.com是真正的发送者的地址2.From字段是可以设置为地址列表的,且列表种的元素可以为空,如<a@a.com>, ,<b@b.com>3.圆括号作为注释可以插入在地址中例子:<admin(username)@a.com(domain)>4.可以用截断字符或者故意义的符号考试测验截断地址

7.字段编码产生的攻击

邮件本体的内容是可以被编码的,语法如下=?charset?encoding?encoded-text?=charset字段为字符集,如gbk,utf-8encoding是编码办法,b代表base64,q代表Quoted-printable编码encoded-text便是被编码的主体了攻击者可以设置From字段类似From: =?utf-8?b?QWxpY2VAYS5jb20=?=,大多数电子邮件做事在验证DMARC协议不会去解码,以是在DMARC验证中就会得到结果None,有些Mua会把编码解码后显示出来,就造成了攻击这种技能可以和截断字符串来联系在一起,如:

<b64(admin@qq.com)b64(\uffff)@attack.com>就有可能DMARC验证的域是attack.com但是显示的是admin@qq.com

8.利用Sender头进行假造

Sender字段定义为代发用户,不同的邮箱对Sender头的处理并不一样,有些会把Sender头作为代发,有些会直接显示出来,有时可以利用此来绕过代发显示

9.利用子域名未设置SPF

由于未设置SPF的话,SPF检测结果是none,是放行的,以是虽然qq.com上设置了spf,但是mail.qq.com上没有设置spf,我们就可以假造mail.qq.com域下的任何用户

10.利用未作验证的邮件转发做事

如果该做事器可以在不做验证的情形下任意把邮件转发到任意账户,如果该邮件转发做事器比较有名被大家书赖,吸收者的MTA就会接管这份邮件,且我们的目标邮箱的域名和转发做事器邮箱的域名一样我们就可以用这个方法来绕过SPF和DMARC,但在实际操作中还是会显示代发

11.利用转发做事器来骗一个合法的DKIM署名

如果我们发送的邮件没有DKIM署名,转发做事器会给我们的邮件署名以是我们先把邮件发到转发做事器转发到另一个我们可以掌握的邮箱,这样我们就收到了署名,然后我们再把这个署名附在邮件上发给被害者,我们的邮件就能拥有一个合法的DKIM署名

12.利用IDN域名

便是利用IDN域名,找出域名看起来比较像但实际上字母不一样的域名[punycode在线转换工具](http://tools.jb51.net/punycode/index.php)

比如ԛԛ.com实际上是xn—y7aa.com

13.利用不可见字符,截断字符影响渲染结果

一些不可见字符(U+0000-U+001F,U+FF00-U+FFFF),语义字符(@,:,;,”)可能会导致渲染结果涌现偏差笔墨中的例子一些邮箱会把admin@gm@ail.com渲染成admin@gmail.com

14.掌握字符串的显示顺序来影响渲染结果

一些字符是掌握字符串的显示顺序个中U+202E这个字符能让字符从右到作显示,而U+202D能让字符从左到右显示\u202emoc.qq@\u202dadmin会被显示成admin@qq.com

0x04 邮件假造实战

假造的目的是为了把我们的邮件送进收件箱,并且视觉上与一封真正的邮件没有差异。
我在测试的时候紧张针对的是海内的邮箱,利用自己搭建的邮件做事器,创造在没有设置dkim,乃至dkim验证结果为fail的情形下,大部分邮箱仍旧没有把我的邮件送入垃圾箱,由于dkim是增加邮件的可信程度,既然邮件能被送进收件箱也就没有必要费尽心机去绕过dkim验证了。
在实际的假造过程中我们面对的难题紧张是如何绕过SPF,和邮箱对代发邮件的提示。
在实战过程中我可以假造的邮箱分为三类

没有显示代发的邮箱没有显示代发的邮箱假造起来非常大略,我们只须要把From设置成我们须要假造的邮箱即可支持IDN域名,或者支持Unicode字符串显示的邮箱这种邮箱我们可以通过利用形似字,掌握显示顺序,截断字符等让受害者在视觉上无法辨别真伪利用邮件接管做事器对邮件头的解析缺点来进行假造这种情形就很多了,个中大部分都能用之前列举的方法2~8来办理,但是每个公司的邮件接管做事器的配置,后端处理方案都有所不同以是会有一些针对性的假造方法,须要一点点的去试验比如针对腾讯邮箱的假造办法,个中一种是利用字段编码编码很多unicode字符,会使腾讯邮箱无法找到真实的邮件地址,但这个方法在别的邮箱并不适用当我们碰着的邮箱不属于以上三类无法直接假造的时候,最方便的办法还是利用未设置的spf子域名,虽然欺骗的效果不如直接假造的,但也有较强的欺骗力度

我们针对海内邮箱厂商进行测试,并写成利用插件集成到了内部钓鱼平台上。
终极的邮件假造效果:

QQ邮箱(两种绕过方法)

163邮箱

126邮箱

TOM邮箱

搜狐邮箱

88完美邮箱

新浪邮箱

0x05 参考文章《Weak Links in Authentication Chains: A Large-scale Analysis of Email Sender Spoofing Attacks》[邮件假造组合拳](https://www.anquanke.com/post/id/218889#h2-0)[钓鱼邮件的投递和假造](https://xz.aliyun.com/t/6325/)
标签:

相关文章

apahce引入php技巧_apache若何设备php

1、配置apache,以调用“php措辞模块(引擎)”去实行该php代码。须要apache的主配置文件httpd.conf,其位置...

网站建设 2024-12-13 阅读0 评论0