当前位置:首页 > 学习笔记 > 正文内容

Kali Linux渗透-DNS域名劫持与钓鱼

廖万里2年前 (2022-09-12)学习笔记102832

前言

严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

本文目的

演示如何借助 Kali Linux 系统内置的一款基于ARP地址欺骗的网络嗅探工具Ettercap,对局域网内的 Win7 主机进行 DNS 域名劫持,从而使得受害主机访问新浪官网(或其他任意网站)的域名时跳转到 Kali 攻击机指定的恶意网页,实现网络钓鱼攻击。

环境说明

主机IP地址
Kali Linux192.168.195.131
Windows 7192.168.195.132
局域网网关192.168.195.2

两台虚拟机主机均安装在 VMware 中,使用 Nat 模式形成一个可互相连通的小局域网。

攻击原理

DNS服务

DNS是域名解析系统,其作用是使域名(www.baidu.com)映射到计算机能够识别的IP地址(202.108.22.5),以便进行进一步通信和传递内容。它能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

Kali Linux渗透-DNS域名劫持与钓鱼

DNS劫持

1、什么是域名劫持

DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。

2、DNS劫持的后果

大规模的DNS劫持,其结果往往是断网,因为大网站的访问量实在太大了,钓鱼网站的服务器可能会扛不住大流量的访问,瞬间就会瘫痪掉,网民看到的结果就是网页打不开。网上购物、网上支付等敏感站点有可能会被恶意指向钓鱼网站,使得个人账户密码存在泄露的风险。

3、本文域名劫持原理

此次攻击的原理基于局域网内的ARP欺骗,ARP攻击就是通过伪造 IP 地址和 Mac 地址实现 ARP 欺骗,能够在网络中产生大量的 ARP 通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机 ARP 缓存中的IP-MAC 条目,造成网络中断或中间人攻击。


本文的攻击本质就是使用Ettercap借助 ARP 欺骗攻击使得 Win 7 受害者主机误将攻击者主机 Kali 的 IP 当作网关 IP,然后 Kali 攻击机又将受害者访问的域名进一步指向了自己指定的 IP 地址,实现网络钓鱼攻击。


此处简单总结下 ARP 缓存表 和 Mac 表的区别:

比较项ARP 表Mac 表
存储设备三层设备,如路由器、PC主机二层设备,如交换机
记录内容IP 地址与 Mac 地址的对应关系Mac 地址与交换机接口的对应关系
主要作用路由器、主机确定目标主机的 Mac 地址交换机确定 IP 地址对应的物理主机的接口

攻击演示

钓鱼网页

1、此次我们要劫持的网站域名是新浪www.sina.com.cn,正常页面显示如下:

Kali Linux渗透-DNS域名劫持与钓鱼

2、打开 Kali 攻击机终端窗口,输入命令vim /etc/ettercap/etter.dns来编辑 ettercap 工具的 DNS 配置文件,增加一条新的A纪录,将 www.sina.com.cn 解析指向攻击者主机 IP 地址:

Kali Linux渗透-DNS域名劫持与钓鱼

3、执行命令service apache2 start 启动 Kali 虚拟机内置的 Apache 服务, 让靶机能够访问到被攻击机DNS劫持后的页面(此处不做修改,默认为 Apache 的默认主页/var/www/html/index.html),在 Kali 中访问后页面如下:

Kali Linux渗透-DNS域名劫持与钓鱼

域名劫持

1、在 Kali 终端输入命令ettercap -v查看 ettercap 的版本信息,然后执行命令ettercap -G打开 ettercap 的可视化界面:

Kali Linux渗透-DNS域名劫持与钓鱼

2、在 Sniff 菜单栏选择嗅探所有 unified sniffing,然后选择 eth0 网卡接口:

Kali Linux渗透-DNS域名劫持与钓鱼

3、接着先扫描内网存活的主机IP:

Kali Linux渗透-DNS域名劫持与钓鱼

4、扫描结果如下:

Kali Linux渗透-DNS域名劫持与钓鱼

5、将要攻击的 Win 7 主机设置为 target 1,网关设置为 target 2,如下图所示:

Kali Linux渗透-DNS域名劫持与钓鱼

6、最后选择插件,双击选择 dns_spoof,如下图所示:

Kali Linux渗透-DNS域名劫持与钓鱼

