一种路由器固件升级的方法和装置
技术领域
本发明涉及网络技术领域,特别是涉及一种路由器固件升级的方法和装置。
背景技术
随着路由器的广泛使用,路由器安全问题日益突出,多数安全问题是由于路由器存在“后门”,也即技术漏洞所致,这些“后门”极容易被黑客利用,进而危害用户和网络的信息安全。而解决这些问题的一个常规方法是对路由器的固件版本进行升级,进行打补丁,以修补这些后门漏洞,将对用户和网络的危胁降到最低。
固件是写入可编程只读存储器中的程序,通俗的理解就是“固化的软件”。固件是固化在集成电路内部的程序代码,负责控制和协调集成电路的功能,固件担任着一个系统最基础最底层工作的软件。固件升级是指把新的固件写入芯片中,代替原有的固件的过程。
目前,在实际的路由器使用过程中,大部分用户并不具备判断路由器是否存在后门漏洞的专业技能,而且,路由器固件升级的网页操作步骤繁琐(如,登录路由器的网页管理界面->系统工具->软件升级,以及下载对应的升级固件),导致很大一部分用户并不知道如何升级路由器固件,甚至对固件升级完全没有概念,不知道其重要性,导致很多路由器都处于“后门”状态,极容易被黑客利用
发明内容
本发明提供一种路由器固件升级的方法和装置,以解决路由器固件升级的操作步骤繁琐,对路由器用户专业技能要求高的问题。
为了解决上述问题,本发明公开了一种路由器固件升级的方法,包括:
获取本地路由器的介质访问控制地址和当前固件的版本信息;
发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测;
接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别;
当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
优选地,所述当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级,包括:
当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息,其中,所述升级固件信息包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置;
根据所述升级固件信息下载所述本地路由器的升级固件;
安装所述升级固件。
优选地,所述安装所述升级固件之前,所述方法还包括:
备份所述本地路由器的当前配置信息,得到配置备份信息;
其中,所述当前配置信息和配置备份信息均包括所述本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置。
优选地,所述安装所述升级固件,包括:
模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中;
根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
优选地,所述导入所述升级固件至所述本地路由器的固件存储器中,包括:
通过建立的简单文件传输协议或文件传输协议进程,将所述升级固件导入至所述本地路由器的固件存储器中。
优选地,所述服务器端返回的安全检测结果为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别;
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别为危险。
优选地,若对所述当前固件升级失败,所述方法还包括:
在注册表中建立用于恢复失败的键值,以便按照所述配置备份信息对路由器进行配置。
本发明还公开了一种路由器固件升级的装置,包括:
路由器信息获取模块,用于获取本地路由器的介质访问控制地址和当前固件的版本信息;
发送模块,用于发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测;
接收模块,用于接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别;
升级模块,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
优选地,所述升级模块包括:
升级固件信息获取模块,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息,其中,所述升级固件信息包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置;
下载模块,用于根据所述升级固件信息下载所述本地路由器的升级固件;
安装模块,用于安装所述升级固件。
优选地,所述装置还包括:
备份模块,用于在所述安装模块安装所述升级固件之前,备份所述本地路由器的当前配置信息,得到配置备份信息;
其中,所述当前配置信息和配置备份信息均包括所述本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置。
优选地,所述安装模块包括:
模块导入模块,用于模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中;
配置模块,用于根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
优选地,所述模块导入模块通过建立的简单文件传输协议或文件传输协议进程,将所述升级固件导入至所述本地路由器的固件存储器中。
优选地,所述服务器端返回的安全检测结果为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别;
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别为危险。
优选地,所述装置还包括:
键值建立模块,用于在所述升级模块对所述当前固件升级失败时,在注册表中建立用于恢复失败的键值,以便所述配置模块按照所述配置备份信息对路由器进行配置。
与背景技术相比,本发明包括以下优点:
获取并发送本地路由器的介质访问控制地址和当前固件的版本信息至服务器端进行当前固件的安全检测;服务器端存储有介质访问控制地址与路由器的映射关系,通过本地路由器的介质访问控制地址和服务器端的介质访问控制地址与路由器的映射关系,可以识别出本地路由器的品牌、型号和硬件版本号等信息;同时,每个路由器具有一个或多个匹配固件,每个匹配固件的版本信息具有对应的安全级别,再通过当前固件的版本信息与本地路由器的一个或多个匹配固件的版本信息比对,确定当前固件的安全级别。
接收到服务器端返回的安全检测结果,该安全检测结果指示当前固件的安全级别,如果当前固件的安全级别为危险,则对当前固件进行升级操作。避免人工判断本地路由器的当前固件是否安全、是否需要升级,降低了路由器用户对路由器固件升级的技能要求。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
附图说明
图1是本发明实施例中一种路由器固件升级的方法流程图;
图2是本发明实施例中另一种路由器固件升级的方法流程图;
图3是图2所示流程中的一种安装升级固件的流程图;
图4是本发明实施例中再一种路由器固件升级的方法流程图;
图5是本发明实施例中客户端提示路由器存在安全隐患的示意图;
图6是本发明实施例中路由器体检界面示意图;
图7是本发明实施例中获取最新固件示意图;
图8是本发明实施例中下载固件示意图;
图9是本发明实施例中安装固件示意图;
图10是本发明实施例中一种路由器固件升级的装置结构图;
图11是本发明实施例中另一种路由器固件升级的装置结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
下面通过列举几个具体的实施例详细介绍本发明提供的一种路由器固件升级的方法和装置。
实施例一
详细介绍本发明实施例提供的一种路由器固件升级的方法。本发明实施例中的路由器固件升级的方法可以在客户端与服务器端相连的情况下实施,并且所述客户端可以与本地路由器相连。
参照图1,示出了本发明实施例中一种路由器固件升级的方法流程图。
步骤100,获取本地路由器的介质访问控制地址和当前固件的版本信息。
在与本地路由器相连接的情况下(有线连接和无线连接均可),获取本地路由器的介质访问控制(Medium Access Control,MAC)地址和本地路由器的当前固件的版本信息。
通常情况下,MAC地址可以作为识别路由器的唯一标识,即每个路由器具有唯一的一个MAC地址。
每个路由器可以匹配一个或者多个版本的固件,但路由器的固件存储器中只能存在一个版本的固件,所述固件存储器中储存的唯一固件为当前固件,当前固件也可以理解为路由器运行时所执行处理的固件,所述固件存储器可以为可擦除可编程只读寄存器、电子可擦除可编程只读寄存器和闪存等。
步骤102,发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测。
将上述步骤100中获取到的本地路由器的MAC地址和当前固件的版本信息发送至服务器端,对当前固件进行安全检测。
所述安全检测可以为检测当前固件是否存在漏洞或者检测当前固件是否有升级固件等等操作。
步骤104,接收所述服务器端返回的安全检测结果。
待服务器端对当前固件进行安全检测之后,接收到服务器端返回的安全检测结果。
其中,所述服务器端存储有MAC地址与路由器的映射关系,每个路由器具有一个或多个匹配固件,每个所述匹配固件的版本信息具有对应的安全级别。
例如,当前路由器的MAC地址为00-00-00-00-00-00,服务器端存储有MAC地址00-00-00-00-00-00与路由器A的映射关系,路由器A具有三个匹配固件,分别为固件G1、G2和G3,其中,固件G1的安全级别为一级,固件G2的安全级别为二级,固件G3的安全级别为三级,一级可以表示危险、二级可以表示可升级、三级可以表示健康无需升级。若当前固件为G1,则当前固件的安全级别为一级,表示当前固件危险。
需要说明的是,在判断当前固件为本地路由器的哪个版本的匹配固件时,可以不发送当前固件本身至服务器端,只发送当前固件的版本信息至服务器端即可,固件的版本信息可以做为固件的唯一标识;而且,固件的版本信息相对固件本身而言,固件的版本信息容量小,可以为几十KB,对网络传输的速度要求较低。
步骤106,当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
当安全检测结果指示当前固件的安全级别为危险时,可以对当前固件进行升级,将本地路由器的危险的当前固件升级为安全的固件。
需要说明的是,上述方法既可通过路由器自身的应用也可通过其它第三方应用实现。
综上所述,本发明实施例的技术方案中,获取并发送本地路由器的介质访问控制地址和当前固件的版本信息至服务器端进行当前固件的安全检测;服务器端存储有介质访问控制地址与路由器的映射关系,通过本地路由器的介质访问控制地址和服务器端的介质访问控制地址与路由器的映射关系,可以识别出本地路由器的品牌、型号和硬件版本号等信息;同时,每个路由器具有一个或多个匹配固件,每个匹配固件的版本信息具有对应的安全级别,再通过当前固件的版本信息与本地路由器的一个或多个匹配固件的版本信息比对,确定当前固件的安全级别。
接收到服务器端返回的安全检测结果,该安全检测结果指示当前固件的安全级别,如果当前固件的安全级别为危险,则对当前固件进行升级操作。避免人工判断本地路由器的当前固件是否安全、是否需要升级,降低了路由器用户对路由器固件升级的技能要求。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
实施例二
详细介绍本发明实施例提供的一种路由器固件升级的方法。本发明实施例中的路由器固件升级的方法可以在客户端与服务器端相连的情况下实施。其中,所述客户端可以与本地路由器相连,所述服务器端可以存储有MAC地址与路由器的映射关系,所述服务器端(云端)具体可以存储各个厂商的路由器信息,包括路由器的品牌、型号、MAC地址、硬件版本号以及固件版本信息等。每个路由器可以具有一个或多个匹配固件,每个所述匹配固件的版本信息具有对应的安全级别,例如,可以设置4个安全级别,分别为70(存在漏洞)、50(可以升级)、10(最新固件)、40(未知固件)。
参照图2,示出了本发明实施例中一种路由器固件升级的方法流程图。
步骤200,获取本地路由器的MAC地址和当前固件的版本信息。
登录客户端之后,可以自动对与客户端连接的本地路由器进行识别,获取本地路由器的MAC地址和当前固件的版本信息。
步骤202,发送所述MAC地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测。
发送MAC地址至服务器端,可以通过MAC地址与服务器端存储的MAC地址与路由器的映射关系,确定本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息等。
发送当前固件的版本信息至服务器端,可以通过当前固件的版本信息与之前确定的本地路由器的匹配固件的版本信息,确定当前固件为哪个版本的匹配固件。
步骤204,接收所述服务器端返回的安全检测结果。
优选地,所述服务器端返回的安全检测结果可以为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别。
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别可以为危险。
例如,当前固件的版本信息为m1,服务器端存在本地路由器的某个匹配固件G1的版本信息也为m1,匹配固件G1存在安全漏洞,并且服务器端还存在本地路由器的升级固件G2,升级固件G2无安全漏洞或者已经修复了匹配固件G1已知的安全漏洞,则当前固件的安全级别可以为危险。
需要说明的是,上述升级固件G2是本地路由器多个匹配固件中的其中其中之一。通常情况下,可以将低版本的固件升级为高版本的固件,高版本的固件为低版本固件的升级固件。
步骤206,当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
优选地,所述步骤206可以包括以下子步骤:
子步骤2061,当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息。
其中,所述升级固件信息可以包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置。
例如,当前固件G1的安全级别为危险时,获取本地路由器的升级固件的版本信息和升级固件在服务器端的存储位置。有时,当前固件G1的升级固件可以为固件G2和固件G3,且固件G3比固件G2的版本更高,通常选择固件G3做为当前固件G1的升级固件。此时,通过固件G2和固件G3的版本信息的比较,可以确定固件G1的升级固件为G3,进一步还需要确定升级固件G3在服务器端的存储位置,用于将升级固件G3从服务器端下载到客户端。
子步骤2062,根据所述升级固件信息下载所述本地路由器的升级固件。
当确定升级固件之后,可以进一步根据升级固件在服务器端的存储位置下载升级固件至客户端。
子步骤2063,安装所述升级固件。
优选地,所述子步骤2063之前,还可以包括下列步骤或者子步骤:
备份所述本地路由器的当前配置信息,得到配置备份信息。
备份本地路由器的当前配置信息可以用于当本地路由器固件升级失败后,对本地路由器进行恢复还原。
其中,所述当前配置信息和配置备份信息均可以包括本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置等信息。
优选地,所述子步骤2063可以进一步包括下列分子步骤,如图3所示:
分子步骤20631,模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中。
模拟本地路由器的网页管理界面中固件升级的界面,从客户端中选择已下载的升级固件,即获知升级固件在本地的存储路径,将升级固件刷入到本地路由器的固件存储器中。
所述分子步骤20631中,导入所述升级固件至所述本地路由器的固件存储器中可以为:通过建立的简单文件传输协议(Trivial File Transfer Protocol,TFTP)或文件传输协议(File Transfer Protocol,FTP)进程(进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示),将所述升级固件导入至所述本地路由器的固件存储器中。在实际应用中,可以根据路由器的配置情况(具体提供哪个用于导入固件的接口)选择建立TFTP进程传输升级固件至路由器,还是建立FTP进程上传升级固件至路由器。
分子步骤20632,根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
将升级固件导入到固件存储器中之后,本地路由器的配置信息也会被清空,此时可以根据上述配置备份信息对本地路由器进行配置。
需要说明的是,上述方法既可通过路由器自身的应用也可通过其它第三方应用实现。
综上所述,本发明实施例的技术方案中,获取并发送本地路由器的介质访问控制地址和当前固件的版本信息至服务器端进行当前固件的安全检测;服务器端存储有介质访问控制地址与路由器的映射关系,通过本地路由器的介质访问控制地址和服务器端的介质访问控制地址与路由器的映射关系,可以识别出本地路由器的品牌、型号和硬件版本号等信息;同时,每个路由器具有一个或多个匹配固件,每个匹配固件的版本信息具有对应的安全级别,再通过当前固件的版本信息与本地路由器的一个或多个匹配固件的版本信息比对,确定当前固件的安全级别。
接收到服务器端返回的安全检测结果,该安全检测结果指示当前固件的安全级别,如果当前固件的安全级别为危险,则对当前固件进行升级操作。避免人工判断本地路由器的当前固件是否安全、是否需要升级,降低了路由器用户对路由器固件升级的技能要求。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
实施例三
详细介绍本发明实施例提供的一种路由器固件升级的方法。
本发明实施例中的路由器固件升级的方法可以在客户端与服务器端相连的情况下实施。其中,所述客户端可以与本地路由器相连,本实施例中的客户端可以指代客户端软件。所述服务器端可以存储有MAC地址与路由器的映射关系,所述服务器端(云端)具体可以存储各个厂商的路由器信息,包括路由器的品牌、型号、MAC地址、硬件版本号以及固件版本信息等。每个路由器可以具有一个或多个匹配固件,每个所述匹配固件的版本信息具有对应的安全级别,例如,可以设置4个安全级别,分别为70(存在漏洞)、50(可以升级)、10(最新固件)、40(未知固件),但不限于此,在实际应用中,本领域技术人员可以根据实际需要任意设置适当的安全级别。
参照图4,示出了本发明实施例中一种路由器固件升级的方法流程图。
步骤300,在与路由器连接的情况下,登录客户端。
在登录到客户端之后,可以在后台对路由器进行“体检”,“体检”主要包括对路由器的登录帐号和密码的安全检测,无线局域网的连接帐号和密码的安全检测,以及路由器固件的漏洞检测等等。若路由器的登录帐号和密码为默认帐号和密码,则可以进行登录帐号和密码危险的提示;若无线局域网的连接帐号未设置密码或者密码过于简单,则可以进行无线局域网的连接帐号危险的提示。
步骤302,如果路由器的当前固件存在安全隐患,客户端提示“立即修复隐患”。如图5所示,不仅提示“立即修复隐患”还可以提示路由器当前连接多少个设备(包括有线连接和无线连接),同时也提供“路由设置”功能。
步骤304,选择“立即修复隐患”,显示路由器体检界面,然后针对固件升级这一项点击手动修复。路由器体检界面如图6所示,体验界面可以显示出手动修复的详细信息。
步骤306,弹出固件升级的窗口,共进行“获取、下载、安装”三个步骤,提示成功后即对路由器完成了固件升级。图7为获取最新固件示意图,可以显示整个固件升级步骤的完成进步百分比,以及操作提示信息;图8为下载固件示意图,可以显示整个固件升级步骤的完成进步百分比、最新固件的版本信息和大小,以及操作提示信息;图9为安装固件示意图,可以显示整个固件升级步骤的完成进步百分比、最新固件的版本信息,以及操作提示信息。
上述步骤300至步骤306的执行过程,主要是面对用户的操作过程,在实际应用时,上述步骤300的执行过程中,客户端可以获取并发送本地路由器的MAC地址和当前固件的版本信息至服务器端进行安全检测,可以参照上述实施例二中步骤200和步骤202的执行。待客户端接收到服务器端返回的安全检测结果后,可以在上述步骤302的执行过程中,通过客户端提示的形式将安全检测结果显现出来,可以参照上述实施例二中步骤204的执行。上述步骤304为用户增加了手动操作的机会,可以方便用户主动选择是否立即修复隐患。当用户选择立即修复隐患时,上述步骤306可以为从服务器端获取最新固件的版本信息等,并将最新固件从服务器端下载到本地进行固件升级操作,可以参照上述实施例二中步骤206的执行。
若通过本实施例中的方法对路由器固件升级失败,可以在注册表中建立一个询问是否恢复失败的键值,该键值可以在下次登录到客户端时进行修复隐患失败的相关提示,如,“客户端存在路由器的配置备份信息,但路由器未被配置,是否恢复失败?”用户可以根据提示进行恢复失败的操作,按照配置备份信息对路由器进行配置。此处对路由器进行配置不需要用户直接参与,可以由客户端在后台进行处理。
需要说明的是,上述方法既可通过路由器自身的应用也可通过其它第三方应用实现。
综上所述,本发明实施例的技术方案中,登录到客户端之后,自动对本地路由器进行安全检测,并显示检测结果。当路由器存在安全隐患时,可以手动进行修复,对路由器的固件进行升级操作,降低了用户升级路由器固件的难度。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
实施例四
详细介绍本发明实施例提供的一种路由器固件升级的装置。所述装置可以为独立于路由器的第三方装置,也可以为路由器的一部分装置,并且,所述装置还可以与路由器连接的客户端(软件或硬件)和服务器端进行交互。所述服务器端(云端)具体可以存储各个厂商的路由器信息,包括路由器的品牌、型号、MAC地址、硬件版本号以及固件版本信息等。
所述装置可以包括:路由器信息获取模块400,发送模块402,接收模块404,以及,升级模块406。
参照图10,示出了本发明实施例中一种路由器固件升级的装置结构图。
下面分别详细介绍各模块的功能以及各模块之间的关系。
路由器信息获取模块400,用于获取本地路由器的介质访问控制地址和当前固件的版本信息。
发送模块402,用于发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测。
接收模块404,用于接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别;
升级模块406,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
综上所述,本发明实施例的技术方案中,获取并发送本地路由器的介质访问控制地址和当前固件的版本信息至服务器端进行当前固件的安全检测;服务器端存储有介质访问控制地址与路由器的映射关系,通过本地路由器的介质访问控制地址和服务器端的介质访问控制地址与路由器的映射关系,可以识别出本地路由器的品牌、型号和硬件版本号等信息;同时,每个路由器具有一个或多个匹配固件,每个匹配固件的版本信息具有对应的安全级别,再通过当前固件的版本信息与本地路由器的一个或多个匹配固件的版本信息比对,确定当前固件的安全级别。
接收到服务器端返回的安全检测结果,该安全检测结果指示当前固件的安全级别,如果当前固件的安全级别为危险,则对当前固件进行升级操作。避免人工判断本地路由器的当前固件是否安全、是否需要升级,降低了路由器用户对路由器固件升级的技能要求。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
实施例五
详细介绍本发明实施例提供的一种路由器固件升级的装置。所述装置可以为独立于路由器的第三方装置,也可以为路由器的一部分装置,并且,所述装置还可以与路由器连接的客户端(软件或硬件)和服务器端进行交互。所述服务器端(云端)具体可以存储各个厂商的路由器信息,包括路由器的品牌、型号、MAC地址、硬件版本号以及固件版本信息等。
所述装置可以包括:路由器信息获取模块500,发送模块502,接收模块504,升级模块506,备份模块508,以及,键值建立模块510。
其中,所述升级模块506可以包括:升级固件信息获取模块5061,下载模块5062,安装模块5063。
所述安装模块5063可以包括:模块导入模块50631,配置模块50632。
参照图11,示出了本发明实施例中一种路由器固件升级的装置结构图。
下面分别详细介绍各模块的功能以及各模块之间的关系。
路由器信息获取模块500,用于获取本地路由器的介质访问控制地址和当前固件的版本信息。
发送模块502,用于发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测。
接收模块504,用于接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别。
优选地,所述服务器端返回的安全检测结果可以为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别。
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别为危险。
升级模块506,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
优选地,所述升级模块506可以包括:
升级固件信息获取模块5061,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息,其中,所述升级固件信息包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置。
下载模块5062,用于根据所述升级固件信息下载所述本地路由器的升级固件。
安装模块5063,用于安装所述升级固件。
优选地,所述安装模块5063可以包括:
模块导入模块50631,用于模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中。
优选地,所述模块导入模块50631可以通过建立的简单文件传输协议或文件传输协议进程,将所述升级固件导入至所述本地路由器的固件存储器中。
配置模块50632,用于根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
备份模块508,用于在所述安装模块5063安装所述升级固件之前,备份所述本地路由器的当前配置信息,得到配置备份信息;
其中,所述当前配置信息和配置备份信息均可以包括所述本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置。
键值建立模块510,用于在所述升级模块506对所述当前固件升级失败时,在注册表中建立用于恢复失败的键值,以便所述配置模块50632按照所述配置备份信息对路由器进行配置。
综上所述,本发明实施例的技术方案中,获取并发送本地路由器的介质访问控制地址和当前固件的版本信息至服务器端进行当前固件的安全检测;服务器端存储有介质访问控制地址与路由器的映射关系,通过本地路由器的介质访问控制地址和服务器端的介质访问控制地址与路由器的映射关系,可以识别出本地路由器的品牌、型号和硬件版本号等信息;同时,每个路由器具有一个或多个匹配固件,每个匹配固件的版本信息具有对应的安全级别,再通过当前固件的版本信息与本地路由器的一个或多个匹配固件的版本信息比对,确定当前固件的安全级别。
接收到服务器端返回的安全检测结果,该安全检测结果指示当前固件的安全级别,如果当前固件的安全级别为危险,则对当前固件进行升级操作。避免人工判断本地路由器的当前固件是否安全、是否需要升级,降低了路由器用户对路由器固件升级的技能要求。可以帮助用户发现路由器存在的后门漏洞,并提供固件升级功能,相比通过网页的方式来手动更新固件要容易的多,对用户来说操作也通用、简便,不用考虑更换路由器后而不知道如何升级固件的问题。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明实施例所提供的一种路由器固件升级的方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本发明实施例公开了A1、一种路由器固件升级的方法,包括:
获取本地路由器的介质访问控制地址和当前固件的版本信息;
发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测;
接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别;
当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
A2、根据A1所述的方法,其中,所述当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级,包括:
当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息,其中,所述升级固件信息包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置;
根据所述升级固件信息下载所述本地路由器的升级固件;
安装所述升级固件。
A3、根据A2所述的方法,其中,所述安装所述升级固件之前,所述方法还包括:
备份所述本地路由器的当前配置信息,得到配置备份信息;
其中,所述当前配置信息和配置备份信息均包括所述本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置。
A4、根据A3所述的方法,其中,所述安装所述升级固件,包括:
模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中;
根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
A5、根据A4所述的方法,其中,所述导入所述升级固件至所述本地路由器的固件存储器中,包括:
通过建立的简单文件传输协议或文件传输协议进程,将所述升级固件导入至所述本地路由器的固件存储器中。
A6、根据A2所述的方法,其中,所述服务器端返回的安全检测结果为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别;
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别为危险。
A7、根据A3所述的方法,其中,若对所述当前固件升级失败,所述方法还包括:
在注册表中建立用于恢复失败的键值,以便按照所述配置备份信息对路由器进行配置。
本发明实施例还公开了B8、一种路由器固件升级的装置,包括:
路由器信息获取模块,用于获取本地路由器的介质访问控制地址和当前固件的版本信息;
发送模块,用于发送所述介质访问控制地址和所述当前固件的版本信息至服务器端进行所述当前固件的安全检测;
接收模块,用于接收所述服务器端返回的安全检测结果,其中,所述服务器端存储有介质访问控制地址与路由器的映射关系,每个路由器具有一个或多个匹配固件;每个所述匹配固件的版本信息具有对应的安全级别;
升级模块,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,对所述当前固件进行升级。
B9、根据B8所述的装置,其中,所述升级模块包括:
升级固件信息获取模块,用于当所述安全检测结果指示所述当前固件的安全级别为危险时,获取所述本地路由器的升级固件信息,其中,所述升级固件信息包括升级固件的版本信息和所述升级固件在所述服务器端的存储位置;
下载模块,用于根据所述升级固件信息下载所述本地路由器的升级固件;
安装模块,用于安装所述升级固件。
B10、根据B9所述的装置,其中,所述装置还包括:
备份模块,用于在所述安装模块安装所述升级固件之前,备份所述本地路由器的当前配置信息,得到配置备份信息;
其中,所述当前配置信息和配置备份信息均包括所述本地路由器的登录帐号和密码、互联网连接的帐号和密码、无线局域网的帐号和密码,以及本地路由器的高级设置。
B11、根据B10所述的装置,其中,所述安装模块包括:
模块导入模块,用于模拟所述本地路由器的网页管理界面,导入所述升级固件至所述本地路由器的固件存储器中;
配置模块,用于根据所述配置备份信息对导入所述升级固件后的所述本地路由器进行配置。
B12、根据B11所述的装置,其中,所述模块导入模块通过建立的简单文件传输协议或文件传输协议进程,将所述升级固件导入至所述本地路由器的固件存储器中。
B13、根据B9所述的装置,其中,所述服务器端返回的安全检测结果为所述服务器根据所述介质访问控制地址查询得到所述本地路由器的品牌、型号、硬件版本信息和匹配固件的版本信息,并利用所述当前固件的版本信息在所述匹配固件的版本信息中查询获得的所述当前固件对应的安全级别;
其中,当所述服务器端存在与所述当前固件的版本信息相同的匹配固件,且相同版本信息的匹配固件存在漏洞,并且所述服务器端存在所述本地路由器的升级固件时,所述当前固件的安全级别为危险。
B14、根据B11所述的装置,其中,所述装置还包括:
键值建立模块,用于在所述升级模块对所述当前固件升级失败时,在注册表中建立用于恢复失败的键值,以便所述配置模块按照所述配置备份信息对路由器进行配置。