邮件钓鱼思考

ddddddd9  764天前

7.png

在经受过痛苦并努力保护身边之人不再遭受同样的经历。

一名剑客,真正的核心在于剑客本身!

导读

作者:dn9ie@白帽汇零妖攻防实验室


社会工程学攻击一直是非常令人头疼的攻击方式,经常看到一封邮件沦陷掉整个办公网的情况。

本文主要描述邮件钓鱼中攻击和防御的一些思考,如果有任何歧义全部是本人个人观点,如果有任何错误和遗漏之处,在此抱歉。我只是一个普通的技术员。

邮件方式的思考

为什么工作要用邮件呢?

其他的工作方式不可以吗?

看一下其他的社交软件 例如 微信 、企业微信、钉钉、QQ、飞书等等。 这些交流起来也不是不可以,但是和邮件相比,我认为最大的不同在于邮件只需要知道对方的邮件账号便可以给对方发送‘信息内容’,我们生活中经常使用的其他用来交流的IM工具通常情况下是不行的。

大家最熟悉的便是添加好友需要发送验证消息。我理解这是一个身份验证的请求/步骤。

我的理解是在某个相同团队/团体中共事的人们需要一个共同的沟通方式,默认加入了这个团队的人已经有了身份验证的这个账号,同时这个账号也是我们这个团队集体对外的每个个体沟通的一个展示,我使用这个邮件即我代表了我个人和我背后的团队。

工作需要一个单独的沟通方式,在某个相同团队中其他个体的集体通讯录。

在商务沟通中添加身份验证我并不确认也不了解是否需要增加身份验证这个环节的必要,但是在没有了这个环节后我们可以实现在只知道对方邮件账号的情况下发送给对方我们定制的构造的“信息内容”。

即我认为的邮件攻击的行为呈现形式。

邮件攻击方式

在学习过程中对我影响最深的一本社工类书籍中曾经描述过交流模型的概念,在此我只能表达出我的浅显理解:

信息发送者-----信息内容----信息接收方

在邮件攻击中我们整体分类三部分

信息发送者: 某邮件账号、攻击者

信息内容:如图所示 例如:关于xxxx主题的通知

信息接收方:邮件的账号,邮件账号的实际使用人员

上面的描述看,我们需要完成这一个攻击过程和攻击行为达到我们的攻击目的,我个人认为最终目标的实质是“获取目标的信任”。

利用身份伪装----诱导/欺骗技巧(设计的剧本)---获取目标的信任

常用场景下,在整个攻击过程/无论是否是社工或者常规的打点渗透中,可以大致四步

信息收集---木马制作----实际攻击/木马投递----权限维持

只是我们在实际攻击/木马投递过程中最大的区别,我们不是使用漏洞和密码攻击,我们来利用OSI第八层(人)这一环节中进行攻击和木马投递。

我们会进行信息收集,这是我认为非常有趣且同样最重要的一点,非常重要的一点,从人和互联网渠道搜集的不再是系统指纹和资产,而是和目标人员相关的信息,我的理解是和这个人相关的一切事务,并不是单独的和工作相关的事务,在此并不展开详细描述。

流程如下:

  1. 信息收集(人);

  2. 根据获取到的信息设计(交流模型)攻击剧本,在本文当中说的是邮件这一种形式,就像漏洞攻击人员在发现漏洞和编写exp的过程;

  3. 在其中我们利用获取到的信息伪造一个身份,使目标不怀疑我们的身份,获取对方的信任;

  4. 在精心设计的文案中利用诱导的技巧,使目标执行我们想让对方执行的操作/动作。最终达成我们的目的。

最重要的是获取信任,当然如果木马的形式一定程度上会影响文案的设计,我们想让对方执行的操作并不一定是点击附件。

海量发送没有经过仔细设计的邮件,可能有人会进行点击,但那就像你拿着一个漏洞利用到处去打,不管是不是符合的组件,抱着侥幸心理,会弹回来一个shell吧。

1.png

邮件文本的拆分,由上至下,

1) 邮件的主题

2) 发送方邮件账号

3) 接收方邮件账号

4) 发送的时间

5) 正文文本

6) 邮件签名

7) 邮件的附件

首先看一下发送方的邮件账户,这一个基本上就决定了攻击者伪造的身份。