7、这个时候攻击机已经开始 DNS 劫持了,来看一下靶机的 DNS 解析状态:

Kali Linux渗透-DNS域名劫持与钓鱼

攻击机成功将靶机的域名访问请求重定向到自己指定的网页,攻击演示至此结束。

【备注】以上 ettercap 工具的配置过程,也可以直接在 Kali 终端使用以下一行命令来代替:ettercap -i eth0 -Tp -M arp:remote -P dns_spoof /192.168.195.132// /192.168.195.2//,具体的参数含义可以执行命令 ettercap -h 查看。

总结

此次演示仅仅使用 Apache 默认网页,现实中的攻击者可不仅如此。DNS攻击的可怕之处在于,被攻击的你访问的已经不是真正你要访问的网站了,而是攻击者精心设计的一个网页,让你无法察觉这是一个恶意网页。如果是钓鱼网站,在你毫不知情的情况下就把你的账号密码获取了。

DNS劫持的防范措施:

互联网公司准备两个以上的域名,一旦黑客进行DNS攻击,用户还可以访问另一个域名;

使用安全稳定可靠的DNS服务器,并且及时升级,更新补丁,加固服务器,使用杀毒软件安全防范;

在浏览器访问网关地址,在配置页面“网络参数-DHCP服务器“处绑定 DNS 服务器静态地址,这样攻击者便无法顺利劫持 DNS 服务。

DNS 服务器地址的绑定如下图所示:

Kali Linux渗透-DNS域名劫持与钓鱼

最后还是强调一下,本文演示的方法具有攻击性,请读者务必 不可以 以身试法……

本文链接:https://www.kkkliao.cn/?id=39 转载需授权!

分享到:

添加博主微信共同交流探讨信息差网赚项目: 19528888767 , 请猛戳这里→点我添加

版权声明:本文由廖万里的博客发布,如需转载请注明出处。

“Kali Linux渗透-DNS域名劫持与钓鱼” 的相关文章

万策云网络工作室旗下高性能服务器,保证用户数据安全

万策云网络工作室旗下高性能服务器,保证用户数据安全

万策云工作室旗下所有业务均使用1T高防高性能服务器,数据定时备份,多台服务器实时同步数据,保障用户数据安全!多台服务器定时备份,企业级安全,50m独享,大带宽抗cc文件实时同步备份,数据库定时备份。主服务器采用T级群防,150G单机防御的国内高性能服务器。秒解机器!真实可测客户数据丢了都可以找回来...

如何配置mybatis并且自动生成实体类pojo和mapper

如何配置mybatis并且自动生成实体类pojo和mapper

1如何配置mybatis1.1 复制jar 点击下载mybatis和mysql的jar包:mybatis和mysql的jar包 - 万策云盘编辑1.2 复制配置文件 resources配置文件下载: resources配置文件 - 万策云盘编辑1.3...

python如何连接mysql数据库

python链接mysql数据库要用到pymysql模块中的connect ,connect函数是pymysql模块中 用于连接MySQL数据库的一个函数。 所以连接mysql之前需要先导入pymysql模块 location.href="ht...

如何在程序中实现多进程,多进程概述

如何在程序中实现多进程,多进程概述

 多进程:在一个程序中实现多任务处理,可以使用多线程和多进程两种方式。多进程创建:使用Process、类,每次实例化这个类的时候,就创建一个进程对象。编辑 多进程:一个程序运行中,产生了多个进程。N个正在运行的程序----至少N个程序1个程序------可能只有一个进程/也可能有...

socket概述 python中如何使用TCP/UDP协议实现通信-教程

socket概述 python中如何使用TCP/UDP协议实现通信-教程

 很多编程语言中,都使用scoket套接字实现网络通信。Socket是对TCP/IP协议的封装,Socket本身就是一个调用接口(API),方便程序员用Socket使用TCP/IP协议簇,实现网络通信。不同编程语言,shiyongSocket通信的语法有所区别,但基本原理类型相似。它的两种...

CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程

CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程

平时我们的电脑可能由于大量的文件资料之类的导致存储空间可能不够,所以我们可以选择将网盘我们的本地磁盘用来存放东西。CloudDrive 是一款可以将 115、阿里云盘、天翼云盘、沃家云盘、WebDAV 挂载到电脑中,成为本地硬盘的工具,支持 Windows 与 Dock...