网安视频学习

IP包头分析

 

 可选项可达到10行,40个字节,一般不用

IP包头:最长可达到60个字节,20-60个字节

版本:占了4个比特(电脉冲)  表示该IP数据包使用的IP协议版本 ,目前Internet中使用的主要是TCP/IP协议族中版本号为4的IP协议  v4/v6

首部长度:此域指出整个报头的长度(包括选项),该长度是以32位二进制数为一个计数单位的,接收端通过此域可以计算出报头在何处结束及从何处开始读数据,看是否有可选项。普通IP数据报(没有任何选项)该字段的值是5(即20个字节的长度)。

优先级与 服务类型(TOS):前三个代表优先级,中间四个代表服务类型,最后一个没有启用,

用于规定本数据报的处理方式。服务类型字段的8位分成了5个子域:

(1)—优先权(0-7)数越大,表示该数据报优先权越高。网络中路由器可以使用优先权进行拥塞控制,如当网络发生拥塞时可以根据数据报的优先权来决定数据报的取舍。

(2)—短延迟位D(Delay):该位置1时,数据报请求以短延迟信道传输,0表示正常延时。

(3)—高吞吐量位T(Throughput):该位置1时,数据报请求以高吞吐量信道传输,0表示普通。

(4)—高可靠位R(Reliability):该位置1时,数据报请求以高可靠性信道传输,0表示普通。

(5)—保留位。

总长度:IP报文的长度即3,4,5层长度,超过1500就开始分片   4040字节 

 只有第一个有原IP和目标IP,所以这种切法不正确

正确切法

IP分片

 段偏移量决定IP分片的先后顺序

 断片值是1480的倍数,断片量只有两个值0和1480

带1480的为第二个分片,再带的为第三个,

3个IP包头克隆出来后开始分片,之后按照断片量填入--接收端通过读取三个IP包头断片量的值来判断先后顺序--开始重组

标识符(ID):发送端随机生成的,分片的标识符相同,说明分片来自同一个IP包,

标志:三个比特中第一个比特永远为0,没有被启用,

                             第二个比特只有两个值:0和1,

                                                          如果为0,代表这个IP包进行了分片

                                                          如果为1,代表这个IP包没有进行分片,只有一个帧

                              第三个比特表明是不是最后一个分片

                                                            为1代表还有后续分片

                                                            为0则为最后一个分片 

若标志为010,则段偏移量为0

IP分片在网络层完成,只有是010才能通过防火墙,分片由应用层完成

TTL(生存时间):防止一个数据包在网络上永久循环下去

发送端PC上,给别人发包,每一个IP报文的地方有一个值叫TTL初始值,通过这个可以判断对方是什么主机,是windows主机还是linux主机,100以上windows主机,100以下linux主机,网关(路由器)会先把这个初始值减一,发给下一个路由器,再减一,每经过一个路由器减一,当减为0时就消失

ping百度

 pingQQ

 ping网关

 协议号:识别上次协议

               6--往TCP那走

              17--往UDP那走

               1--往同层ICMP协议那走

 首部校验和:校验三层的IP包头,20-60个字节校验和,

MAC地址48位,6个字节,IP地址32位,4个字节

源地址:占用32位二进制数,表示发送端IP地址

目的地址:占用32位二进制数,表述目的端IP地址

路由原理

路由即路由器为IP包选择路径的过程,根据路由表决定怎么转发数据

交换机转换数据的依据是MAC表

路由表
1,“C”:直连,  “S”:静态2,第二列是目的网络地址和掩码
3,第三列是目的端口或下一跳路由器地址
如果是直连,则这个字段为给出的目的端口
如果有下一跳路由器,则为下一跳路由器的IP地址
4,缺省路由的路由表项网络地址全是0

默认路由:s*,目标网段和目标子网掩码都是0

子网掩码

边缘路由器    f0/0

管理距离值:每一种路由类型都有自己固定的默认的管理距离值,c的是0,s的是1;s*为无穷大

路由条目的优先级与这个管理距离值成反比,值越大,优先级越小,路由顺序:C -- S -- S*

优先级低的会被隐藏起来,

 

 

 

 

 交换和路由对比

 斜体代表自定义参数

ARP协议分析与保护

广播域越小越好,

交换机隔离不了广播域,交换机控制不了广播,路由器可以控制广播,

用路由器隔离广播---物理隔离

ARP作用: 在已知对方IP地址的情况下,来解析对方的IP

