路由器作为企业网络的中枢设备,它的重要地位是不可替代的。为了保护路由器不受侵害,很多路由器都设置了密码保护,防止非法人员登录,不过在实际使用过程中这个密码可能丢失、可能遗忘,那么我们如何寻找一把万能钥匙来打开路由器之锁呢?今天就请各位朋友跟随笔者一起去揭开万能钥匙的秘密。
故障起因
近日,单位路由器上的密码被前任网管修改了,而这位不负责的同事已经离开工作岗位,所以现在没有人知道登录路由器的密码,任何参数的修改都无法顺利进行。由于前任网管已无法联系到,所以领导要求笔者尽快找到办法来破解此密码。
笔者检测了一下路由器,型号是华为3COM公司最新款的路由器MSR2020。笔者使用telnet本机网关地址检测路由器,结果出现了要求输入密码的提示,说明该路由器开启了telnet功能,不过由于密码不知道所以无法访问。
故障分析
一般情况下,路由器开启telnet管理功能可以方便管理员登录路由器并进行配置修改,不过如果忘记了telnet登录密码,就只得通过管理控制台Console接口解决问题。
所以笔者决定不采用暴力破解telnet口令的方法,毕竟暴力破解成功率不高而且太耽误时间了。笔者发现直接通过设备自带的Console线连接MSR2020路由器的Console端口,可以顺利连接,但是要进入高级配置模式依然需要密码验证,看来前任网管也在此处设置了密码,然而没有密码只能够登录用户模式这种没有什么权限的模式,看来,笔者还要进一步破解密码。
原理介绍:路由器设备正常的启动顺序是首先开机加电,然后从Flash存储空间中读取对应的Bin网络操作系统文件,接下来依靠Bin网络操作系统进行启动,启动过程中加载存储在Flash中的config配置文件,这个文件储存的是用户对路由器进行的所有参数设置信息,包括路由器登录密码等。我们破解路由器密码也主要针对启动过程中加载config配置文件环节展开,通过启动菜单中的对应设置实现启动路由器后不加载config配置文件直接进入控制台,从而绕过了密码验证,实现了密码破解。
故障解决
实际上所谓的万能密码是没有的,不过我们可以利用Console接口与启动菜单破解路由器密码。该方法就是通过进入到路由器的启动菜单,绕过之前设置的配置文件,从而避开管理员账号、密码的验证。不过启动菜单并不是随便可以进的,需要网管用Console线连接对应接口后方可进入。
第一步:首先我们将MSR路由器的电源关闭,然后在Console线连接正常的情况下重新启动MSR路由器(见图)。
第二步:注意观察终端连接中显示的信息,当出现“press CTRL+B to enter extended boot menu”时就迅速按下Ctrl和B键,进入扩展启动选项。
第三步:在扩展启动选项中有九个选项供我们选择(图2),依次是启动CF卡中的系统、进入串口子菜单、进入以太口子菜单、文件控制、修改bootrom的密码、ignore system configuration(忽略系统配置)、清空super超级密码、设备操作、重新启动。如果之前发现在通过Console控制台登录设备要求输入用户名信息的话,说明该设备是基于用户名和密码双重验证的,我们要破解这种双验证机制应该选择第六项“ignore system configuration(忽略系统配置)”。
提示:具体项目是要根据实际环境进行选择的,如果Console控制台登录是基于密码验证的,那么选择清空super超级密码即可破解密码。
第四步:选择完毕后,系统又回到了刚才的选单,表面上看起来没有什么差别,实际上已经成功绕过了系统的config配置文件,当下次启动设备时我们将直接进入管理控制台而且不用加载config文件。接下来我们只需要选择菜单中的reboot来重启MSR路由器即可,在下次启动的过程中路由器将不加载原来保存的config文件中的任何信息。
第五步:重新启动MSR路由器不需要我们进行任何操作,也不用再次按“Ctrl+B”键进入扩展启动选项。在路由器启动过程中,电脑上出现“Configuration file is skipped.User interface con0 is available.”时表明config文件已经没有加载,而用户依然具备了Console控制权限。这时我们可以执行“dis cur”命令查看配置,并通过“local-user”命令修改账户信息修改密码,从而实现修复登录密码的目的。
提示:实际上通过这种方法,我们还可以轻松修改telnet连接时需要的密码,总之有了Console控制密码,其他所有密码都是可以任意修改的。