系统安全实战:破解交换机密码的全过程交换机和路由器都需要有一定的安全保证,也就是说要及时为他们配置合理的密码,那么如果这个密码忘记了怎么办呢?笔者就遇到过这么一次,由于岗位调动,以前的网络管理员离开了本部门,却把交换机上设置了密码,而且没有告诉我这个接任的网络管理员。怎么办呢?送回厂商破解又太麻烦了。于是我亲手经历了一次破解密码的过程。一、网络环境公司使用实达的3500系列(具体型号是3548)交换机,在交换机上面连接了一台华为2621路由器,通过电信的光纤上网。实际情况这台实达3548交换机被以前的网络管理员设置了密码而没有告诉我。所以破解他的密码成为本篇文章的核心。二、准备工作由于整个工作需要断网,毕竟涉及到重新启动交换机等操作,所以选择时间在工作下班后的晚上23点。另外由于破解密码这类操作都必须使用CONSOLE控制台线来设置,所以地点只能是中心机房。笔者找到了实达3548设备的所有相关工具,包括安装说明与CONSOLE控制线等。三、实战破解密码根据笔者以往经验实达所有设备的使用和操作命令语句都应该和CISCO设备类似,所以原本以为按照破解CISCO设备密码的步骤就可以轻松搞定。谁知道一上手才发现原来差别还真不小。一般来说CISCO设备都是通过修改配置寄存器configurationregister来实现破解密码的操作。在实达交换机中根本不存在配置寄存器configurationregister这个概念。通过查询资料才发现,原来实达交换机是使用修改超级终端配置的方法来破解密码的。第一步:将实达交换机的配套CONSOLE控制线连接到设备的CONSOLE管理接口。第二步:将CONSOLE控制线的另一断连接到网络管理员调试使用的笔记本的COM串口上。第三步:进入笔记本系统桌面,点“开始-所有程序-附件-通讯-超级终端”。第四步:启动系统的超级终端后我们随便为新建立的连接起一个名字。第五步:在连接设置处的“连接时使用”地方通过下拉菜单选择刚刚使用CONSOLE控制线连接的端口。例如COM1口。第六步:在COM1属性设置窗口中我们对连接的参数进行配置。一般来说我们正常连接交换机应该采用每秒位数9600,数据位为8,奇偶校验是无,停止位是1,数据流控制是无。不过要是想破解实达交换机的密码的话就需要修改这些数值。将PC超级终端串口速率设成57600,其他和上面写的相同即可。第七步:使用终端连接到交换机后,再打开交换机的电源,在交换机启动后进行自检时立即按下“ESC”键多次进入交换机的监控模式。终端界面将出现多个选项,包括一些基本的初始化设置。小提示刚开始笔者按照第七步的步骤尝试并没有成功,超级终端界面总是显示很多个“。。。。。”。后来才发现原来交换机必须在超级终端连接后才能加电启动,如果先开交换机再用超级终端连接的话则无法进入监控模式。第八步:根据菜单提示,将配置文件config.text上传(Upload)至网络管理员使用的笔记本,然后删除交换机上的配置文件Config.text。第九步:在笔记本上打开刚下载的保存在系统硬盘中的config.text文件,将以下语句enablesecretlevel15!E,1u_;C9&-8U0Henablesecretlevel155*r_1u_;C3vW8U0H删除然后保存退出。第十步:根据交换机监控模式的提示,将笔记本上修改的config.text再下载(Download)到交换机中。第十一步:重新将笔记本的超级终端串口速率设成9600,其他保持默认参数。交换机加电重启后,进入交换机配置界面,你就会发现我们可以重新配置交换机的密码了,包括远程TELNET的管理密码以及本机的特权密码。此后交换机的密码也将变成你刚刚配置的,而其它配置则保留不变,并不会影响任何使用。小提示在实际使用中笔者发现使用实达3550交换机的监控模式中的上传和下载文件功能并不稳定,经常出现传输失败的提示。所以笔者索性直接在监控模式中将config.text删除,然后重新启动交换机重新配置所有交换机信息。这种情况适用于交换机自身配置不多也不复杂,另外网络管理员也需要对设置语句比较熟悉。总结经过本次实战破解交换机密码的操作,笔者再次明白了对于路由交换设备来说,不同厂商操作程序和步骤绝对是不同的,即使命令语句类似但是在其他高级操作上还是大相径庭的。因此本篇文章介绍的所有内容仅仅是针对实达路由器与交换机,如果你遇到的是其他设备则需要采取其他的方法来解决。随着因特网规模的不断扩大,网络与我们的生活已经越来越近,许多政府、学校和公司都组建了自己的信息网络,这使得交换机和路由器这一网络设备的使用越来越广泛。在使用交换机和路由器的过程中经常会出现忘记密码的事情,使维护人员无法登录,影响工作的进一步开展。本节将介绍恢复交换机密码的思路和步骤。前任网络管理员离职造成交换机密码丢失众所周知,交换机和路由器都需要有一定的安全保证,也就是说,要及时为它们配置合理的密码,那么,如果这个密码忘记了怎么办呢?某公司的网络管理员离职,新招聘的网络管理员准备重新配置交换机的一些参数。但发现其中多台交换机的密码与密码本的记录不一致。公司所有的网络设备大致有3个密码,很多人都帮助猜测这个密码,分别尝试了原网络管理员的生日和一些默认密码,但都无法登录,如图所示。2008/10/16/1986c2ef-da1d-4512-a004-4d6d156f709d.jpgborder=0图交换机登录密码错误解决前提:不能破坏交换机原配置文件以这家公司网络管理的情况来看,极有可能是没有交换机和路由器运行配置文件的备份,因此需要在不破坏交换机配置文件的情况下更改,并配置一个新的口令。另外,这家公司所用的网络设备品牌很多,华为、实达和思科三分天下。1.密码恢复原理所有的Cisco路由器都具有一个位于NVRAM中的16位软件寄存器。默认情况下,配置寄存器设置是从闪存加载CiscoIOS,并且从NVRAM查找并加载startup-config文件。在动手恢复密码之前,首先要进一步了解IOS的特性管理。1)操作系统模式路由器可以加载3种类型的操作系统:(1)全功能的IOS一般在闪存中,可以放在TFTP服务器中;应用于产品的全功能的普通IOS。(2)限制功能的IOS一般在ROM中具备基本的IP连通性,用于闪存出现故障而用户需要通过IP连接来复制一份新的IOS到闪存中的情况,称为RXBOOT模式。(3)ROMMonitor通常用于CiscoTAC的低级调试及口令恢复,称为ROMMonitor模式。对于许多初学者来说,不建议使用Cisco路由器的ROMMonitor模式。原因很简单:一是我们并不经常用到该模式,对其相关操作不熟悉;二是在ROMMonitor模式下的操作失误,往往会对路由器造成致命的伤害(比如破坏Flash中的IOS文件,导致系统崩溃)。2)IOS启动顺序IOS软件包的启动顺序如下所述,大致分为4步。第1步:路由器执行加电自检(POST)以查找和验证硬件。第2步:路由器从ROM中加载并运行自引导程序代码。第3步:路由器加载IOS或其他软件。第4步:路由器找到配置文件并将它加载到运行配置中。具体的启动顺序可能还要复杂一些,如下图所示。图路由器启动路程图路由器在每次加电或重新启动时都试图全部完成这4步。路由器管理员不能更改POST代码及其功能。注意在自引导程序代码的位置,要加载的IOS及配置文件是可以改变的,但是自引导程序代码和初始配置几乎总是放在它们默认的位置上,也就是说,自引导程序代码放在ROM里,而初始配置一般都放在NVRAM中。因此,IOS或其他软件的位置就成了一般情况下唯一需要改动的部分。3)寄存器值得设定下面讨论配置寄存器的设置及如何使用这些设置恢复路由器的口令。配置寄存器的16位从左到右依次为15、14、13、……、0。Cisco路由器默认的配置设置是0x2102(0x表示是十六进制)。也就是说,第13位、第8位和第1位的值是1,如表6-16所示。表6-16寄存器位寄存器2102位值1514131211109876543210二进制0010000100000010各软件配置位的意义如表6-17所示。注意第6位用于忽略NVRAM的内容。此位既可用于口令恢复。表6-17各软件配置位数值与解释位十六进制解释0~30x0000~0x000f启动字段(参见表6-18)60x0040忽略NVRAM内容70x0080启用OEM位80x0100禁用中断100x0400IP广播全为零5,11~120x800~0x1000控制台线路速率130x2000如果网络启动失效则启动默认ROM软件140x4000IP广播不包含网络号150x8000启动诊断信息并忽略NVRAM内容注意,位于配置寄存器0~3位的启动字段控制路由器的启动顺序,表6-18中进一步说明了各个位的用途。表6-18启动字段及其用途启动字段意义用途00ROM监控模式若要启动时采用ROM监控模式,将配置寄存器的值设置为2100。必须用b命令来手动启动路由器。路由器将显示rommon作为提示01从ROM启动映像文件若要启动存储在ROM中的IOS映像文件,将配置寄存器的值设置为2101。路由器将显示router(boot)作为提示02~F指定默认启动文件名任何从2102~210F的值将告诉路由器使用NVRAM中指定的启动命令2.路由器密码恢复这里假设之前对路由器寄存器的值作了修改,使用showversion命令,检查当前配置寄存器值,如下图所示:最后一行的信息是配置寄存器的值,在这里是0x2142,即下次启动时不加载startup-config文件,正常情况下的值应该是0x2102。由此可见,只要中断路由器的启动过程,跳过startup-config中包含的密码验证,也就意味着密码将不在起作用了。图6-4检查寄存器值默认的配置寄存器的值是0x2102,意味着第6位是关闭的(值为0)。在默认情况下,路由器会查找并加载存储在NVRAM中的路由器配置文件(startup-config文件)。若要恢复口令,需要开启配置寄存器的第6位,告诉路由器忽略NVRAM的内容。开启了第6位的配置寄存器值是0x2142。以下是口令恢复的主要步骤。第1步:启动路由器并通过执行一个中断来中断启动顺序。第2步:修改配置寄存器开启第6位(值为0x2142)。第3步:重载路由器。第4步:进入特权模式。第5步:将startup-config文件复制为running-config文件。第6步:修改口令。第7步:将配置寄存器重设为默认值。第8步:保存配置。第9步:重新加载路由器。3.交换机密码恢复交换机口令恢复的原理类似于路由器,交换机恢复密码的过程主要是通过停止引导过程,不使用配置文件的方式来实现,但是具体的操作方法不同。CatOS与IOS交换的密码恢复过程也是不同的,由于这家公司中存在了几个不同型号的Cisco设备,因此在后面的操作过程中要针对不同型号制订恢复策略。实战过程:破解路由、交换机密码由于远程破解这些设备的密码的机会很小,网管员放弃了这种想法,携带好串口电缆和笔记本来到机柜旁边,开始逐步破解各个设备的密码。首先需要把串口电缆的一端插在网络设备背面的Console口中,另一端插在普通电脑的串口里。当交换机加电后,操作系统中使用超级终端程序。打开超级终端,在设定好连接参数后,就可以进行密码破解了。1.Cisco2500和2600路由器第1步:启动路由器并执行一个中断。当路由器重新启动时,按下笔记本中的【Ctrl+Break】键,中断路由器启动,这时能看到一个提示符Rommon1(这是2600系列的路由器提示);而对于2500系列的路由器提示符是。第2步:修改配置寄存器。对于2600系列,命令是Rommon1Config-register0x2142;对于2500系列命令为o/r0x2142。第3步:重载路由器并进入特权模式。在2600系列上,输入reset。在2500系列路由器上,输I。路由器将重新加载,此时会询问是否要使