首页    新闻    下载    文档    论坛     最新漏洞    黑客教程    数据库    搜索    小榕软件实验室怀旧版    星际争霸WEB版    最新IP准确查询   
名称: 密码:      忘记密码  马上注册
安全知识 :: 黑客教程

Cisco路由入侵艺术


http://www.gipsky.com/
奔流不息的网络里,Web绽放着绚丽的色彩、电子邮件呼哧的穿梭网际、语音电话、网络会议、文件传输,各种数据交织错落,形成辉煌的数字世界。在喧闹的数字世界底层,存在一种精致的次序,这种次序决定着数据的选路、异构介质衔接、协议的交互等功能。而这一次序的缔造者正是布满整个网络的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>。于是,<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>成了数据通信的交通亭,也成为了众多黑帽(Blackhat)争夺的目标之一。

Cisco<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>占据这网络世界的绝对位置,于是安全焦点效应激发了路由入侵与防御而产生的精美艺术。下面我将由浅入深的方式讲述Cisco入侵的手段以及防御策略。



【<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>感冒】

<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>从本身的IOS来说,并不是一个健壮的体系,因而它偶然也会让自己感冒发烧。系统感冒发烧起来,反抗力自然就降低不少。



*IOS自身欺骗

Cisco<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>是用IOS系统来实现路由的细节功能,因此它是路由系统的灵魂。Show命令的在线系统方式却为我们打开一个<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=偷窥 target="_blank"><font color=red>偷窥</font></a></b>之门。

众所周知,Cisco<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>中,一般用户只能查看<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的很少信息。而能进入特权模式的用户才有资格查看全部信息和修改路由。一般模式下,show的在线帮助系统不会列表所有可用的命令,虽然75个show的扩展参数只能用于特权模式下(enable),实际上只有13个受到限制。这意味着一般用户(非特权用户)可以查看访问列表或其他路由安全相关信息。

重要安全相关的ACL信息可以被登录路由的非特权用户查看,诸如:

#show access-lists

#show ip prot

#show ip ospf dat

#sh ip eigrp top

等命令可以在非特权模式下泄露网络敏感信息。通过这些命令,我们能得出<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>配置的大致情况,这对采取进一步的入侵起到辅助作用。不过由于这种方式需要用户已经有一个登录帐户,因此得到这样的信息有一定难度。



*WCCP暗道

Cisco在IOS 11.2版本中引入WCCP(Web Cache Control Protocol),为Cisco缓存引擎提供协议通信。Cisco缓存引擎为www提供透明缓存服务。缓存引擎用WCCP来和其他cisco<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>通信。<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>把HTTP数据发送到缓存引擎主机中。

虽然这种方式默认是关闭的。假如使能(enable)的话,那么WCCP本身是没有认证机制的。<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>将会把每一个发送合法缓存引擎类型的Hello包的主机认为缓存引擎,于是把HTTP数据缓存到那台主机。这意味着恶意用户可以通过这种方式获取信息。

通过这种方式,攻击者可以截获站点认证信息,包括站点<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>;替代实际WEB内容为自己设计的陷阱;通过路由彻底破坏Web提供的服务。这种方式,可以完全规避登录烦琐的攻击方法,对Web提供全面而且致命的打击。

我们既可关闭WCCP的启用机制,也可通过ACL阻止WCCP发送HTTP流量给不信任主机来防止这样的恶劣情况发生。





*HTTP服务的困惑

Cisco在IOS版本加入了远程治理路由的Web特性,这对于新羽(newbie)的治理员来,无疑是值得兴奋的事情。但引入方便的同时,隐患也随之进入。

1.基于拒绝式服务攻击的HTTP的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

    Cisco路由启用(enable)远程WEB治理,很轻易遭受DoS。这种DoS能导致<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>停止对网络请求的响应。这是功能是Cisco路由的内嵌功能。但启用这个特性,通过构造一个简单的Http请求就会造成DoS攻击:

<a href="http://<router-ip>/%%" target=_blank>http://<router-ip>/%%</a>

这种请求导致路由停止响应,甚至引起<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>执行硬重置(hard reset)。



2.基于HTTP服务器查询的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

