针对CDP协议攻击分析及安全防护

简介:

针对CDP协议攻击分析及安全防护<?xml:namespace prefix="o">

 

?xml:namespace>

熟悉Cisco的朋友都知道CDP协议是思科公司独特的发现协议,在思科公司出产的所有路由器和交换机里面都能运行此协议,一台运行C D P的路由器或交换机能够得知与它直接相连的邻居端口和主机名信息。也可以得知一些附加信息如:邻居的硬件模式号码及其性能。这样通过CDP的我们能得到相关联的路由器名、路由器端口信息、IOS版本信息、IOS平台信息、硬件版本信息,以及相关的链路信息从而描述出整个网络的拓扑情况。这时候黑客就会利用CDP欺骗攻击会让网络管理员措手不及。有下面给大家说明两种目标可能遭到CDP欺骗攻击,及应对办法。

一、两种CDP欺骗类型

 

1)针对中央管理软件,各种高端网管软件Cisco works IBM Tivoli HP open view,都依赖CDP完成Cisco主机发现。如果发送伪造的CDP帧,声称在网络上新出现了一台Cisco设备,那么管理软件将试图通过SNMP与其联系,此时就有机会捕获所使用的SNMPCommunity name string ,这样很可能是网络中其他Cisco设备所使用的名称,而且很可能会导致这些设备遭到攻击。此外,CDP欺骗还可用于恶作剧,分散网络管理员的注意力。

2)第二个目标就是Cisco IP 电话Cisco ip电话打开后,就会和相连的交换机开始交换CDP数据,,相互识别,交换机利用CDP通知电话,让它知道语音流量将使用那个VLAN,不难发现,这里有机会实施欺骗攻击,例如注入CDP帧。这样会为电话分配一个错误的VLAN这些手动伪造的CDP帧是如何制造出来的呢?主要有两种工具可定制伪造CDP帧。下面让我们先看看Linux平台下CDP工具程序。

1 .Yersinia工具

 

Yersinia 是执行第二层攻击的一个工具,帮助黑箱测试者在他的日常工作中检查2层协议配置的可靠性。Yersinia能够操作第二层网络协议和允许攻击者阻挡交换机通过注入伪生成树协议,DHCP, VLAN 中继协议和其他信息到网络中。

1.&#160;&#160;&#160;&#160;&#160;&#160;安装:

tar zxvf yersinia-0.7.tar.gz

 

./configure;make;make install

 

 


二、防御措施

 

运行CDP的交换机/路由器定时广播带有CDP更新数据的报文,用cdp timer命令决定CDP更新数据间隔,缺省值为60秒,而且CDP默认已启用。

 

我们在一台Cisco Catalyst 2924交换机上对CDP数据包的诊断输出信息。可以看到,交换机在每个活动接口发送CDP数据包。

SW#debug cdp packet

03:36:26 CDP-PA Packet received form R1 on interface FastEthernet0/5

03:36:26 **Entry found in cache**

03:36:30 CDP-PA version 2packet sent out on FastEthernet 0/1

03:36:30 CDP-PA version 2packet sent out on FastEthernet 0/2

03:36:30 CDP-PA version 2packet sent out on FastEthernet 0/3

03:36:30 CDP-PA version 2packet sent out on FastEthernet 0/4

我们如何关闭CDP协议呢?

需要在交换机/路由器的全局模式下用no cdp enable

如果是Cisco&#160;CatOS则使用set&#160;cdp&#160;disable来禁用CDP

 


 

GUI界面启动Yersinia输入“Yersinia –G”;以字符界面启动输入“Yersinia –I



 本文转自 李晨光 51CTO博客,原文链接:http://blog.51cto.com/chenguang/124425,如需转载请自行联系原作者




相关文章
|
SQL 设计模式 数据库
领域模型:贫血模型与充血模型的深度解析
领域模型:贫血模型与充血模型的深度解析
|
运维 Java 程序员
Spring5深入浅出篇:Spring动态代理详解
# Spring动态代理详解 本文探讨了Spring中的MethodBeforeAdvice和MethodInterceptor在动态代理中的应用和差异。MethodBeforeAdvice在方法执行前执行额外功能,而MethodInterceptor则可在方法执行前后或抛出异常时运行额外逻辑。MethodInterceptor还能影响原始方法的返回值。
|
3月前
|
数据采集 Web App开发 人工智能
基于函数计算FC构建 Browser Tool Sandbox 详解与实操
本文介绍了如何基于阿里云函数计算(FC)构建一个安全、可控的 Browser Tool Sandbox,支持多种浏览器自动化操作方式,包括 Playwright、Puppeteer、Browser Use 和 REST API 等,为 AI Agent 安全高效地操作浏览器提供了完整的技术方案。
|
11月前
|
监控 网络协议 安全
|
数据挖掘 Python
时间序列分析中的互相关与相干性分析:前导-滞后关系的理论基础与实际应用
时间序列数据在现代数据分析中广泛应用,从金融市场到生物医学领域。本文重点介绍两种分析工具:互相关和相干性分析。互相关用于量化两个时间序列的时域关系,揭示前导-滞后关系;相干性分析则评估信号在频率域的相关性,适用于脑电图等研究。通过实际案例和Python代码示例,展示了这两种方法的应用价值。
1229 8
时间序列分析中的互相关与相干性分析:前导-滞后关系的理论基础与实际应用
|
前端开发 UED
next/dynamic的动态导入
next/dynamic的动态导入
LeetCode第17题电话号码的字母组合
该文章介绍了 LeetCode 第 17 题电话号码的字母组合的解法,通过分析得出可使用递归和回溯的思想解决,避免循环穷举的高循环次数,并给出了具体的编码实现,同时总结了该题较难理解,需要了解递归的本质,当嵌套循环层次多时可考虑递归。
LeetCode第17题电话号码的字母组合
|
XML Java Maven
MockedStatic 用于模拟静态方法
`MockedStatic` 是 Mockito 3.4.0 版本引入的一个功能,用于模拟静态方法。在之前的 Mockito 版本中,模拟静态方法是一项困难的任务,通常需要借助其他工具如 PowerMockito。但是,从 Mockito 3.4.0 开始,你可以使用 `MockedStatic` 类轻松地模拟静态方法。 以下是如何使用 `MockedStatic` 模拟静态方法的示例: 1. 首先,确保你已经添加了 Mockito 的依赖项。对于 Maven 项目,添加以下依赖项: ```xml <dependency> <groupId>org.mockito</groupId
3205 9
|
应用服务中间件
2022年最新最详细在IDEA中配置Tomcat(含有详细图解过程)、建立使用IEDA建立一个Web项目的案例
这篇文章提供了在IntelliJ IDEA中配置Tomcat服务器的详细步骤,包括添加Tomcat Server、选择安装路径、添加项目Artifact,以及创建和展示Web项目的流程。

热门文章

最新文章