ARP广播请求报文,ARP单播应答,

 arp工作原理

1.  Arp协议有两种报文,分别是arprequest(请求)报文和arp reply(回应)报文。c1和c2是在同一个网段,并且都是24位掩码,所以它们是可以通信的,c1、c2之间详细的通信过程是这样的:数据包在封包时,原ip地址是192.168.1.10,目标地址封装为192.168.1.20,网络层封包完成交给下一层数据链路层,在装帧时,帧头的原mac地址字段是c1的网卡的mac地址,在目标Mac地址字段不是c2的mac地址,管理员在c1上pingc2可以让c1知道c2的ip地址,但不知道它的mac地址。所以二层装帧是完不成的。

2. 这种情况就需要通过arp request报文获得目标mac地址,request报文是通过广播的方式发送出去的。 //所谓广播就是连在c1上的所有设备都能收到报文。但是只有c2会发送回应报文,把自己的mac地址告诉c1,即arp reply报文,是以单播的形式回应c1的。

3.每台pc都会有arp缓存表,把动态学习到的mac地址和iP地址对应关系放到arp缓存表里。

4.用arp -a查看arp缓存表,当c1没有和c2通信过,它的缓存表里是没有c2的mac地址的,我用c1来ping c2,然后再查看arp缓存表,它就会学到c2的mac地址。

5.通过抓包可以抓到发送的报文。在c1处抓,右击“开始抓包”,单击ok,然后右击打开WIRESHARK(抓包工具)之后会出来很多报文,我们在Filter(过滤器)里输入arp单击Apply  //只抓arp报文。很明显这里抓到两个报文,一个是广播,一个是单播。

6.先看广播request(请求)报文,打开之后先看二层信息,我可以用ipconfig查看c1的mac地址,再看三层信息

7.再看单播reply(回应)报文,通过c2的回应报文,c1学到了c2的mac地址,下次c1要和c2通信就不会发送arp请求报文了,因为c1记在了自己的arp缓存表里。那么此时再用c1 ping c2并抓包,如果发现还发送arp报文,说明它忘记了,或者arp缓存表过期。

8.当arp缓存表里有对方的mac地址并且没有忘记或过期,通信时就不会发送arp报文。

操作---查看ARP缓存表

ARP协议是内网协议,属于内网攻击,不能攻击外网,工作是通过局域网完成,碰见路由器就被控制

  

 

 

 

你发现目标IP与自己的IP在同一网段上时,我会发送ARP广播报文去请求他的MAC地址,当你发现目标IP与自己的IP不在同一网段上时,我会发送ARP广播报文,直接询问目标IP,

ARP攻击---终止通信,断网,伪造虚假的ARP应答报文,和虚假的MAC地址,去欺骗,使他断网,也可以通过广播报文来攻击, 

ARP攻击---目的就是断网

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

arp在设计的时候是有缺陷的。c1再和c2通信,数据就不会发向所有端口了。那么这时如果sw1下面连个c3,它也是不能监听到c1和c2的通信的。所以我们认为在以太网如果是交换式环境是安全的。第三方想要监听到c1和c2的通信,只有不停的向sw的mac地址表里写东西,让mac地址表溢出,它就记不住新学到的了。 //mac地址表是有大小空间的。还有一些问题比如说c1没有向c2发送请求,而c2主动向c1发送回应,并欺骗它,由于arp没有验证机制,导致c1与其它通信被拦截,甚至局域网里的所有成员都上不了网。这就叫arp攻击

你发现目标IP与自己的IP在同一网段上时,我会发送ARP广播报文去请求他的MAC地址,当你发现目标IP与自己的IP不在同一网段上时,我会发送ARP广播报文,直接询问目标IP

ARP欺骗---目的不是为了断网,是为了截获数据

同时对局域网内的一台主机和网关进行ARP欺骗,更改这台主机和网关的ARP缓存表。                 

广播风暴问题:如果一个二层网络非常大的时候,会导致大量带宽被各种报文占据,那么正常的流量就无法传输了。我们把这种大的二层网络称为平面网络  //所谓平面网络就是没经过分层设计。能够收到某一设备发送的报文的所有设备的集合叫做广播域,广播域越多越好。扁平化的设计是不合理的,不能优化广播域的数量,会导致广播风暴产生,网络性能大大下降。所以在设计网络时应采用分层设计来提高网络性能。如果用路由器隔离广播当然是一种选择,但是路由器的端口是有限的。三层转发没有二层效率快,所以尽量在二层转发。通过在交换机上来把大的广播域隔离成多个小的广播域的技术叫vlan技术  //虚拟局域网技术。这个以后会讲解。通过在交换机上划分多个vlan,把e0/0/1和e0/0/2划在不同的vlan。这样就从一个广播域变成两个广播域了。用这种技术来优化网络性能,减少广播风暴的范围。

