一、共享网络与交换网络的区别

1、共享网络

在共享网络中,由于HUB属于一层设备,对于到达本身的数据报文,HUB会对报文进行广播(除了收到报文的那个接口),因此接在同HUB的所有PC都能收到该报文。前提PC开启了混杂模式

注:

通常情况下,网卡都是工作在非混杂模式,也就是说即使收到数据报文,网卡会判断目的MAC是否和自己的一样,不一样的话代表数据包不是给自己的,因此会丢弃,只接收那些目的MAC和自己一样的数据报文。在嗅探时必须开启混杂模式,在该模式下,网卡不对数据报文进行判断,一锅端!

2、交换网络

交换网络中交换机会根据MAC-端口对应表进行传输,也就是说除了网关,其他同交换机下的PC机无法收到数据报文(没出现攻击的情况下)。

二、ARP欺骗

1、ARP

ARP(地址解析协议)是在仅知道主机的IP地址时确定其物理地址的一种协议,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM和FDDI IP网络中使用。

2、ARP通讯过程

由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输、计算机是根据mac来识别一台机器。每台主机都会存在一个ARP高速缓存表,里面记录了局域网内所有主机的Mac地址,当它需要与另一个主机通信时会先查询本地ARP表,通过对方Mac地址来封装数据包,如果本地ARP表中没有对应的Mac地址,它会向局域网发出广播“我的ip是…我的Mac地址是…请问ip为…的Mac地址”,当对应主机收到广播核对ip然后通过单点传输的方式告诉它自己的Mac地址,然后双方ARP表中就多了彼此的Mac地址。

3、ARP欺骗

1、单项欺骗

A、B、C三个人,A与C正常通信,B想知道A给C发的内容,就伪造ARP响应包,更改A的ARP表,所以A发送给C的信息会先传送到B,B可以丢弃数据包,这样C就收不到A发的数据了,但是C还是可以正常给A发送数据的,这就是单项欺骗

2.双向欺骗

同样是A、B、C三个人,B同时给A、C发送响应包B告诉A它的ip是C的ip,Mac地址还是B的,告诉C它的ip是自己的,Mac地址是A的,这样A、C的通信就都会经过B,这就叫双向欺骗

3.区别
单向欺骗:是指欺骗网关
双向欺骗:是欺骗网关跟被攻击的两个机器
4.检测被欺骗的主机
  • 可以利用ARPkiller的”Sniffer杀手”扫描整个局域网IP段,然后查找处在”混杂”模式下的计算机,就可以发现对方了.(绿帽子图标是正常模式,红帽子是混杂模式用户)
  • 使用tracert命令在任意一台受影响的主机上,在DOS命令窗口下运行如下命令:tracert 外网ip。
    原理:
    中毒主机在受影响主机和网关之间,扮演了“中间人”的角色。所有本应该到达网关的数据包,由于错误的MAC地址,均被发到了中毒主机。此时,中毒主机越俎代庖,起了缺省网关的作用。
    通俗讲tracert命令是看ping这个外网时进过了哪些ip,如果主机被ARP欺骗,使用这个命令就会暴露攻击者ip,因为我们访问外网时攻击者电脑成了中间人所以下一跳就是它的ip
5.防御
双绑定, 本地跟路由都做了绑定(注:mac地址绑定)
采用ARP防火墙
6.ARP病毒攻击症状
打开网页速度非常慢,甚至打不开
提示IP地址冲突
甚至导致校园网瘫痪断网
一般会绑定木马病毒,窃取用户账号密码
7.ARP攻击实例

win下使用cain:

  1. 选择嗅探器
  2. 点击左上角开始/停止嗅探的图标
  3. 点击空白处,右键选择扫描mac;会出现下图

    选择第一个子网中全部主机;ok
  4. 选择下方的ARP

    点击左上角的加号

    左边选择攻击目标的ip;右边选网关;然后开始欺骗

    如果对方开始登陆某网站,可以通过下方的passWord可以看到明文密码

    cain还有其他的功能在左边;具体使用,见后面的博客cain的具体使用

Linux下实现断网攻击、流量劫持、抓取https的账号密码:

1.nmap扫描存活主机
nmap -sP 扫描ip(可以是网段;如下图)

-sP:选项告诉Nmap仅仅进行ping扫描。
2.断网攻击

arpspoof -i 网卡 -t 目标IP 网关//默认是不转发的,也就是说执行这条命令,目标机就无法联网了

3.流量劫持

echo 1 >/proc/sys/net/ipv4/ip_forward
如:arpspoof -i eth0 -t 192.168.100.15 192.168.1.1
将1写入这个文件就可以流量劫持了,同时目标机就能联网了,默认为0,要是还要执行断网操作,还可以将其改为0
即:echo 1 >/proc/sys/net/ipv4/ip_forward

