用户实际环境中的一台思科4506交换机无法登录,由于维护人员也不记得修改后的密码,只能对系统进行破解。
环境:
Cisco Catalyst 4506E交换机,引擎为WS-X45-SUP8-E,系统版本是cat4500es8-UNIVERSAL-M
破解步骤:
重启交换机,按ctrl+c中止交换机的启动过程,如下所示:
Verifying FPGA (P) Signature ...................... PASSED
Verifying ROMMON (P) Signature ......... PASSED
************************************************************
* *
* Rom Monitor *
* Copyright (c) 2012-2013 by Cisco Systems, Inc. *
* All rights reserved. *
* *
************************************************************
Rom Monitor (P) Version 15.1(1r)SG1
Compiled Wed 14-Aug-13 17:15 [RLS]
System : WS-X45-SUP8-E Slot [1]
Chassis : WS-C4506*E Mod [3][6]
Revision : CPU 2.1 BOARD 4.0 FPGA 3.15F2.9155
Memory : 4096 MB
Date : Sun Mar 05 21:32:01 2017
Type Control-C to prevent autobooting....
[CTRL-C]
Autoboot cancelled.........!!!
rommon 0 >
通过set命令查看系统当前的环境变量如下所示:
rommon 0 >set
PS1=rommon ! >
Fa1Enable=1
RommonVer=15.1(1r)SG1
ConfigReg=0x2101
BOOT=bootflash:cat4500es8-universal.SPA.03.03.00.XO.151-1.XO.bin,1;
DiagMonitorAction=Normal
RET_2_RTS=14:59:24 GMT Sat Aug 27 2016
RET_2_RCALTS=
BootedFileName=flash1:/USER/cat4500es8-universal.SPA.03.03.00.XO.151-1.XO.bin
ConsecPostPassedCnt=34
注意寄存器值是0x2101
使用confreg命令对系统进行配置,如下所示:
rommon 1 >confreg
Configuration Summary :
=> load rom after netboot fails
=> console baud: 9600
=> autoboot from: the first file from internal flash device
do you wish to change the configuration? y/n [n]: y
enable "diagnostic mode"? y/n [n]: n
enable "use net in IP bcast address"? y/n [n]:
disable "load rom after netboot fails"? y/n [n]:
enable "use all zero broadcast"? y/n [n]:
enable "break/abort has effect"? y/n [n]:
enable "ignore system config info"? y/n [n]: y
change console baud rate? y/n [n]:
change the boot characteristics? y/n [n]:
Configuration Summary :
=> load rom after netboot fails
=> ignore system config info
=> console baud: 9600
=> autoboot from: the first file from internal flash device
do you wish to save this configuration? y/n [n]: y
You must reset or power cycle for new configuration to take effect
其它选项可以直接回车,配置完之后提示必须重启才能生效,不过重启前可以用set命令再次查看一下环境变量,如下所示:
rommon 2 >set
PS1=rommon ! >
Fa1Enable=1
RommonVer=15.1(1r)SG1
BOOT=bootflash:cat4500es8-universal.SPA.03.03.00.XO.151-1.XO.bin,1;
DiagMonitorAction=Normal
RET_2_RTS=14:59:24 GMT Sat Aug 27 2016
RET_2_RCALTS=
BootedFileName=flash1:/USER/cat4500es8-universal.SPA.03.03.00.XO.151
-1.XO.bin
ConsecPostPassedCnt=34
ConfigReg=0x2141
此时会发现前后寄存器的值已经发生了变化,可以通过boot命令重启系统
重启后:
Press RETURN to get started!
Switch>
此时可以看到系统绕过了配置文件,后面我们可以通过
switch#copy startup-config running-config
将配置加载到系统中,然后通过命令直接修改密码即可,当然在完成后我们必须修改寄存器值
config-register 0x2101
重新启动系统,会发现密码已经破解完成。
*************************************************************************
其实sup8引擎的密码破解与其它系列引擎的密码破解方法相似,可以参照官方的文档进行查看,但是如果是两台系统做的VSS,那么密码破解过程就会有些不同,不过官方也给出了相应的文档,具体请查阅。
*************************************************************************