内部人员属于同一个这个相同团体的自然信任会更高;

如果了解目标在某时间段做了某事,或者近期执行了某操作,我们可以伪造其他身份;

必须要对伪造的身份有足够的了解,攻击的目标和收集的信息决定了我们伪造的身份,我们伪造的身份的成功决定了是否可以攻击成功。

如果能够知道对方的工作时间和休息时间我们的成功率会再次提升,在非工作日对一个工作邮箱的使用者发送工作邮件显然会导致我们出现破绽。

在邮件中会呈现的特征,在某些场景下会有

1.时间的紧迫感;

2.动作的必要性;

在邮件中我们必须要了解对方的邮件书写格式

上述中的(1)邮件主题、(5)正文文本、(6)邮件的签名、(7)邮件的附件

这些基本上在大公司有相对统一的格式,如果攻击者并不知道,那么你(信息接收方/受害者)看邮件就会觉得很奇怪。

就好比一个团队人数并不多,邮件沟通中可能并没有过于正式的称呼、主题和签名格式

关于邮件的附件,如果我们知道对方团队中有规定所有的docx附件全部直接添加,并不以压缩包形式传递,那这就是我们的另一个破绽。

2.png

每一个细节都决定了我们最终成功的机率!

邮件攻击防范技巧

防范技巧的提出是基于邮件攻击这一个单点检测的一些个人的想法。

一种安全防御策略的制订和实施,需要根据每个公司和环境进行考虑,需要的是一个可以有效防御此类攻击,同时不对业务和用户使用者造成过大负担的策略。或者我们可以提升有效检测检出的效率。

邮件蜜罐的概念

我们是否可以设置多个虚拟的并不使用的邮件账号,并对外放出去。攻击者在发送邮件攻击的时候很少会单独的一对一进行,除非攻击者确信自己收集到了足够的目标个体的信息。

基于这种思路我们可以在其他不同的部门架构下设置多个邮箱账号,并“不小心的”放出去,实际上我们内部并不会任何人对这些账号发送邮件,外部的客户也不会,这里确实需要我们一定的运营,我仅提出自己的设想。

当这些虚拟的邮箱收到账号后,程序遍历整个公司内部的邮件是否有其他的账号也受到了相同发件人的邮件,相同主题的邮件,相同附件的邮件。并进行标记为可疑。提示邮件收件人。同时我们的安全人员也需要额外关注这些警示邮件。

如图:

3.png

内部邮件签名

作为邮件客户端我们是否可以设计为对外部域发送或者接收邮件时,我们拥有单独的一套邮件正文中的签名,在内部沟通通讯时拥有另外一套邮件正文签名,同时我们在制度中规定员工使用邮件的规范。这样增加了攻击者不知道的一个secret的概念,我们多了一份识别到攻击者的破绽。

4.png

文件类型标记

大多数的非计算机专业和职能部门人员并不了解和熟悉使用计算机,用的最多的就是文档例如:”docx、doc、xlsx、pptx……”等等。如果邮件中提出了这是一份文档,但其实是“docx.exe”这种类型的那实属是不正常的。我想如果我们做不了计算机运行程序的白名单,我们在终端上用这样一种小技巧来对邮件使用人员进行提示,让对方把这类可疑邮件上报安全部门,是否也可以提升邮件安全的检出。

可以看如图,其中图标比较怪异的是一个exe程序,但是很多职能部门同事并不会更改win默认的设置,隐藏已知的文件扩展名,难免会不小心看到文件类型的区别,我们可以进行小提示。

9.png

攻击者行为呈现

最后,即便是安全公司,每年的钓鱼演练中也都会有人上线,很危险的部门。是否我们发送的告警没有引起人们的注意,他们并不了解我们口中的“上线”“种马”和“后门”的概念。

攻击者:“我们可以通过这种手段控制你的计算机,监视着你在计算机上的一举一动,甚至发现你以为你已经删除的数据和信息!”

监控计算机

5.png

查看计算机文件

6.png

结尾

安全工程师进行攻击行为和研究是为了不让用户和身边的人遭受我们发现的攻击。安全需要大家的参与,我们不想让这种事情发生,那真的会非常痛苦。

最新评论

昵称
邮箱
提交评论