4.抓取http、https的账号密码
http:

echo 1 >/proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 目标ip
网关 ettercap -Tq -i eth0 //-T文本模式启动 -q安静模式

https:

先编辑下/etc/ettercap/etter.conf
找到:
# if you use iptables:#redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"#redir_command_off = "iptables -t nat -D PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"
将后面两行的#去掉
然后运行sslstrip -a -f -k 实现https转换成http以获取帐号密码
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 目标ip
ettercap -Tq -i eth0 //-T文本模式启动 -q安静模式
8. ARP欺骗与嗅探的区别
  1. 嗅探一般存在于共享网络中,在共享网络中一般使用HUB作为接入层,经过HUB的数据报文不管长得什么样,因为HUB工作在第一层,看不懂二层以上的报文是啥样子的,所以一律以广播处理,在同一网段的计算机只要将网卡设置成混杂模式即可。
  2. 嗅探在交换网络中不适用,因为交换机是通过MAC-端口对应表来转发数据报文的,所以在交换网络中如果只将网卡设置成混杂模式,而不进行ARP欺骗,其结果只能接受到网络中的广播包。
  3. 共享网络中适用ARP欺骗,那是多此一举,适用ARP欺骗的方式会对影响网络流量,对网络造成很大的影响,另外适用ARP欺骗会产生大量的ARP报文,很容易被发现。而嗅探对整个网络几乎没有影响,因为嗅探只是做监听,而不会产生多余的数据报文。

三、DNS欺骗

1、DNS

DNS即Domain Name System 的缩写,域名系统以分布式数据库的形式将域名和IP地址相互映射。DNS协议即域名解析协议,简单的说:DNS是用来将域名解析成对应ip地址的协议。

2、工作原理

  1. 访问 www.baidu.com ,首先要向本地DNS服务器发出DNS请求,查询 www.baidu.com 的IP地址,如果本地DNS服务器没有在自己的DNS缓存表中发现该网址的记录,就会向根服务器发起查询,根服务器收到请求后,将com域服务器的地址返回给本地DNS服务器,本地DNS服务器则继续向com域发出查询请求,域服务器将 baidu.com 授权域名服务器的地址返回给本地DNS服务器,本地DNS服务器继续向 baidu.com 发起查询,得到 www.baidu.com 的IP地址。
  2. 本地DNS服务器得到 www.baidu.com 对应的IP地址后以dns应答包的方式传递给用户,并且在本地建立DNS缓存表。
  3. Windows下查看和刷清空DNS缓存表的命令
 ipconfig /displaydns    ipconfig /flushdns

3、DNS欺骗

首先欺骗者向目标机器发送构造好的ARP应答数据包,ARP欺骗成功后,嗅探到对方发出的DNS请求数据包,分析数据包取得ID和端口号后,向目标发送自己构造好的一个DNS返回包,对方收到DNS应答包后,发现ID和端口号全部正确,即把返回数据包中的域名和对应的IP地址保存进DNS缓存表中,而后来的当真实的DNS应答包返回时则被丢弃。

4、DNS欺骗实例

使用工具是Linux下的ettercap:

1、配置etterca的配置文件


上面两个192.168.1.181是攻击者的ip

2、开启Apache,并在根目录下创建一个html文件给被害者看

3、打开ettercap图形化界面
ettercap -G


1. 点击sniff下的unified sniffing

2. 选择网卡

3. 选择host下的扫描主机

4. 查看扫描结果

5. 将目标ip发送到target1;网关发送到target2

6. 点击mitm下的ARP欺骗

7. 选择第一个

8. 点击plugins下的mangge the plugins

9. 双击dns_spoof然后开始欺骗

OK

4、防护

1.因为DNS欺骗前提也需要ARP欺骗成功。所以首先做好对ARP欺骗攻击的防范
2.不要依赖于DNS,尽管这样会很不方便,可以使用hosts文件来实现相同的功能;

Hosts文件位置:
windows xp/2003/vista/2008/7系统的HOSTS文件位置             c:\windows\system32\drivers\etc 用记事本打开即可进行修改。

3.使用安全检测软件定期检查系统是否遭受攻击
4.使用DNSSEC:DNS安全扩展,是由IETF提供的一系列DNS安全认证的机制(可参考RFC2535)。它提供了一种来源鉴定和数据完整性的扩展,但不去保障可用性、加密性和证实域名不存在。开发 DNSSEC 技术的目的之一是通过对数据进行数字“签名”来抵御此类攻击

