换个角度看看,为什么钓鱼攻击总能成功?

安全 应用安全
实际上,如果想要保护用户不受网路钓鱼攻击的侵害,仅仅依靠提高用户安全意识还是远远不够的,这个过程中厂商也要负起一定的责任。

当我第一次收到银行发来的“安全”邮件时,我第一反应就是这里是否有诈?因为在我看来,它实在是太像钓鱼邮件了。这封躺在收件箱里的邮件来源于我银行经理的个人邮箱地址,而非Chase银行的官方邮箱。邮件中不仅附带有一个HTML页面,而且还有文字告诉我“在浏览器中打开这个页面以了解如何进行下一步操作”,这一切瞬间让我提高了警惕。

首先,本身电子邮件这个东西就是不安全的,更何况是我的银行还发送了一封带有附件的“安全”邮件给我。这看起来就像是一次教科书般的钓鱼攻击,所以我赶紧拿起电话直接打给了我的银行经理。

“不是的,这是合法邮件。我需要你将它打印出来,然后签署一些文件。”这就是银行经理给我的回答。

但我说到:“首先,邮件发送人的地址看起来就非常可疑,而且这种邮件不仅要让我点击外部链接并打开附件,而且还要我在Web表单中填写我的个人信息,这谁会信啊?”

银行经理说到:“我完全理解,这确实会让人怀疑。但这封邮件没有任何问题,我的确发过这封邮件给你,如果需要的话我还可以再发一次。”

于是乎,他果然又发了一封给我。这封重发的邮件看起来与之前那封完全一样,但这一次我正在与我的银行经理通话,所以我按照要求打开了附件。邮件中有一个“点击读取信息”的按钮,点击之后将我重定向到了Chase银行的安全邮件门户网站。但是整个过程让我感到非常的奇葩,我也将我担心的地方告诉了我的银行经理、他的上司、以及Chase的客户支持部门。

值得一提的是,我们是不可能完完全全地对客户的行为进行安全培训的,而银行所采用的交互方式与钓鱼攻击几乎没有区别,这就非常危险了。

[[192685]]

攻击分析

近期,我收到了一封真正的钓鱼邮件。这封邮件来自chase.online@chasee.com,它很明显是封伪造的邮件,但如果不仔细的话还是看不出什么端倪的。这封邮件声称我的银行账号近期出现了很多错误操作,并且跟之前那封真实的邮件一样,它也让我在浏览器中打开附件HTML文件并按提示进行操作。

但很明显我不会按它说的做!于是,我把HTML文件下载了下来,然后把它拖到了代码审查窗口中。我发现,除了正常的HTML代码之外,文件中还包含一段脚本代码:

  1. window.location="data:text/html;base64,PCFET0NUWVBFIEhUTUwg... 

这个页面会在地址栏中显示一大堆Base64编码的数据,代码本身包含有Chase银行官网的脚本、图片以及指向合法页面的链接,整个页面看起来和正常的Chase银行登录页面没什么区别。但是,代码中还包含有其他的脚本代码(经过混淆),这些代码会在登录页面中添加一个自定义的表单:

  1. document.write(unescape('%3C%66%6F%72... 

在对代码进行了反混淆之后,我发现所有的代码都与Chase银行的真实登录页面一致,只不过表单action属性指向的是攻击者所控制的服务器。

  1. <form action="http://191..."class="button" method="post" name="submit"id="submit"> 

如果不知情的用户真的在浏览器中打开了这个页面,那么他们将会看到一个带有Chase商标的页面让他们确认以下信息:

  • 账号登录信息
  • 联系信息
  • 银行卡信息
  • 社保号和驾驶证信息等等

上述所有的这些信息都不会提交给Chase,而是提交给了攻击者自己的服务器。这台由攻击者控制的服务器在成功获取到了这些数据之后,会将用户重定向到Chase的在线登录页面,所以这会让用户完全无法察觉到异常。我认为,之所以用户会这样做,完全是因为Chase平时对用户的“训练”所导致的(通过邮件附件要求用户提供身份验证信息)。

如何保护自己

除非Chase银行不再通过这种带有附件HTML的邮件来要求用户登录并填写自己的信息,否则广大Chase银行的客户还是免不了遭受钓鱼攻击。但是,我们仍然有很多方法可以避免自己落入这种网络钓鱼陷阱之中。

[[192686]]

首先,千万不要直接打开邮件中的附件网页,除非你能够百分之百确定这封邮件没有任何问题。其次,永远不要轻易在任何网页中填写自己的个人信息。第三,如果邮件要求你提供个人信息,而你也不得不这样做的话,请直接访问在线服务的官方网站去填写,千万不要图方便直接点击邮件中的地址。这些方法同样适用于电话钓鱼。永远不要轻易在电话中给出自己的个人信息,除非那个电话是你打过去的。

最后,请你不要嫌麻烦,一定要将所有不正常的情况上报给自己的服务商。当你遇到了勒索邮件或有人尝试通过电话来窃取你的信息时,请一定要即使报告。

总结

实际上,如果想要保护用户不受网路钓鱼攻击的侵害,仅仅依靠提高用户安全意识还是远远不够的,这个过程中厂商也要负起一定的责任。所谓心中无鬼,天下无鬼。很多厂商知道这封邮件是他们自己发的,就不会太在意去证明邮件的安全性与合法性,但对于用户来说,当他们习惯了这样的交互方式时,也就给了钓鱼攻击者可乘之机。

责任编辑:赵宁宁 来源: 51CTO专栏
相关推荐

2017-11-20 16:17:50

智慧城市

2014-01-06 16:39:43

2022-07-29 11:06:47

架构开发

2019-07-18 00:04:31

物联网人工智能IOT

2021-06-09 09:14:00

物联网云计算IOT

2020-05-12 10:20:39

K8s kubernetes中间件

2014-09-17 14:54:06

2020-12-02 09:47:07

DNSIP地址广告弹窗

2022-06-06 18:25:21

数据泄露互联网

2019-10-23 19:42:52

5G4GVR

2022-07-29 08:58:44

多线程并发

2014-03-12 17:40:07

GlusterFS分布式文件系统

2020-04-01 15:04:54

代码数学符号程序

2016-12-16 12:54:44

数据挖掘大数据

2016-12-13 19:47:31

大数据

2021-07-09 06:00:45

网络钓鱼培训数据泄露

2019-01-02 08:04:29

GAN损失函数神经网络

2019-09-26 09:00:31

Java编程语言

2010-05-16 08:09:35

马化腾乔布斯

2022-04-13 09:58:46

供应链区块链
点赞
收藏

51CTO技术栈公众号