ICMP重定向及其攻防技术
1、ICMP重定向概念:
ICMP重定向技术,是用来提示主机改变自己的主机路由从而使路由路径最优化的一种ICMP报文。其概念理解的要义是原主机路由不是最佳路由,而其默认网关提醒主机优化自身的主机路由而发送的报文。
最能说明ICMP重定向意义的典型拓扑如下:
2、ICMP重定向细节:
(1)报文格式:
|
帧首部 |
IP首部 |
ICMP重定向首部 |
ICMP重定向数据 |
ICMP重定向负载部分
|
类型:5 |
代码:0(0~3) |
校验和 |
|
建议使用的最优路由next-hop地址 |
||
|
IP首部 |
||
|
IP报文有效载荷的前8bytes |
||
代码0~3代表的含义:
|
代码 |
描述 |
|
0 |
网络重定向 |
|
1 |
主机重定向 |
|
2 |
服务匹配条件下网络重定向 |
|
3 |
服务匹配条件下主机重定向 |
·建议使用的最优路由地址:
路由器或其他网关类设备的接口地址。
·IP首部:
原ICMP报文IP报头。
·IP报文有效载荷的前8bytes:
原ICMP报文中的类型、代码、校验、序列号等字段。
(2)发生条件:
·数据包的入接口和路由后的指定的出接口是同一个接口。
·数据包的源IP地址和该包应走的下一跳IP属于同一网段。
·数据报非源路由的(这种情况应该比较少见了,源路由多见于Token Ring)。
·系统开启重定向功能。
·受到ICMP重定向攻击。
(3)系统响应:
·大部分windows系列OS会选择添加一条主机路由作为默认动作。
·部分UNIX系列和UNIX-LIKE系列OS同样选择添加一条主机路由作为默认动作。
·部分UNIX系列和UNIX-LIKE系列OS以及一般而言绝大多数路由类网络设备会忽略。
·Linux等可以作为路由器的OS针对ICMP重定向有着不同的标准动作选择。
3、ICMP重定向应用:
(1)单纯的提供路由优化选项建议。
(2)定向改变数据流传输路由路径。
(3)通过优化路由改善服务的质量。
(4)进行非法的网络攻击入侵行为。
4、ICMP重定向攻击:
从安全的角度来讲,ICMP重定向报文没有协议状态检查,以及合法性机制验证,十分类似ARP报文,可以轻而易举的进行欺骗攻击。
当然不同的操作系统对于受到的ICMP重定向报文也会按照自己的一些标准进行过滤,例如Windows之接受来自其自身默认网关的ICMP重定向报文,其余来源ICMP重定向报文则被丢弃,但伪造网关发送报文十分容易。
ICMP攻击可以达到的目的:流量的嗅探劫持、中间人代理权(这两点差不多)
举例说明:
·拓扑如下:
过程说明:
(1)正常时,user通过交换机Switch连接到网关设备Gateway,利用默认网关与跨网段的 服务器Server通信。
(2)异常情况下,攻击者Attacker可以伪造网关向user发送ICMP重定向报文,可以结合 ARP欺骗技术,然后用户user主机路由变成流量要通过Attacker来进行转发通信。
(3)攻击者可以截获、提取、分析、修改、重放用户user的数据包,造成多种安全威胁。
5、ICMP重定向防御:
(1)网关端:
·关闭ICMP重定向(no ip redirects)。
·变长子网掩码划分网段。
·使用网络控制列表(ACL)和代理。
(2)主机端:
可以使用防火墙等过滤掉ICMP报文,或使用反间谍软件监控。
ICMP重定向及其攻防技术的更多相关文章
- 2018-2019-2 20165237《网络攻防技术》Exp1 PC平台逆向破解
2018-2019-2 20165237<网络攻防技术>Exp1 PC平台逆向破解 一.实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调 ...
- 2018-2019-2 20165312《网络攻防技术》Exp6 信息搜集与漏洞扫描
2018-2019-2 20165312<网络攻防技术>Exp6 信息搜集与漏洞扫描 目录 一.信息搜集技术与隐私保护--知识点总结 二.实验步骤 各种搜索技巧的应用 Google Hac ...
- 2018-2019-2 20165315《网络攻防技术》Exp6 信息搜集与漏洞扫描
2018-2019-2 20165315<网络攻防技术>Exp6 信息搜集与漏洞扫描 目录 一.实验内容 二.实验步骤 1.各种搜索技巧的应用 2.DNS IP注册信息的查询 3.基本的扫 ...
- SpringMVC归纳-1(model数据模型与重定向传参技术)
要点: model是一个Map结构的数据模型,能重定向时传递数据(拼接URL),但不安全,主要用于渲染前端页面,配合Thymeleaf填充html里面里设置好的参数. @RequestParam用来获 ...
- 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用
- 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...
- 2018-2019-2 20165336《网络攻防技术》Exp5 MSF基础应用
2018-2019-2 20165336<网络攻防技术>Exp5 MSF基础应用 一.攻击实例 主动攻击的实践 ms08_067(成功) payload/generic/shell_rev ...
- 2018-2019-2 20165312《网络攻防技术》Exp5 MSF基础应用
2018-2019-2 20165312<网络攻防技术>Exp5 MSF基础应用 目录 一.知识点总结 二.攻击实例 主动攻击的实践 ms08_067 payload/generic/sh ...
- 2018-2019-2 20165312《网络攻防技术》Exp4 恶意代码分析
2018-2019-2 20165312<网络攻防技术>Exp4 恶意代码分析 知识点总结 1.有关schtasks schtacks的作用:安排命令和程序定期运行或在指定时间内运行.从计 ...
- 2018-2019-2 20165312《网络攻防技术》Exp3 免杀原理与实践
2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...
随机推荐
- lvm 新建一个vg 逻辑卷 配置启动
fdisk /dev/sdb 格式 t 8e w vgcreate datavg /dev/sdb1lvcreate -L 999G -n lvdata datavgmkfs.xfs /dev/da ...
- 【好文收藏】javascript中event对象详解
event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等. event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有意义.比如,fromEleme ...
- 第三百二十一节,Django框架,发送邮件
第三百二十一节,Django框架,发送邮件 全局配置settings.py EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' ...
- 第三百一十八节,Django框架,信号
第三百一十八节,Django框架,信号 Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 也就是当程序有指定动作时, ...
- pip -i 和 -U 参数
例子: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U funcat -i: 指定库的安装源 -U:升级 原来已经安装的包,不带U ...
- 高速入门:十分钟学会Python
初试牛刀 如果你希望学习Python这门语言.却苦于找不到一个简短而全面的新手教程.那么本教程将花费十分钟的时间带你走入Python的大门.本文的内容介于教程(Toturial)和速查手冊(Cheat ...
- mysql压缩包的安装、配置、配成windows服务、远程连接及常规问题
1.下载windows安装包 下载地址:mysql-5.7.18 2.配置my.ini [client] port = 3306 # 设置mysql客户端连接服务端时默认使用的端口 [mysql] d ...
- MySQL 若干操作
复制表结构+复制表数据 mysql> create table t3 like t1; mysql> insert into t3 select * from t1; mysql索引 1. ...
- Windows下基于eclipse的Storm应用开发与调试
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3971113.html 本文以一个简单的example来讲解如何开发storm应用程序 1.创建maven ...
- Xcode 5: 将新项目同步到Svn上
stackoverflow 两种办法,一是使用比较成熟的svn客户端,二是使用终端.以下为终端方法: 假设已经通过Xcode->Preferences->Accounts将reposito ...