本发明涉及嵌入式技术领域,尤其涉及一种浏览器篡改检测方法、嵌入式设备及计算机可读存储介质。
背景技术:
目前嵌入式设备的浏览器的源代码都是存储于嵌入式设备本机中,嵌入式设备的浏览器的源代码包括HTML(超级文本标记语言,HyperText Markup Language)文件的源代码和底层C语言的源代码。即嵌入式操作系统的底层均是通过C语言编写,C语言编译后的程序都是以库文件存储于嵌入式系统中,极难被篡改;而HTML文件的源代码的都是解释型语言,不能被打包编译。因此如果嵌入式设备的调试命令被黑客获取,极易对嵌入式设备的HTML文件的源代码进行代码篡改,引用非法的链接和内容,这样会导致产品品牌形象损坏,更重要的是用户利益的损失。如何及时发现HTML文件的源代码是否篡改,保护嵌入式浏览器的安全,成为了目前嵌入式浏览器领域研究的重要方向。
技术实现要素:
本发明的主要目的在于提供了一种浏览器篡改检测方法、嵌入式设备及计算机可读存储介质,旨在解决如何能够及时地发现HTML文件的源代码是否篡改的问题。
为实现上述目的,本发明提供了一种浏览器篡改检测方法,所述浏览器篡改检测方法包括以下步骤:
嵌入式设备响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;
读取所述目标浏览器的当前HTML文件参数;
将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
优先地,所述嵌入式设备响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密,具体包括:
嵌入式设备响应于目标浏览器的篡改检测指令,启动目标浏览器,获取所述目标浏览器的浏览器进程,确定与所述浏览器进程对应的进程标识;
获取与所述进程标识对应的授权证书,对所述授权证书进行解密。
优先地,所述嵌入式设备响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书之前,还包括:
嵌入式设备响应于用户输入的授权证书创建指令,获取公钥和私钥;
读取目标浏览器的原始HTML文件参数,获取所述目标浏览器的进程标识;
通过所述私钥对所述原始HTML文件参数进行加密,获得所述授权证书;
将所述进程标识与所述授权证书进行关联,并将与所述进程标识关联后的授权证书进行存储;
将所述公钥与所述进程标识进行绑定,并将与所述进程标识绑定后的公钥进行存储;
相应地,所述获取与所述进程标识对应的授权证书,对所述授权证书进行解密,具体包括:
获取与所述进程标识对应的授权证书和公钥,通过所述公钥对所述授权证书进行解密。
优先地,所述获取与所述进程标识对应的授权证书和公钥,通过所述公钥对所述授权证书进行解密,具体包括:
获取与所述进程标识对应的授权证书和公钥,通过所述公钥对所述授权证书进行解密,以获得所述目标浏览器的原始HTML文件参数;
相应地,所述将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改;
将所述原始HTML文件参数与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
优先地,所述根据比较结果判断所述当前HTML文件参数是否被篡改,具体包括:
判断所述原始HTML文件参数与所述当前HTML文件参数是否一致;
在所述原始HTML文件参数与所述当前HTML文件参数不一致时,认定所述当前HTML文件参数被篡改。
优先地,所述HTML文件参数包括文件大小和修改时间;
相应地,所述在所述原始HTML文件参数与所述当前HTML文件参数不一致时,认定所述当前HTML文件参数被篡改,具体包括:
在所述原始HTML文件参数的文件大小与所述当前HTML文件的文件大小不一致,或者所述原始HTML文件参数与所述当前HTML文件参数之间的修改时间不满足预设判断标准时,认定所述当前HTML文件参数被篡改。
优先地,所述将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改之后,还包括:
在所述当前HTML文件参数被篡改时,对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,对所述提示信息进行展示。
优先地,所述对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,对所述提示信息进行展示之后,还包括:
响应于用户基于所述提示信息输入的目标浏览器查杀指令,对所述浏览器进行杀毒。
此外为实现上述目的,本发明还提出一种嵌入式设备,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的浏览器篡改检测程序,所述浏览器篡改检测程序配置为实现如上所述的浏览器篡改检测方法的步骤。
此外为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有浏览器篡改检测程序,所述浏览器篡改检测程序被处理器执行时实现如上所述的浏览器篡改检测方法的步骤。
本发明的嵌入式设备首先响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;再读取所述目标浏览器的当前HTML文件参数;最后将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改,进而能够实时地对嵌入式浏览器的HTML文件的源代码进行安全检测,为嵌入式浏览器的安全提供了保障。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的嵌入式设备的结构示意图;
图2为本发明浏览器篡改检测方法的第一实施例的流程示意图;
图3为本发明浏览器篡改检测方法的第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,该嵌入式设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。
本领域技术人员可以理解,图1中示出的嵌入式设备结构并不构成对嵌入式设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及浏览器篡改检测程序。
在图1所示的嵌入式设备中,所述嵌入式设备可以为智能电视,智能电视开机后运行浏览器篡改检测程序,以对嵌入式设备中的浏览器进行检测;本发明的所述嵌入式设备通过处理器1001调用存储器1005中存储的浏览器篡改检测程序,并执行以下操作:
响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;
读取所述目标浏览器的当前HTML文件参数;
将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
响应于目标浏览器的篡改检测指令,启动目标浏览器,获取所述目标浏览器的浏览器进程,确定与所述浏览器进程对应的进程标识;
获取与所述进程标识对应的授权证书,对所述授权证书进行解密。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
响应于用户输入的授权证书创建指令,获取公钥和私钥;
读取目标浏览器的原始HTML文件参数,获取所述目标浏览器的进程标识;
通过所述私钥对所述原始HTML文件参数进行加密,获得所述授权证书;
将所述进程标识与所述授权证书进行关联,并将与所述进程标识关联后的授权证书进行存储;
将所述公钥与所述进程标识进行绑定,并将与所述进程标识绑定后的公钥进行存储;
相应地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
获取与所述进程标识对应的授权证书和公钥,通过所述公钥对所述授权证书进行解密。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
获取与所述进程标识对应的授权证书和公钥,通过所述公钥对所述授权证书进行解密,以获得所述目标浏览器的原始HTML文件参数;
相应地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
将所述原始HTML文件参数与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
判断所述原始HTML文件参数与所述当前HTML文件参数是否一致;
在所述原始HTML文件参数与所述当前HTML文件参数不一致时,认定所述当前HTML文件参数被篡改。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
在所述原始HTML文件参数的文件大小与所述当前HTML文件的文件大小不一致,或者所述原始HTML文件参数与所述当前HTML文件参数之间的修改时间不满足预设判断标准时,认定所述当前HTML文件参数被篡改。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
在所述当前HTML文件参数被篡改时,对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,对所述提示信息进行展示。
进一步地,处理器1001可以调用存储器1005中存储的浏览器篡改检测程序,还执行以下操作:
响应于用户基于所述提示信息输入的目标浏览器查杀指令,对所述浏览器进行杀毒。
本实施例的嵌入式设备首先响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;再读取所述目标浏览器的当前HTML文件参数;最后将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改,进而能够实时地对嵌入式浏览器的HTML文件的源代码进行安全检测,为嵌入式浏览器的安全提供了保障。
基于上述硬件结构,提出本发明浏览器篡改检测方法实施例。
参照图2,图2为本发明一种浏览器篡改检测方法第一实施例的流程示意图。
本实施例中,所述浏览器篡改检测方法包括以下步骤:
步骤S10:嵌入式设备响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;
可理解的是,本实施的各步骤的执行主体可理解为所述嵌入式设备,目标浏览器的篡改检测指令可以是嵌入式浏览器的开发人员输入嵌入式设备的指令,也可以是嵌入式设备开机后嵌入式系统自动产生的代码指令,以实时地对目标浏览器进行检测;
在具体实现中,本实施例中的所述目标浏览器的篡改检测指令可包含一个启动所述目标浏览器的指令;嵌入式设备响应于目标浏览器的篡改检测指令,启动目标浏览器,然后获取所述目标浏览器的浏览器进程,确定与所述浏览器进程对应的进程标识;获取与所述进程标识对应的授权证书,对所述授权证书进行解密;
需要说明的是,由于嵌入式设备的浏览器的源代码包括HTML文件的源代码和底层C语言的源代码,目标浏览器启动时,目标浏览器的浏览器进程会立刻运行,相当于底层C语言进程运行,因此本实施的执行主体亦可以理解为是嵌入式设备的底层C语言进程。
进一步地,在所述步骤S10之前,开发人员需要预先创建一个授权证书即CA证书(Certification Authority),可将该授权证书保存到嵌入式设备本机的指定保护分区中;本实施例优选通过采用不对称密钥加密算法创建授权证书,即创建私钥和公钥,私钥对浏览器的原始HTML文件参数进行加密,公钥则固化进底层C语言进程(即浏览器进程)中
具体创建授权证书的步骤包括:首先嵌入式设备响应于用户输入的数字证书创建指令,获取公钥和私钥;然后读取目标浏览器的原始HTML文件参数,并获取所述目标浏览器的进程标识;通过所述私钥对所述原始HTML文件参数进行加密,获得所述数字证书;将所述进程标识与所述数字证书进行关联,并将与所述进程标识关联后的数字证书进行存储;以及,将所述公钥与所述进程标识进行绑定,并将与所述进程标识绑定后的公钥进行存储;
相应地,所述步骤S10中获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密的步骤具体为:获取与所述进程标识对应的数字证书和公钥,通过所述公钥对所述数字证书进行解密。
在具体实现中,嵌入式设备获取与所述进程标识对应的数字证书和公钥,通过所述公钥对所述数字证书进行解密,以获得所述目标浏览器的原始HTML文件参数;
步骤S20:读取所述目标浏览器的当前HTML文件参数;
步骤S30:将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
在具体实现中,将解密后获得的原始HTML文件参数与所述步骤S20中读取的当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改;
可理解的是,步骤S10中所述公钥已经成功解密出数字证书中的原始HTML文件,如果目标浏览器的原始HTML文件没有被篡改,则所述原始HTML文件应该和所述目标浏览器的当前HTML文件一致,如果不一致则说明书所述目标浏览器的正在遭受恶意攻击,可通过所述原始HTML文件对所述目标浏览器进行保护。
本实施例的嵌入式设备首先响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;再读取所述目标浏览器的当前HTML文件参数;最后将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改,进而能够实时地对嵌入式浏览器的HTML文件的源代码进行安全检测,为嵌入式浏览器的安全提供了保障。
参照图3,图3为本发明一种浏览器篡改检测方法第二实施例的流程示意图,基于上述图2所示的实施例,提出本发明浏览器篡改检测方法的第二实施例。
本实施例中,所述步骤S30,具体包括:
步骤S301:将所述授权证书的解密结果与所述当前HTML文件参数进行比较,判断所述原始HTML文件参数与所述当前HTML文件参数是否一致;
在具体实现中,本实施例中的所述原始HTML文件参数以及所述当前HTML文件参数均包括文件大小和修改时间;
步骤S302:在所述原始HTML文件参数与所述当前HTML文件参数不一致时,认定所述当前HTML文件参数被篡改。
在具体实现中,在所述原始HTML文件参数的文件大小与所述当前HTML文件的文件大小不一致,或者所述原始HTML文件参数与所述当前HTML文件参数之间的修改时间不满足预设判断标准时,认定所述当前HTML文件参数被篡改,其中,所述预设判断标准可以表征为原始HTML文件参数与当前HTML文件参数之间的修改时间必须一致。
进一步地,在所述步骤S302之后,还包括:
步骤S40:在所述当前HTML文件参数被篡改时,对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,对所述提示信息进行展示。
可理解的是,嵌入式设备的浏览器在运行过程中如果HTML代码遭到恶意篡改,需要及时地对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,这样用户能够及时告知用户该浏览器正在遭受恶意攻击,嵌入式设备的显示界面可弹出未授权、不合法等提示信息。
进一步地,所述步骤S40之后,还包括:
步骤S50:响应于用户基于所述提示信息输入的目标浏览器查杀指令,对所述浏览器进行杀毒。
可理解的是,用户看到嵌入式设备的显示界面弹出的未授权、不合法等提示信息后,可通过向嵌入式设备输入目标浏览器查杀指令,对所述浏览器进行杀毒,启动系统保护措施,最终实现了对嵌入式浏览器安全保护的目的。
本实施例的嵌入式浏览器在检测出所述原始HTML文件参数与所述当前HTML文件参数不一致时,对所述目标浏览器的浏览器进程进行拦截,使得用户能够第一时间发现恶意篡改信息,并启动相应的保护措施,为嵌入式浏览器提供安全保障,防止嵌入式浏览器的源代码被恶意篡改。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有浏览器篡改检测程序,所述浏览器篡改检测程序被处理器执行时实现如下操作:
响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的数字证书,对所述数字证书进行解密;
读取所述目标浏览器的当前HTML文件参数;
将所述数字证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
响应于目标浏览器的篡改检测指令,启动目标浏览器,获取所述目标浏览器的浏览器进程,确定与所述浏览器进程对应的进程标识;
获取与所述进程标识对应的数字证书,对所述数字证书进行解密。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
响应于用户输入的数字证书创建指令,获取公钥和私钥;
读取目标浏览器的原始HTML文件参数,获取所述目标浏览器的进程标识;
通过所述私钥对所述原始HTML文件参数进行加密,获得所述数字证书;
将所述进程标识与所述数字证书进行关联,并将与所述进程标识关联后的数字证书进行存储;
将所述公钥与所述进程标识进行绑定,并将与所述进程标识绑定后的公钥进行存储;
相应地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
获取与所述进程标识对应的数字证书和公钥,通过所述公钥对所述数字证书进行解密。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
获取与所述进程标识对应的数字证书和公钥,通过所述公钥对所述数字证书进行解密,以获得所述目标浏览器的原始HTML文件参数;
相应地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
将所述原始HTML文件参数与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
判断所述原始HTML文件参数与所述当前HTML文件参数是否一致;
在所述原始HTML文件参数与所述当前HTML文件参数不一致时,认定所述当前HTML文件参数被篡改。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
在所述原始HTML文件参数的文件大小与所述当前HTML文件的文件大小不一致,或者所述原始HTML文件参数与所述当前HTML文件参数之间的修改时间不满足预设判断标准时,认定所述当前HTML文件参数被篡改。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
在所述当前HTML文件参数被篡改时,对所述目标浏览器的浏览器进程进行拦截,并生成提示信息,对所述提示信息进行展示。
进一步地,所述浏览器篡改检测程序被处理器执行时还实现如下操作:
响应于用户基于所述提示信息输入的目标浏览器查杀指令,对所述浏览器进行杀毒。
本实施例的嵌入式设备首先响应于目标浏览器的篡改检测指令,获取与所述目标浏览器对应的授权证书,对所述授权证书进行解密;再读取所述目标浏览器的当前HTML文件参数;最后将所述授权证书的解密结果与所述当前HTML文件参数进行比较,根据比较结果判断所述当前HTML文件参数是否被篡改,进而能够实时地对嵌入式浏览器的HTML文件的源代码进行安全检测,为嵌入式浏览器的安全提供了保障。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。