ARP欺骗+DNS欺骗相关推荐

  1. 2.9 ARP和DNS欺骗

    1.预备知识:ARP和DNS欺骗原理 1.1ARP欺骗 ARP(Address Resolution Protocol,地址解析协议)涉及TCP\IP体系结构中网络层的IP地址和数据链路层的MAC地址 ...

  2. 初探 Ettercap: ARP投毒 DNS欺骗

    笔记一:ettercap是什么? 我们在对WEB安全检测的时候都会用到Cain和netfuke这两款工具,功能相信用过的朋友多多少少都知道,但这两款工具是在windows下运行的. 而ettercap ...

  3. ARP和DNS欺骗以及网站钓鱼分析

    实验目的 1.掌握ARP中间人攻击原理 2.掌握DNS欺骗原理 3.熟悉网站钓鱼的原理. 实验环境 VMware15.0.windows客户端.windows server2008.kali linu ...

  4. Python 实现ARP与DNS欺骗

    利用Scapy进行ARP缓存投毒 from scapy.all import * import os import sys import threading import signaldef rest ...

  5. 网络攻防实验:ARP和DNS欺骗攻击

    一.实验目的 通过本实验,读者重点掌握以下知识: (1) 常见的ARP欺骗和DNS欺骗原理及实现过程. (2) 结合具体应用,分析ARP欺骗和DNS欺骗产生的原因. (3) ARP欺骗和DNS欺骗的防 ...

  6. 黑客攻击入门:DNS欺骗、ARP攻击和钓鱼网站制作

    数据来源         本文仅用于信息安全的学习,请遵守相关法律法规,严禁用于非法途径.若观众因此作出任何危害网络安全的行为,后果自负,与本人无关.   一.背景 钓鱼者运用社会工程学( socia ...

  7. charles DNS欺骗

    本文参考:charles DNS欺骗 DNS欺骗/DNS Spoofing 功能:通过将您自己的主机名指定给远程地址映射来欺骗DNS查找 一般的开发流程中,在上线之前都需要在测试环境中先行进行验证,而 ...

  8. ARP攻击dns攻击

    目录 局域网通信原理 ARP断网攻击 ARP毒化 DNS欺骗 局域网通信原理 ARP断网攻击 NAT模式 (保证有网) 1下载安装包 安装成功后 输入arpspoof变为绿色 2被攻击PC 此时Win ...

  9. arp欺骗和dns欺骗

    kali换更新源 #中科大 deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib deb-src http:// ...

  10. python scapy实现ARP欺骗与DNS欺骗

    (仅限python2.7.15) 关于ARP ARP协议(地址解析协议),是一个能够将IP地址转换为MAC地址来让设备间通讯的协议,由于设备间进行网络通讯时,需要将网络层IP数据包包头中的IP地址信息 ...

最新文章

  1. 【ORACLE】碎片整理
  2. Tensorflow【实战Google深度学习框架】全连接神经网络以及可视化
  3. sublime 3114注册码
  4. oracle查询各个池的使用率,oracle查询连接数、并发数、共享池大小
  5. 【学术相关】考研初试成绩出来了,然后呢...选导师!
  6. Element UI——日期时间选择器el-date-picker开始时间与结束时间约束解决方案
  7. 在TreeView查找某一节点
  8. mysql优化模糊查询_MySQL的LIKE模糊查询优化
  9. python中elif和while简单介绍及注意事项(含笔记)
  10. 互联网晚报 | 8月10日 星期二 | 携程启动“2021混合办公试验”;网易云音乐暂缓IPO;上汽通用五菱年累销量突破百万...
  11. CVPR2005【行人检测】HOG+SVM用于人体检测的梯度方向直方图
  12. 02-09 Python库-PyMySQL-连接数据库
  13. mysql linux 中文乱码怎么解决_如何解决mysql linux 中文乱码的问题
  14. java 注释 代码,如何在Java中注释代码块
  15. OpenStack之化云为雨
  16. css元素背景图片自适应屏幕大小
  17. 智能制造案例——面向重型机械车间智能制造系统解决方案
  18. github国内镜像站
  19. java bounce tale_bouncetales蹦球传说安卓版
  20. 速卖通电脑办公行业什么产品好卖?解读2022速卖通重点招商品类及营销策略

热门文章

  1. 非线性调频信号matlab仿真,线性调频信号回波仿真
  2. 实验九 哈希表的查找操作
  3. raid卷的作用_硬盘raid功能是什么意思,有何作用
  4. 一、Oracle11g简介
  5. python爬虫案例——爬取豆瓣图书信息并保存
  6. 两张图让你快速读懂JVM字节码指令
  7. 使用webgl(three.js)搭建一个3D智慧园区、3D建筑,3D消防模拟,web版3D,bim管理系统——第四课(炫酷版一)...
  8. XMind--思维导图
  9. 在ubuntu用wget下载多个文件,axel多线程下载(多线程超级快)
  10. MapGIS基础开发环境搭建(IGSserver的安装、开发人员资格申请)