您当前的位置:首页 > 计算机 > 安全防护

【KALI网络安全】DNS攻击(劫持和欺骗)与网络钓鱼的模拟和预防(1)

时间:04-16来源:作者:点击数:

1、DNS概述

关于DNS的定义,作用,分类以及工作原理,小编已在【Windows Server 2019】DNS服务器的配置与管理——理论】这篇文章中陈述过。

要预防DNS劫持,必须了解它的攻击原理和过程

声明

本博客不是在向大家展示这些攻击的方法,而是让大家尽可能的了解DNS攻击的手段以及如何采取必要的预防措施,来确保更安全地上网。

2、DSN劫持(DNS Hijacking)概述

2.1.什么是DNS劫持

DNS劫持全称为域名服务器劫持,又称DNS重定向(DNS redirection)。它是一种DNS攻击手段,用户主机的DNS查询被错误解析,攻击者将用户的访问重定义到恶意网站中,以此来获取一些重要私人信息。

攻击者实施攻击时,要么在用户电脑上安装恶意软件,要么接管路由器,要么拦截或侵入DNS通信系统。

2.2.DNS劫持攻击类型

DNS劫持有四种基本类型

  • 本地DNS劫持(Local DNS hijack)——攻击者通过在用户计算机上安装特洛伊木马,然后更改本地DNS设置,将用户重定向到恶意站点中。
  • 路由器DNS劫持(Router DNS hijack)——许多路由器具有默认密码或固件漏洞。攻击者可以通过这些漏洞接管路由器并修改覆盖原来的DNS设置,从而影响连接到该路由器的所有用户
  • 中间人DNS攻击(Man in the middle DNS attacks )——攻击者拦截用户与DNS服务器之间的通信,并提供指向恶意站点的IP地址。
  • 恶意DNS服务器(Rogue DNS Server )——攻击者入侵DNS服务器,更改DNS记录,使其将DNS请求重定向到恶意站点

2.3.DNS劫持的作用

(1)好的方面
  • ISP(互联网供应商)使用DNS重定向来接管用户的DNS请求,收集信息的同时在用户访问未知域时会返回广告。
  • 一些国家会使用DNS重定向进行网络信息审查,将用户重定向到政府授权的站点。
(2)坏的方面
  • 域诈骗(pharming)
    pharming攻击是将用户的流量重定向到模拟合法网站外观的伪造网站中,目的是为了窃取账户,密码和其他个人信息等。
  • 网络钓鱼(phishing)
    网络钓鱼是黑客常使用的一种技术,通过发送电子邮件/文本,语音消息或传真等来获取用户的个人信息,黑客在看似合法的电子邮件中添加了恶意链接或附件,诱惑用户去点击,从而获取信息访问权限。

3、DNS劫持——Pharming攻击的实现

案例 1 ——本地DNS劫持

3.1.拓扑说明

(1)正常情况下,用户访问facebook
在这里插入图片描述

正常情况下,用户使用浏览器打开脸书登录,然后DNS服务器通过A记录访问脸书的服务器,返回合法登录网页。

(2)hacker发动DNS劫持时,用户访问facebook
在这里插入图片描述

当攻击者进行DNS劫持时,修改了用户电脑上的DNS服务器IP地址,将用户的流量重定向到攻击者自己的服务器中,用户在不知情的情况下,在恶意网站中输入了账户和密码,数据流量被转发到攻击者电脑中,从而用户私人信息泄露。

3.2.实验环境

主机 系统 IP地址
攻击者 Kali-Linux 192.168.83.11
PC2 Windows 10 192.168.83.39

攻击者和普通用户在同一局域网中,两者的IP均是通过DHCP服务器获得。

3.3.具体步骤

3.3.1.前提

用户PC2中的浏览器中没有任何缓存(清空浏览器缓存)

普通用户的电脑上的DNS服务器IP地址在未被修改时,使用nslookup命令查看默认DNS服务器

(1)DNS未修改前
在这里插入图片描述

在局域网内,普通用户电脑已经被入侵者修改了DNS设置,设置的IP为入侵者的主机IP:192.168.83.11

(2)DNS被恶意修改后
在这里插入图片描述
3.3.2.劫持DNS
(1)劫持facebook.com域名

使用的工具是dnschef,该工具的使用方法具体请看《【KALI】DNS解析工具——Dnschef参数(中英对照)》这篇博文。打开kali终端,输入

┌──(kali㉿kali)-[~]
└─$ sudo dnschef --fakeip=192.168.83.11 --fakedomains=facebo0k.com,facebook.com --interface=0.0.0.0 
在这里插入图片描述
(2)检测DNS是否劫持成功
在这里插入图片描述

通过截图可以看到,DNS劫持成功。原来www.facebook.com的IP地址为31.13.82.36,现在却是192.168.83.11(入侵者IP),显然DNS劫持成功。

(3)伪造facebook登录网站

使用 setoolkit 工具对脸书登录网页进行克隆。在终端中输入:

┌──(kali㉿kali)-[~/Desktop]
└─$ sudo setoolkit

进入setoolkit菜单界面,在set>后输入1,即选择Social-Engineering Attacks。然后按回车

在这里插入图片描述

接着输入2,即选择Website Attack Vectors。然后按回车

在这里插入图片描述

进入站点攻击菜单后,输入3,即Credential Harvester Attack Method。然后按回车

在这里插入图片描述

最后输入2,即Site Cloner。按回车

在这里插入图片描述

选择IP地址,默认为193.168.83.11,默认选择即可,按回车。

在这里插入图片描述

在红框处输入要克隆的网站域名,这里是https://www.facebook.com,按回车

在这里插入图片描述

当终端中显示蓝色字幕时,说明克隆站点成功。

在这里插入图片描述
(4)验证伪造站点成功

使用setoolkit克隆的网站,会使用本地80号端口,因此只需要打开本地浏览器输入localhost或127.0.0.1或192.168.83.11,出现脸书登录站点说明克隆成功。

在这里插入图片描述

查看setoolkit命令终端,发现命令行中返回了一些参数,如下图所示

在这里插入图片描述
(5)在PC2中访问facebook网站

如果在PC2的浏览器中直接输入www.facebook.com,会显示连接失败。同时facebook会强制将http转成https,这样就无法访问facebook。因为这个原因,所以我们在使用dnschef命令时,设置了一个不存在的域名:facebo0k.com。

当PC2用户通过邮件收到伪造的facebook信件后,在不知情的情况下点击了www.facebo0k.com,浏览器会打开下图所示的网站。

在这里插入图片描述

网站内容和facebook登录界面完全一样,但是在URL栏我们可以看到火狐浏览器提示这是不安全连接(使用http协议)。而正常的facebook登录界面使用的是https协议。

在这里插入图片描述
(6)账户和密码等信息泄露

PC2用户在不知情的情况下,输入了账户和密码,那么攻击者会从setoolkit终端中获取到这些信息。

在伪站中输入邮箱:hack@gmail.com;密码:hack45。点击登录后,再查看kali上的setoolkit终端信息。

在这里插入图片描述

点击登录后系统自动跳到脸书的真实URL,这里由于邮箱和密码是编造的,所以无法登录。通过下图可以看到kali后台中可以获取在PC2中输入的邮箱和密码。至此,攻击者获取到了PC2用户的私人信息。

在这里插入图片描述
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门