QQ被盗引发的思考-DNS域名欺骗

​0x01事件起因

某日下午13:16分,我正躺在床上休息,昨天生病,今天精神才好了点,然而依旧是无精打采,睡也睡不着,便打开了两天没上的QQ,发现寂静了许久的同乡会QQ群里有同学发了一个群成员聚会通知的链接,如下:

53202-0qofim3k9awf.png

开始我以为是同乡会举办的活动,便没多大在意,但是7分钟之后:
15321-1qdhwimu1by.png

这立刻引起了我的警觉,于是便开始深入挖掘这背后的原因。

0x02调查与分析

首先说说DNS域名欺骗,即:DNS域名欺骗通俗地说就是攻击者将某网站的域名映射到攻击者自己的IP上,受害者看到的只是域名而看不到IP地址,从而攻击者可以构造钓鱼页面诱骗受害者登录,此时受害者无法判断钓鱼页面的真实性便进行登录用户名密码等敏感操作,导致信息泄露,从而为攻击者下一步攻击提供了基础。

这次案例其实不算域名欺骗,只是我最后将其拓展延伸出来,因为我在将其解析出来后看到的是IP地址,也就是说,攻击者仅仅是修改了页面内容就让受害者上钩,可见利用手法之简单,这里其实也利用了在手机QQ上打开网页时没有显示网址的缺点,如下图:
37553-t2nbx4lavmf.png

我打开了那个写着腾讯文档的网站,发现确实是腾讯的官方网址,但是里面的内容确是个二维码,如图:

61328-npa0r78hhr.png

然后我对其进行解析,发现其指向一个IP地址:
99432-j74i5gko0fd.png

接着我打开这个网址,发现:

89795-icz52dtqltc.png

原来如此,此时事情已经有眉目了,于是我去挖掘这个IP地址的信息,看看能不能挖掘到有用的东西,发现其架设在腾讯云上,如图:

19347-ka5l4h4j9nk.png

查询同IP网站,查询whois信息,都是腾讯云,无果,到这里只能收手

接着我打开真实的QQ端mail进行比对,发现多处不同,如图:

假:
48644-dl6k02bh04n.png

真:
75735-6m04t1b50a.png

假:
35067-koiqsz2h3zg.png

真:

33390-gcn8nvq6gk.png

1.左上角的网址图标,假的没有,真的有

2.登录状态,假的没有,真的有

3.检测安全的信息不同,假的直接显示在此网页上输入的登录信息可能会泄露,真的是部分内容不安全

4.假的在点击忘了密码时不会做任何操作,而真的在点击后会触发事件跳转到找回密码的网址

45557-gfocqkiq8z.png

可见攻击者还是做了一定的美化的,很用心,但难免会有纰漏,接着我向假网站中随便输入账户密码,如图:

59028-p6oqag5un5.png

点击登录之后页面闪了一下,最后跳转到真正的网站:

73524-xzfk2xbidca.png

该网站用nginx容器作为服务器框架,暗地里将受害者的用户名密码提交到2018.php

54080-ux6j5f1gttd.png

以下代码即为验证,可以看到用户名密码被以明文的形式传入2018.php

POST /2018.phpHTTP/1.1
Host: 1*******9
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language:zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip,deflate
Content-Type:application/x-www-form-urlencoded
Content-Length: 35
Connection: close
Referer:http://1********9/
Cookie: PHPSESSID=0000000000000000000000
Upgrade-Insecure-Requests:1
 
user=1******&pass=123456789&submit=

基于此,我对该网站进行举报
95022-xgrtx1co08.png

0x03实验复现攻击流程

接着,我自己做了个小实验复现上述攻击流程并加以完善,同时将域名劫持为m.mail.qq.com并搭配ARP毒化进行中间人攻击

所使用的工具:

kali Linux,windowxp,ettercap,setoolkit

攻击者IP:[10.10.10.128]
31764-hivgzne99nl.png