Cisco 安全建议小组在2000年10月30日公布了这个<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>。IOS 11.0引入通过Web方式治理路由。”?”是HTML规范中定义的CGI参数的分界符。它也被IOS命令行接口解释成请求帮助。在IOS 12.0中,当问号邻接于”/”,URL解释器就不能正确解释其含义。当一个包括”?/”的URL对<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>HTTP服务器进行请求,并且提供一个有效的启用<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=口令 target="_blank"><font color=red>口令</font></a></b>,则<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>进入死循环。因而引起路由崩溃并重起。

假如http起用,浏览

<a href="http://route_ip_addr/anytest?/" target=_blank>http://route_ip_addr/anytest?/</a>

并且提供特权<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=口令 target="_blank"><font color=red>口令</font></a></b>,则可以导致DoS攻击,导致路由停机或者重启。

除了让路由死亡之外,Http额外提供了一种可怕权限提升的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,如下所论。



3.Cisco IOS 认证<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

    当HTTP服务器启用并且使用本地用户认证方式。在某些条件,可以绕过认证并执行设备上的任何命令。用户可以对设备完全的控制。所有命令都将以最高特权执行(level 15)。

使用username 和password的路由设备帐户认证方式,构造如下URL:

<a href="http://router_ip_addr/level/xx/exec/" target=_blank>http://router_ip_addr/level/xx/exec/</a>….

(注:xx代表16至99之间的84种不同的组合攻击,因为<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>硬件类型众多,而IOS版本也存在不同,因此针对不同的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>类型,攻击组合数字不同。)

通过这种方式,攻击者可以完全控制路由并可以改变路由表配置。这种可怕的事实让网管也感到惊悸。这种完整的控制方式将是网站数据通信枢纽的致命一击。



虽然Http<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>带来如此之多的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,但这种<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>最主要原因是因为启用http服务器治理路由的缘故,由于这种治理是种命令行方式的替代物,因此对于熟练的网管来说,没有必要启动这种危害性很大的服务。

#no ip http server 的路由配置也成为时髦的安全配置语句。





【在SNMP中行走】

谈到Cisco路由的安全性,我们就必须涉及到SNMP这个看似简单,实际扮演着重要角色的协议,正因为它的存在,<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的入侵变的丰富有趣多了。



*SNMP基础简介:

每个SNMP启用的路由设备都包含一个叫做治理信息模块(MIB),这是一种包含简单等级的数据目录结构,在这种树结构中包含设备各种信息。SNMP基本的命令GET,可以检索MIB的信息,而SET命令则可设置MIB变量。一种用于监控和治理CISCO路由的的软件工具是MRTG,至于如何配置其用于Cisco设备的监控可以参阅LOG的《怎样在Windows NT/2K下安装MRTG》一文(<a href="http://www.2hackers.org/cgi-bin/2hb/t ... rum=7&topic=212" target=_blank>http://www.2hackers.org/cgi-bin/2hb/t ... 7&topic=212</a>)。

在<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>中配置SNMP的方法如下:

(conf)#snmp-server community readonly RO

(conf)#snmp-server community readwrite RW

SNMP协议通过社区(community)字串的概念赋予对设备MIB对象访问的权限。上例中,设置了只读访问的社区字串readonly和可进行读写操作的readwrite社区字串。而大部分治理员喜欢使用public和private设置只读字串和读写字串,疏不知,这样轻易的结果将给网络带来巨大的波动。我们可以在【触及RouterKit】部分清楚熟悉到这种危害。

通过SNMP我们可以方便治理和监控Cisco的设备(参阅Log文章介绍),同时也给攻击者带来可乘之机。



*Cisco IOS软件SNMP读写ILMI社区字串<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

ILMI是一个独立的工业标准,用于配置ATM接口。MIB是一个树形结构,包括操作(只读)数据以及配置(读写)选项。在有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的设备上,通过在SNMP请求中指定一个ILMI社团字符串,可以访问整个树形治理结构中三个特定部分的对象:MIB-II系统组,LAN-EMULATION-CLIENT MIB以及PNNI(Private Network-to-Network Interface)MIB。每一部分的子集对象都可以使用相同的“ILMI”社团字符串修改。

MIB-II系统组包括设备本身的基本信息。能被修改对象的数目虽然是有限的。例如包括:

system.sysContact.

system.sysLocation.

system.sysName.

Cisco IOS软件版本11.x和12.0答应使用一个非文档的ILMI社区字串未经授权就查看和修改某些SNMP对象。其中就包括诸如上面所说的"sysContact","sysLocation",和"sysName"对象,虽然修改它们不会影响设备的正常操作,但假如意外修改可能会产生混乱。剩下的对象包含于LAN-EMULATION-CLIENT和PNNI MIBs,修改这些对象可以影响ATM配置。假如没有防止未授权使用ILMI社团字符串,一台有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>可能会遭受DoS攻击。

假如SNMP请求可以被有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的设备接收,那么没有适当授权,就可以访问某些MIB对象,违反了保密性。没有授权就可以修改可读MIB对象的子集,破坏了完整性。而更具有危害性的方法是向SNMP端口发送大量的读和写请求。有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的设备,假如没有防范接收SNMP包的措施,就会遭受DoS攻击,导致路由重载。



至于如何查看这些对象的信息,可以参阅【触及RouterKit】部分。



*Cisco IOS软件层叠SNMP共享社区字串<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

Cisco 配置文件中,意外创建和暴露SNMP共享字符串,可以答应未授权地查阅或者修改感染的设备。这种<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>是调用SNMP函数中的缺陷引起的。SNMP利用“community”的标记来划分“object”组,可以在设备上查看或者修改它们。在组中的数据组织MIB。单个设备可以有几个MIBs,连接在一起形成一个大的结构,不同的社团字符串可以提供只读或者读写访问不同的,可能重叠的大型数据结构的一部分。

启用SNMP,键入“snmp-server”命令时,假如社区在设备上不是以有效的社区字串存在,就会不可预料地添加一个只读社区字串。假如删除它,这个社区字串将会在重载设备时重新出现。

缺陷源于SNMPv2的“通知(informs)”功能的实现,这个功能包括交换只读社区字符串来共享状态信息。当一个有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的设备处理一条定义接收SNMP "traps"(陷阱消息)主机的命令时(常规snmp-server配置),在trap消息中指定的社团也还是配置成通用,假如它在保存配置中没有定义。即使社区在前面被删除并且配置在系统重载前保存到存储器,也会发生这种情况。

当通过"snmpwalk"(一种检测SNMP配置正确性的工具),或者使用设备的只读社团字符串遍历基于视图的访问控制MIB来检查设备时,就会泄漏读写社团字符串。这意味着知道只读社区字串答应读访问存储在设备中的MIB,导致信息泄露。而更为严重的是,假如知道读写社区字符串就可以答应远程配置的路由,可以绕开授权认证机制,从而完全控制<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的整体功能。



题外话:一个被发现<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>很具有讽刺意味,使用nmap等安全扫描工具对路由进行扫描,居然会产生DoS的攻击。有爱好的朋友可以参阅:<a href="http://online.securityfocus.com/archi ... -11-29/2002-12-05/1" target=_blank>http://online.securityfocus.com/archi ... 29/2002-12-05/1</a>



【另类攻击】

前面的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>综述,似乎我们都在围绕着如何获得路由配置信息而讲述,因为得到一个完整Router-config,那么我们便把握了路由的世界。下面的入侵方法则另辟奚径。



*TFTP的艺术

Cisco的熟练治理员,一般习惯于Cisco免费提供的TFTP服务器(<a href="http://www.cisco.com/pcgi-bin/tablebuild.pl/tftp)" target=_blank>http://www.cisco.com/pcgi-bin/tablebuild.pl/tftp)</a>,而Cisco培训的书籍总会介绍使用copy running-config tftp的命令来保存路由配置文件。于是获得TFTP就有可能获得路由配置文件。

幸运的是,TFTPD守护程序存在目录遍历的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,答应远程用户从目标系统中获得任意文件。我们可以通过下面简单方法获取目标系统中的任何文件:

Exploit

tftp> connect target_machine

tftp> get cisco-conf.bin

Recieved 472 bytes in 0.4 seconds

tftpd> quit

  而这个免费软件还没有任何修补措施,因此借助这种方式,可以不费吹灰之力就可能得到一份完整的路由配置存档。



*SSH安全感

通过Telnet治理方式,造就了一批<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>窃听者。通过明文的ASCII的网络传输形式,窃听者随便放置嗅探装置(sniffer),就可安闲的等待着登录用户,<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>以及各类敏感信息自动送到面前。SSH<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>方式在<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的应用,大大的消灭了这种嚣张的气焰。

但入侵与反入侵本来就是个古老的话题。于是,SSH也开始有了危机感。Cisco SSH存在着三个精妙且复杂的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,这种攻击的手法所涉及的知识已经大大超出本文的范畴,所以以简略的形式给予说明并指出应用<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的文章出处。(这些<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>整理自中国<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=网络安全 target="_blank"><font color=red>网络安全</font></a></b>响应中心CNSAN,<a href="http://www.cns911.com/holes/router/router01062902.php" target=_blank>http://www.cns911.com/holes/router/router01062902.php</a>,在此对<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>整理工作者的无私工作给予致敬。)

1.RC-32完整性检查<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>

参考:<a href="http://www.core-sdi.com/files/files/11/CRC32.pdf" target=_blank>http://www.core-sdi.com/files/files/11/CRC32.pdf</a>

作者运用及其复杂的数学方式来证实这种<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的存在性,看懂这片文章需要相当的数学功底,本人在看这篇文章的时候也是头痛万分。不过文章中的理论分析十分出色,初学者可以省略此<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>。

CNSAN的文章则指出“要使这种攻击成功,攻击者要拥有一或者2个已知chipertxt/plaintext串,这一般并不难,因为每个进程启动时的问候屏幕是固定并可探测的,这样可以通过SNIFF进程来获得相应的chipertext”。



2.通信分析

参考:<a href="http://online.securityfocus.com/archive/1/169840" target=_blank>http://online.securityfocus.com/archive/1/169840</a>

CNSAN的文章论述:“要利用这个<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,攻击者必须捕捉信息包,这样可以分析使用的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>长度并用暴力手段猜测<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>”。

在SSH中封装明文数据时,数据从8字节的边界上开始封装并对数据进行<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>。这样的包在明文数据长度之后进行某中数学封装,SSH在<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>通道内以明文的方式传输,结果,能检测SSH传输的攻击就能获得SSH内的内容。文章还友善的给出了Patch程序来修正这个<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>。



3.在SSH 1.5协议中KEY恢复

参考:<a href="http://www.securityfocus.com/archive/1/161150" target=_blank>http://www.securityfocus.com/archive/1/161150</a>

CNSAN的文章论述:要利用这个协议,攻击者必须能嗅探SSH进程并能对SSH服务器建立连接,要恢复SERVER KEY,攻击者必须执行2^20 2^19=1572864 连接,由于KEY是一小时的生存时间,所以攻击者必须每秒执行400此连接。

这种技巧的要求非常高,通常的远程入侵中,使用KEY来获得SSH会话过程的概率相当之低。



*本地<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>劫持

    在所有入侵中,这种类型的入侵活动可谓是蓄谋以久的野蛮做法。方法本来的意图是用于治理员忘记<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>后的恢复措施。而技术做为双刃剑的一面,便在于我们如何使用它。

    假如你有一台笔记本电脑,你有一根与<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>相应类型的连接线,那么你配备了入侵路由的武器。剩下的时间,你将思考如何闭开网管的眼睛,把连接线与<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>连接。以后的动作,需要你行动迅速了。(以25xx系列路由为例)

1.切断<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的电源。

2.连接计算机与<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>。

3.打开超级终端(CTL-Break in Hyperterm)。

4.在启动<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的30秒时间内,迅速按CTL-Break组合键,使<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>进入rom monitor 状态,出现提示符如下:

Followed by a '>' prompt...

5.输入 O/R 0x2142,修改配置注册器(config register)<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>从Flash

memory引导。

6.输入I,<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>初始化设置后重新启动。

7.输入系统配置 对话提示符敲no,一直等提示信息显示: Press RETURN to get started。

8.输入enable 命令,出现Router# 提示符。

这是,我们可以完全使用show命令查看路由中的一切配置,并可转储到计算机上。假如使用了enable的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>方式,虽然现在无法看,但可以使用工具进行<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>。当然,粗鲁的做法是直接修改:

Router#conf term

Router(conf)#enable password 7 123pwd



进行完以上操作,别忘了恢复路由的正常状态,否则网管很快就能发现问题所在:

Router(conf)#config-register 0x2102

Router(conf)#exit



至此,我们从几个方面试图获得整个路由的配置,那么如何进一步扩大入侵的战果,一些令人激动的工具给我们带来的无比愉悦的方便。



【触及RouterKit】

就如攻击视窗系统人喜欢用NTRK,攻击Linux的人则喜欢用rootkit,Router的世界也有这优秀的Kit,让人爱不释手。



*<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b><b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>机

得到路由配置文件后,假如看见在特权模式的配置中可能会有:“enable password 7 14341B180F0B187875212766”这样的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>字串。那么恭喜了,enable password命令的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b><b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>机制已经很古老,存在极大安全<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>。通过一些简单的工具就可以得到<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>的特权<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>。

实用工具资源:

SPHiXe's 的'C'版本<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>机:<a href="http://www.alcrypto.co.uk/cisco/c/ciscocrack.c" target=_blank>http://www.alcrypto.co.uk/cisco/c/ciscocrack.c</a>

Riku Meskanen的Pearl版本:<a href="http://www.alcrypto.co.uk/cisco/perl/ios7decrypt.pl" target=_blank>http://www.alcrypto.co.uk/cisco/perl/ios7decrypt.pl</a>

BigDog的Psion 3/5 版本:<a href="http://www.alcrypto.co.uk/cisco/psion/cisco.opl" target=_blank>http://www.alcrypto.co.uk/cisco/psion/cisco.opl</a>

Major Malfunction的Palm-Pilot<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>机:<a href="http://www.alcrypto.co.uk/cisco/pilot/ciscopw_1-0.zip" target=_blank>http://www.alcrypto.co.uk/cisco/pilot/ciscopw_1-0.zip</a>

Boson Windows版本GetPass:<a href="http://www.boson.com/promo/utilities/ ... getpass_utility.htm" target=_blank>http://www.boson.com/promo/utilities/ ... ass_utility.htm</a>

Mudge描述的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>生成原因:<a href="http://www.alcrypto.co.uk/cisco/mudge.txt" target=_blank>http://www.alcrypto.co.uk/cisco/mudge.txt</a>

从这些资源,得知,password的安全机制是如此的薄弱,因此,在现在的配置环境中一般采用enable secrect较新安全<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>机制。



*RAT的丰厚礼物

RAT是系统治理<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=网络安全 target="_blank"><font color=red>网络安全</font></a></b>研究机构(SANS)开发的免费路由审核工具(route audit tools)。这套工具能自动和立即的检索路由配置的情况,并针对配置的问题给出极其详尽的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>发现和推荐修改配置,并能寻址SNMP的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>给予安全建议。这种安全的配置文档对于治理员和黑帽来说,都是非常珍贵的资料。

RAT是用Pearl语言编写而成,因此在Windows需要安装ActiveState Perl的环境。安装过程十分简单,对于路由的扫描结果以Html和ASCII文本格式给予用户查看。下面是扫描的具体实例。

Exploit:

C:\>perl c:\rat\bin\rat ?a ?u username ?w passwd ?e enablepass {router_ip_addr}

snarfing router_ip_addr...done.

auditing router_ip_addr...done.

ncat_report: Guide file rscg.pdf not found in current directory. Searching...

Linking to guide found at c:\rat/rscg.pdf

ncat_report: writing {router_ip_addr}.ncat_fix.txt.

ncat_report: writing {router_ip_addr}.ncat_report.txt.

ncat_report: writing {router_ip_addr}.html.

ncat_report: writing rules.html (cisco-ios-benchmark.html).

ncat_report: writing all.ncat_fix.txt.

ncat_report: writing all.ncat_report.txt.

ncat_report: writing all.html.

(注:-a参数扫描所有<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>选项,-u登录帐户,-w登陆<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>,-e特权模式<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>。扫描产生的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>检测报告和安全建议则使用ncat_report写入相关文件中。{router_ip_addr}是实际的路由IP地址)



可以说RAT 是IOS的安全配置检测工具,提供了具体的配置安全<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>,并提供Fix Script for {router_ip_addr}的修补脚本,这样周全的工具不仅是治理员的福音,也给入侵者带来巨大好处。假如入侵者得到这样一份周详的报告,情况会有多糟糕?

可惜的是,这样优秀的程序在对路由配置文件进行检索时,所用的snarf程序是以telnet的方式对配置文件进行检索,这样的话,任何传输过程都将是明文的方式,而程序的文档介绍中推荐使用的SSH协议本身也并不完善(可参阅【另类攻击】部分的介绍),这样就为攻击者提供了偷窃的途径,从而获得路由全面的明晰配置图,这样结果对于网管来说将是多么的不幸。因此我们需要谨慎的使用这个威力巨大的工具。

当然,这个优秀的免费工具带给我们的另一个丰厚的礼物便是程序中自动装入《路由安全配置指南》(RSCG)的PDF文档,里面详尽的Cisco安全路由配置文档介绍了路由的治理和安全配置方式,给出薄弱的路由配置配置说明。这种实惠既便利了安全工作者对于理解,也成为了攻击者利用<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>的极佳参考。



*终极力量Solarwinds

Solarwinds公司出品Solarwinds.net的全面产品中包容了针对许多治理监测Cisco设备的精美工具,良好的GUI、轻易操作的截面、还有Perfect的Toolbar(比较起庞大而复杂的Ciscowork治理软件,我偏向于Solarwinds提供的简单配置工具,当然Ciscowork假如被攻击者运用,那么破坏的威力简直可以搞拷一个大型网站的通信枢纽。至于Ciscowork的使用说明,因为篇幅问题,不在赘述)。

主要工具简介:

SNMP Dictionary Attack

SNMP字典攻击用于测试SNMP的社区字串的强度。在SNMP字典攻击中,攻击程序首先装载社区字串习惯用语字典和字典编辑器编辑的字典,然后按照字典排序进行猜解。



SNMP Brute Force Attack

SNMP暴力<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>程序将会以字母和数字的组合形式远程对SNMP的只读字串和读写字串进行穷举<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>,同时我们可以定义包括的字符和字串的估计长度,这样有助于加快<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>速度。



Router Security Check

路由安全检查程序能尝试的进入到<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>中并提示IOS是否需要升级,同时它也自动尝试只读和读写的SNMP社区字串。下面就是一个实际检测的结果:



IP Address202.xx.xx.xxSystem Namecisco7507Contact--Test Contact?010xxxxxxLocationCisco Internetwork Operating System Software IOS &#8482; RSP Software (RSP-AJSV-M), Version 12.0(7), RELEASE SOFTWARE (fc1)Copyright &copy; 1986-1999 by cisco Systems, Inc.Compiled Wed 13-Oct-99 23:20 by phanguyeRead-Only Community StringsILMIxxxxRead-Write Community StringsILMIXxxx

注:从结果看,我们获得了读写字串,这种利用方式在前面已经论述过,不在重复。使用x隐含了真实的属性资料。



Remote TCP Session Reset

可以远程显示<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>上的所有TCP活动连接,更有意思的是,假如得知SNMP社区的读写字串,这个程序可以随意切断TCP的连接,这种恶作剧也经常让人苦恼不堪。



Cisco Router Password Decryption

不言而喻,这个程序是用来<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>特权模式下的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>。至于如何取得<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>,请参阅【触及RouterKit】的说明。



当然,除了以上几种工具外,Solarwinds来集合了实用的Config Editor/View,upload Config,Download Config,Running Vs Startup Configs,Proxy Ping, Advanced CPU Load,Router CPU Load路由配置治理工具,通过工具名字我们不难得出这些工具的用途。



Solarwinds牛刀小试

这里将使用Solarwinds的工具组合进行一次高层次的入侵演习。不过这里的先决条件是,你已经通过各种<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>探测针方式获取了社区可读写的字串(粗鲁的做法就可利用通过Solarwinds SNMP暴力<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>方式来获取读写字串)。

首先,创建一个包含新<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>的文本文件:

enable password New*Password

注:这种设置甚至可以覆盖enable secret 5<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>设置,不清楚Cisco既然得知Password 7方式<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=加密 target="_blank"><font color=red>加密</font></a></b>是非常轻易<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=破解 target="_blank"><font color=red>破解</font></a></b>的,为什么还要保留这个遗物。



接着,在文件中输入修改登录<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>的语句:

line vty 0 4password New*Passwordlogin



启动Solarwinds自带的TFTP服务器,把创建的文件放置到服务器的根目录中。并在Config uploader实用工具中输入路由地址,读写字串和TFTP服务器的地址,并在TFTP目录中选择刚才创建的文件,按“Copy config PC to Router/Switch”。大致过程如图示:



通过这种隐蔽的方式,我们更改了<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>的登录<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>和特权模式<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>。这种把戏经常让通过远程治理路由的网管大吃一惊,但重启路由后我们设置的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>就失效了。原因在于我们是在Running-conf模式下修改路由配置,而没有保存到NVRAM中。当然,许多过激的做法干脆使用修改的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=密码 target="_blank"><font color=red>密码</font></a></b>登录<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=路由器 target="_blank"><font color=red>路由器</font></a></b>,把配置文件写(write)到NVRAM。强权控管路由设备。



【几点安全建议】

综述了这些触目惊心的<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>和威力无比工具的应用,我们是否应该行动起来,采取适当的措施来保护自身利益呢?

*关于IOS的问题

1.通过no ip http server取消http服务,消除Http带来的隐患。

2.限制SNMP访问配置

access-list 10 permit 204.50.25.0 0.0.0.255snmp-server community readwrite RW 10 (通过ACL限制受信主机访问)###########监测非授权的SNMP访问配置##########snmp-server enable traps (设置陷阱)snmp-server trap-authentication (如何认证失败,告诉路由发送陷阱。)snmp-server host 204.50.25.5 (陷阱消息接受工作站)(注:ciscoworks 工作站可以截获这些信息。)

3.及时升级Cisco的IOS程序或者修补程序

4.推荐阅读RAT中的RSCG文档建议

5.利用安全工具对路由进行安全检查。

关于安全的建议问题,不是一劳永逸的事情,<b><a href=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=漏洞 target="_blank"><font color=red>漏洞</font></a></b>在暗处挖掘着,新的技术在不断膨胀着,因此以上的几点建议只作为参考,实际的运用当中我们应该根据实际情况作出正确的策略。



【参考资料】

1.<a href="https://alerts.securityfocus.com/" target=_blank>https://alerts.securityfocus.com/</a>

2.<a href="http://www.cisco.com/warp/public/" target=_blank>http://www.cisco.com/warp/public/</a>

3.<a href="http://www.insecure.org/news/P55-10.txt" target=_blank>http://www.insecure.org/news/P55-10.txt</a>

4.<a href="http://www.sans.org/" target=_blank>http://www.sans.org/</a>

5.<a href="http://www.networkingunlimited.com/white007.html" target=_blank>http://www.networkingunlimited.com/white007.html</a>

6.<a href="http://us.cns911.com/holes/router/" target=_blank>http://us.cns911.com/holes/router/</a>

7.<a href="http://www.securiteam.com/" target=_blank>http://www.securiteam.com/</a>



注:几点说明,由于许多网站里关于路由的资料文章很多,因此我只给出网站地址,不给出具体的文章出处,烦劳各位朋友到相关网站查询。
<< Do All in Cmd Shell QQ尾巴病毒核心技术的实现 >>
评分
10987654321
API:
gipsky.com& 安信网络
网友个人意见,不代表本站立场。对于发言内容,由发表者自负责任。

系统导航

 

Copyright © 2001-2010 安信网络. All Rights Reserved
京ICP备05056747号