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报文,或使用反间谍软件监控。

结合防ARP、IP欺骗等进行防御。 

ICMP重定向及其攻防技术的更多相关文章

  1. 2018-2019-2 20165237《网络攻防技术》Exp1 PC平台逆向破解

    2018-2019-2 20165237<网络攻防技术>Exp1 PC平台逆向破解 一.实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调 ...

  2. 2018-2019-2 20165312《网络攻防技术》Exp6 信息搜集与漏洞扫描

    2018-2019-2 20165312<网络攻防技术>Exp6 信息搜集与漏洞扫描 目录 一.信息搜集技术与隐私保护--知识点总结 二.实验步骤 各种搜索技巧的应用 Google Hac ...

  3. 2018-2019-2 20165315《网络攻防技术》Exp6 信息搜集与漏洞扫描

    2018-2019-2 20165315<网络攻防技术>Exp6 信息搜集与漏洞扫描 目录 一.实验内容 二.实验步骤 1.各种搜索技巧的应用 2.DNS IP注册信息的查询 3.基本的扫 ...

  4. SpringMVC归纳-1(model数据模型与重定向传参技术)

    要点: model是一个Map结构的数据模型,能重定向时传递数据(拼接URL),但不安全,主要用于渲染前端页面,配合Thymeleaf填充html里面里设置好的参数. @RequestParam用来获 ...

  5. 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用

    - 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...

  6. 2018-2019-2 20165336《网络攻防技术》Exp5 MSF基础应用

    2018-2019-2 20165336<网络攻防技术>Exp5 MSF基础应用 一.攻击实例 主动攻击的实践 ms08_067(成功) payload/generic/shell_rev ...

  7. 2018-2019-2 20165312《网络攻防技术》Exp5 MSF基础应用

    2018-2019-2 20165312<网络攻防技术>Exp5 MSF基础应用 目录 一.知识点总结 二.攻击实例 主动攻击的实践 ms08_067 payload/generic/sh ...

  8. 2018-2019-2 20165312《网络攻防技术》Exp4 恶意代码分析

    2018-2019-2 20165312<网络攻防技术>Exp4 恶意代码分析 知识点总结 1.有关schtasks schtacks的作用:安排命令和程序定期运行或在指定时间内运行.从计 ...

  9. 2018-2019-2 20165312《网络攻防技术》Exp3 免杀原理与实践

    2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...

随机推荐

  1. iOS边练边学--简单的数据操作(增、删、改),左滑动删除和弹窗

    一.数据刷新的原则: 通过修改模型数据,来修改tableView的展示 先修改数据模型 在调用数据刷新方法 不要直接修改cell上面子控件的属性 二.增删改用到的方法: <1>重新绑定屏幕 ...

  2. LINQ操作符二:SelectMany

    SelectMany操作符提供了将多个from子句组合起来的功能,相当于数据库中的多表连接查询,它将每个对象的结果合并成单个序列. 示例: student类: using System; using ...

  3. Spring Session + Redis实现分布式Session共享

    发表于 2016-09-29 文章目录 1. Maven依赖 2. 配置Filter 3. Spring配置文件 4. 解决Redis云服务Unable to configure Redis to k ...

  4. Ubuntu安装MediaInfo

    Ubuntu版 打包下载:艺搜下载 适用于Ubuntu 12.10(i386) 安装libzen0_v0.4.29 _i386.xUbuntu_12.10.deb 安装libmediainfo0_v0 ...

  5. jQuery方法笔记

    .clone() $(selector).clone(includeEvents) $(this).clone(true) //boolean值,true/false分别对饮是否复制元素的所有事件处理

  6. TopK的一个简单实现

    转自:http://rangerwolf.iteye.com/blog/2119096 题外话: <Hadoop in Action> 是一本非常不错的交Hadoop的入门书,而且建议看英 ...

  7. 登录centos虚拟机后显示-bash-4.1

    http://zhidao.baidu.com/link?url=KwpGOdwFw1oxnL71pvPlfRgbRL_IuQeYRzIYJjiDb2SnX0dQye5yUXqHAGSyuD6u2nD ...

  8. Android Activity 传递数据

    activity中数据的传递方式有2中,一种是使用putExtra()传递,另外一种是传递Bundle对象,使用putExtras()方法. 方法一 发送数据 putExtra()传送的是键值对,第一 ...

  9. am335x watchdog

    am335x watchdog 内核文档kernel/Documentation/watchdog Qt@aplex:~/kernel/7109/linux-3.2.0/Documentation/w ...

  10. 配置 -- PHPstorm+Xdebug断点调试PHP

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...