受害者IP:[10.10.10.129]
37532-ic7rlcgrw2.png

进行主机扫描,发现受害者IP:[10.10.10.129]
26392-f6hniqf2phv.png

指定攻击目标开始ARP欺骗

18299-vqnfnonu62q.png

回到受害者主机,发现已经欺骗成功
34523-7rt9s1e0gw.png

开始DNS域名欺骗,未欺骗前,先检测是否可达到真实网址,如下显示网址可达,注意这里的IP地址为[59.37.96.184],欺骗后会发生变化

15957-qo2ka3fh16e.png

进行域名欺骗

84029-0g26t6ml12oh.png

劫持成功,m.mail.qq.com已经被劫持从而映射到攻击者的IP,此时ping的该域名,IP地址却是[10.10.10.128]
50739-apk1g85gpbi.png

开始使用setoolkit进行社会工程学攻击,伪造网页,利用各种方法诱骗受害者进行登录,尽你所能,上面的案例就是使用二维码的方式

依次选择

1) Social-EngineeringAttacks//社会工程学攻击

2) Website AttackVectors//Web站点攻击载荷

3) Credential HarvesterAttack Method//凭证收割机攻击方式

4) Site Cloner//站点克隆

接着输入IP地址和想要克隆的网址即可

15534-5wt3buzr3i.png

此时受害者打开该网站进行登录,由于域名m.mail.qq.com已经被劫持到10.10.10.128,因此该页面为伪造的页面。

06380-nsmhuudgpj.png

攻击者这边已经嗅探到受害者登录

48464-rzo6uoojn3d.png

由于时间有限,这里我没有构造截取密码的代码,其实只是一个简单的php提交表单,将受害者输入的账户密码截取下来保存至指定位置,类似部分表单代码如下:

//html代码
<html>
<body>
<form method="post" action="2018.php" target="_blank">
<input type="text" placeholder="请输入用户名" name="username"/>
<br />
<input type="password" placeholder="请输入登录密码" name="password"/>
<br />
<input type="submit" name="submit" value="登录"/>
<input type="reset" name="reset" value="撤销"/>
</form>
</body>
</html>
//php代码
<?php
$username=$_REQUEST[‘username’];//接收帐号
$password=$_REQUEST[‘password’];//接收密码
......

很明显的,受害者的凭证已经被收集,如果登录没有进行限制则QQ可被任意登录并执行各种恶意操作:
92096-1rgszma91vx.png

防御方法:

1.非安全环境下勿点击来历不明的链接

2.QQ账户,以及涉及到资金财产的账户应该加手机验证码验证登录

3.学习网络安全知识,多看网络安全书籍,网络时代,信息泄露泛滥成灾,这其中“人”是主要因素,因此,提升安全意识迫在眉睫。

4.服务器提供方应当仔细审核上线的网站是否存在欺诈之类的违法行为并及时予以封停。

0x04最终结果

第二天我就收到了Tencent方面的邮件,告知已经对其进行拦截并同步到合作厂商
65639-7mrqdszd5m6.png

0x05写在最后

安全学习之路对我来说依旧很长很长,身边也总有大佬会对我说:“安全路很长,贵在坚持!

原创文章,作者:运营,如若转载,请注明出处:http://www.csxxaq.com/bug/25.html
一次内网漫游
« 上一篇 05-04
使用ESP8266进行钓鱼公鸡
下一篇 » 05-04

相关推荐

红队防猝死手册

文章来源:https://github.com/zhutougg/RedteamStandard一切为了不丢分工作环境工作时全部操作均在虚拟机中完成虚拟机...

Android渗透工具集合

Android安全测试更多地被安全行业用来测试Android应用程序中的漏洞。下面将列举全面的Android渗透测试工具和资源列表,其涵盖了在Andro...

基于社工的钓鱼研究

声明由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。雷神众测拥有对此文章的...