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.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...
随机推荐
- No supported encrypter found. The cipher and / or key length are invalid.
终端使用如下命令: php artisan key:generate 将生成的key复制到config/app.php替换82行的APP_KEY键值.
- 没有启动 ASP.NET State service错误的解决方法
具体错误如下: 异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求.请确保已启动 ASP.NET State service,并且客户端和服务器端 ...
- 表单提交 多个name相同的input
<form action="{:U('Index/test')}" method="post"> <foreach name="di ...
- 【转】C#获取电脑客户端IP地址及当前用户名
在C#中获取一台电脑名,IP地址及当前用户名是非常简单,以下是我常用的几种方法: 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息: ...
- 每个 case 语句的结尾不要忘了加 break,否则将导致多个分支重叠
每个 case 语句的结尾不要忘了加 break,否则将导致多个分支重叠 (除非有意使多个分支重叠). #include <iostream> /* run this program us ...
- iOS 使用AFNetworking 设置cookie
本问题是由于多账号访问统一服务器时, 由于服务器那边接收到sessionid一样, 故无法区分账号信息. 所以需要在移动端请求的时候重新设置cookie, 步骤如下: 1. 在登录的时候, 先将 re ...
- Oracle过程及函数的参数模式详解
一.In.out.in out模式 在Oracle中过程与函数都可以有参数,参数的类型可以指定为in.out.in out三种模式. 三种参数的具体说明,如下图所示: (1)in模式 in模式是引用传 ...
- 学习使用资源文件[11] - DLL 中的资源文件
本例将把一张 bmp 图片, 以资源文件的方式嵌入 dll, 然后再调用. 第一步: 建一个 DLL 工程, 如图: 然后保存, 我这里使用的名称都是默认的. 第二步: 建一个资源原文件, 如图: ...
- 调用外部 DLL 中的函数(2. 晚绑定)
, b, t, );end; procedure TForm1.FormDestroy(Sender: TObject);begin FreeLibrary(inst); {记得释放}end; e ...
- MySQL Server 5.7.13
如何安装MySQL,MySQL两种安装方式_百度经验 http://jingyan.baidu.com/article/cd4c2979033a17756f6e6047.html "C:\P ...