[发明专利]用于修复内核漏洞的方法和装置有效
申请号: | 201611139292.2 | 申请日: | 2016-12-12 |
公开(公告)号: | CN106598667B | 公开(公告)日: | 2018-07-27 |
发明(设计)人: | 夏良钊;郑龙日;卢永强;包沉浮;张煜龙;韦韬 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 王达佐;马晓亚 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 修复 内核 漏洞 方法 装置 | ||
本申请公开了用于修复内核漏洞的方法和装置。该方法的一具体实施方式包括:收集待修复内核的属性信息,属性信息包括用于表征待修复内核所支持代码加载方式的特征信息;获取与特征信息匹配的漏洞修复代码,其中,漏洞修复代码用于调用补丁应用程序编程接口,补丁应用程序编程接口用于使漏洞修复代码与不同内核的内核函数适配;加载漏洞修复代码并对漏洞修复代码中包含的指令进行重定位;将漏洞修复代码中补丁应用程序编程接口重定位后的地址替换为漏洞修复代码所调用的内核函数的地址;执行地址替换后的漏洞修复代码以修复内核漏洞。该实施方式扩大了漏洞修复代码的使用范围,使其可应用于多种型号的内核。
技术领域
本申请涉及计算机技术领域,具体涉及信息安全技术领域,尤其涉及用于修复内核漏洞的方法和装置。
背景技术
内核是操作系统的核心,负责管理系统的进程、内存、设备驱动程序、文件和网络系统等,决定着系统的性能和稳定性。由于采用替换内核并重启系统的内核漏洞修复代码方法,不能满足高可靠性要求,因此,需要一种支持在内核运行过程中可立即升级待修复内核功能的漏洞修复代码技术。现有的内核热漏洞修复代码技术以内存漏洞修复代码的形式在内核运行过程中对内核功能进行修复,不需要替换整个内核,有利于提高系统的可靠性。
由于Linux等操作系统的内核的碎片化,不同的内核对于同一结构体的定义,同一函数的实现代码可能不同,不同的编译选项也可能会导致内核的差异,这给Linux内核热补丁方案提出了极大挑战。目前业界的热补丁解决方案需要编译目标内核的源码和修复代码来生成补丁,同时也限定了补丁只能应用于此目标内核,如果需要应用于其他内核则需要重新编译生成新的补丁。当需要修补的内核版本较多时,需要花费大量的资源。
发明内容
本申请的目的在于提出一种改进的用于修复内核漏洞的方法,该方法包括:收集待修复内核的属性信息,属性信息包括用于表征待修复内核所支持代码加载方式的特征信息;获取与特征信息匹配的漏洞修复代码,其中,漏洞修复代码用于调用补丁应用程序编程接口,补丁应用程序编程接口用于使漏洞修复代码与不同内核的内核函数适配;加载漏洞修复代码并对漏洞修复代码中包含的指令进行重定位;将漏洞修复代码中补丁应用程序编程接口重定位后的地址替换为漏洞修复代码所调用的内核函数的地址;执行地址替换后的漏洞修复代码以修复内核漏洞。
在一些实施例中,获取与特征信息匹配的漏洞修复代码,包括:获取服务器中存储的、与特征信息匹配的漏洞修复代码,其中,服务器中针对不同内核存储有相同的漏洞修复代码。
在一些实施例中,特征信息包括:系统调用信息;以及获取与特征信息匹配的漏洞修复代码,包括:获取与系统调用信息匹配的内核模块类型的漏洞修复代码。
在一些实施例中,特征信息包括:物理内存设备或内核驱动信息;获取与特征信息匹配的漏洞修复代码,包括:获取与物理内存设备或内核驱动信息匹配的指令序列类型的漏洞修复代码。
在一些实施例中,加载漏洞修复代码并对漏洞修复代码中包含的指令进行重定位,包括:获取描述待修复内核的元数据信息;对漏洞修复代码中包含的指令进行重定位后,再加载漏洞修复代码,其中,漏洞修复代码在执行时使用元数据信息。
在一些实施例中,元数据信息包括以下至少一项:内核函数名称和内核函数的地址,内核变量名称和内核变量地址,内核结构体名称,内核结构体地址,内核结构体成员名称,内核结构体成员大小。
在一些实施例中,获取描述待修复内核的元数据信息,包括:通过补丁应用程序编程接口获取保存在内核中的元数据信息;和/或通过补丁应用程序编程接口从内核镜像中获取元数据信息,其中,内核镜像为内核在编译时产生的包含每个符号定义和地址的镜像;和/或以云方式下载元数据信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611139292.2/2.html,转载请声明来源钻瓜专利网。