总结

凡是可以pingIP的就有MAC地址

路由器工作原理图解如下

路由器只能从ARP报文里提取信息,但没法路由,一个帧到达路由器,首先判断,帧头目标MAC地址是不是自己的,如果不是则舍弃,是给我的,则把数据解封装,将IP包输送给路由器内部,路由器开始检查目标IP,并匹配路由表,若没有,则丢弃数据,并向源端回馈一个错误信息,若有,则路由转发到出接口,准备封装帧头,封装帧头里有原MAC地址以出接口的MAC地址作为原MAC地址,目标MAC地址检查自己的ARP缓冲表,有没有下一跳的MAC地址,若有,直接封装,若没有,发送ARP广播请求,得到应答后,将下一跳的MAC地址作为目标MAC地址,记录缓存,发送出去。

操作----ARP实验演示

把xp叫受害人1号,2003-1叫坏蛋,2003-2叫受害人2号

首先将三台虚拟机放在同一局域网VMnet2中,网上邻居--属性--本地连接--属性--TCP/TP属性--

在受害人1那ping小坏蛋

在三台虚拟机上ipconfig /all看到各自的MAC地址,

使用“网络执法官” 

1

打开网络执法师--开始扫描--对准2003-1的进行操作--右键--手工管理--选择IP冲突,管理频率为3--再看受害人1号的右下角--windows系统一直报错--(说明坏蛋一直向其他电脑发送MAC地址说他10.1,受害人自己是1,感觉很怀疑,就是受害人被骗了)---在受害人1号那打开cmd,ping 10.3还是可以通信,没有断网---在小坏蛋那点击结束--右键手工管理---选择禁止与关键主机组进行TCP/IP连接(除敏感主机外)---点击开始---可以看见左下角管理次数正在发包---在受害人1号那打开cmd,ping 10.3,发现断网了---在受害人1号那打开cmd,输入arp -a---发现2003-2的IP地址变化,也就是说这是一个伪造的IP地址---再输入arp -d去除记录后再输入arp -a可以发现可进行短暂的通信(小坏蛋一直在向受害人1号发假包)---在小坏蛋那点击结束---在受害人那再次清空---ping 10.3还是可以通信---打开cmd,输入arp -a---发现2003-2的IP地址正确

 2

开cain这个软件--------------点这个网卡标识--- 选择10.2这个网卡---点确定---开启抓包机制---抓包---点右键------选择range  范围是1-254---

---  ----添加列表--- 选中10.1和10.3(横排的)---

选中这个--- ------ 

 ---毒药中毒即开始投毒---使受害人1以为小坏蛋是受害人2,受害人2以为小坏蛋是受害人1---在受害人1那ping 10.3一切正常---但输入arp -a---发现受害人2号和小坏蛋的地址一样,所以若以这个地址使用的话,相当于把数据给了小坏蛋---打开受害人2号---主页---管理---服务和应用程序---服务---

 talent----启动类型为自动---应用---启动---确定---受害人12号可以远程连接控制---在受害人1号cmd输入telnet 10.1.1.3---一直回车---输入账号密码成功连接---输入exit退出---小坏蛋抓包了---------- ---

--- 右键view---可以看到账号密码---

 3

 在受害人2号点击我的电脑------

---应用程序服务器--- 信息服务---

 文件复制来源改为e---在cmd中输入net user haha heihei---net user haha heihei /ad---输入exit---开始---管理工具----------右键---属性---

 安全账户------在受害人1号那我的电脑------10.3---输入账号密码---小坏蛋那---FTP---看到账号密码

 

ARP防御

1.静态ARP绑定

手工绑定/双向绑定  ->  缺点,效率低,工作量大

windows客户机上:

arp -s 10.1.1.254 00-01-2c-a0-e1-09

arp -a 查看ARP缓存表

2.ARP防火墙

自动绑定静态ARP

主动防御

3.硬件级ARP防御

交换机支持端口做动态ARP绑定(配合DHCP服务器)

或做静态ARP绑定


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值