http://onlyjoking.blog.51cto.com/1826144/430890

密码是写进配置文件nvarm:startup-config   或flash:config.text 中的,

1。正面交锋,把配置文件给改了(改名换姓、偷天换日、偷梁换柱)

上电后mode键,或ctrl+break , 打断它正常启动

rename    flash:config.text     config.bak  改掉配置文件名字或后缀名就它就不生效了

reset重启

现在可以进去改密码啰,重新设一个 enable   secret  xxx

改完后把配置搬回来

copy  flash:config.bak  running-config   把它复制到当前配置

write             写进startup-config配置文件

reload后就行啦

 

2。旁敲侧击,绕过它,绕过配置文件。不跟有密码的配置文件正面冲突,打不过,还躲不过吗?

密码是写进配置文件startup-config中的,

startup-config是放在NVRAM存储器中的,

存储器像一栋房子,startup-config就放在其中一个房间里,

这个房间有个地址,就是房间号,一般是0x2102,

每次开机cpu都拿着寄存器register给的房间号到房间中加载配置文件,

一般都默认到存储器0x2102号房,就是startup-config的房间

要想密码不生效,

只要不加载配置文件不就行了?

对。

那怎么不加载呢?

只要启动时,偷偷把寄存器register提供给cpu的房间号给改了,让cpu不去startup-config房间不就行了?

 

 

 

 

思路就是:

路由器启动可以把寄存器指向配置文件的地址改掉,由此跳过配置文件,进去改密码,改完让他正常加载配置文件

 

 

1。上电####后  ctrl+break  进入rommon模式    rom  monitor监控(也是先打断它正常启动)

 

2。confreg 0x2142    改寄存器register ,跳过配置进入(改寄存器register 提供给cpu的房间号,改成0x2142)

3。reset 重启

4。进去改密码啰

5。config-register 0x2102       设完新的密码后,把寄存器register 提供给cup的房间号给换回来,让cpu下次启动还去startup配置文件房间,正常重新使用配置文件,因为新的密码已经写进去了