一种Linux平台的修复方法及装置制造方法及图纸

技术编号:24613238 阅读:30 留言:0更新日期:2020-06-24 01:00
本发明专利技术提供一种Linux平台的修复方法及装置,所述方法包括:根据Linux平台的内核原代码,获得前置对象文件;根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;根据所述前置文件和所述后置文件,获得函数更改集;若判断获知所述函数更改集满足热补丁条件,则生成热补丁内核模块。所述装置用于执行上述方法。本发明专利技术实施例提供的Linux平台的修复方法及装置,提高了漏洞修复的效率。

A repair method and device of Linux platform

【技术实现步骤摘要】
一种Linux平台的修复方法及装置
本专利技术涉及计算机
,具体涉及一种Linux平台的修复方法及装置。
技术介绍
Linux操作系统具有开源、稳定、可定制等特点,在国防、航天、政务、金融等领域得到了广泛应用。Linux操作系统的内核修复漏洞的补丁程序会被发布,这些补丁程序中,安全类的补丁程序可实现热补丁,其余类别的补丁程序都为冷补丁。在应用这些修冷补丁时通常重启Linux的内核,而重新启动Linux的内核会导致停机和应用中断,即使有计算机冗余功能,重新启动会出现短暂的中断或导致意外复杂性。因此,许多系统管理员会延迟这些冷补丁的更新,会导致Linux系统在有漏洞的情况下运行,使Linux系统的运行存在风险。
技术实现思路
针对现有技术中的问题,本专利技术实施例提供一种Linux平台的修复方法及装置,能够至少部分地解决现有技术中存在的问题。一方面,本专利技术提出一种Linux平台的修复方法,包括:根据Linux平台的内核原代码,获得前置对象文件;根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;根据所述前置文件和所述后置文件,获得函数更改集;若判断获知所述函数更改集满足热补丁条件,则生成热补丁内核模块。另一方面,本专利技术提供一种Linux平台的修复装置,包括:第一获得单元,用于根据Linux平台的内核原代码,获得前置对象文件;第二获得单元,用于根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;第三获得单元,用于根据所述前置文件和所述后置文件,获得函数更改集;生成单元,用于在判断获知所述函数更改集满足热补丁条件之后,则生成热补丁内核模块。再一方面,本专利技术提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述Linux平台的修复方法的步骤。又一方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述Linux平台的修复方法的步骤。本专利技术实施例提供的Linux平台的修复方法及装置,能够根据Linux平台的内核原代码,获得前置对象文件,并根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件,然后根据前置文件和后置文件,获得函数更改集,在判断获知函数更改集满足热补丁条件之后,生成热补丁内核模块,在Linux操作系统运行状态下进行漏洞修复,提高了漏洞修复的效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1是本专利技术一实施例提供的Linux平台的修复方法的流程示意图。图2是本专利技术另一实施例提供的Linux平台的修复方法的流程示意图。图3是本专利技术又一实施例提供的Linux平台的修复方法的流程示意图。图4是本专利技术再一实施例提供的Linux平台的修复方法的流程示意图。图5是本专利技术一实施例提供的Linux平台的修复装置的结构示意图。图6是本专利技术另一实施例提供的Linux平台的修复装置的结构示意图。图7是本专利技术又一实施例提供的Linux平台的修复装置的结构示意图。图8是本专利技术再一实施例提供的Linux平台的修复装置的结构示意图。图9是本专利技术一实施例提供的电子设备的实体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行简单说明。热补丁是系统对应的一个个内核文件,通过临时加载内核文件的把程序函数的调用调整,返回正常值修复系统的漏洞,重启后此内核文件不再生效,属于临时解决方案。本专利技术实施例提供一种Linux平台的修复方法,通过内核热补丁对正在运行的Linux操作系统的内核进行实时修补,从而允许在内核仍在运行时应用内核补丁,避免立即重启系统,延长了Linux操作系统正常运行时间并提高了Linux操作系统运行的稳定性。图1是本专利技术一实施例提供的Linux平台的修复方法的流程示意图,如图1所示,本专利技术实施例提供的Linux平台的修复方法,包括:S101、根据Linux平台的内核原代码,获得前置对象文件;具体地,服务器在通过内核热补丁对Linux操作系统进行修复时,可以编译Linux平台的内核原代码并创建对应的编译后的文件,从而获得前置对象文件。其中,本专利技术实施例提供的Linux平台的修复方法的执行主体包括但不限于服务器。S102、根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;具体地,所述服务器可以获得热补丁代码,然后编译Linux平台的内核原代码打上内核热补丁代码之后的代码并创建对应的编译后的文件,从而获得后置对象文件。可理解的是步骤S101和步骤S102没有先后顺序关系,先执行哪一个步骤都可以。S103、根据所述前置文件和所述后置文件,获得函数更改集;具体地,所述服务器在获得所述前置文件和所述后置文件之后,可以比较所述前置文件和所述后置文件,由于内核代码是以函数为单位的,在比较所述前置文件和所述后置文件之后,可以发现所述后置文件相对于所述前置文件的差异函数,获得的所有差异函数作为函数更改集。其中,所述差异函数的情况包括但不限于两个同名的函数包括的代码不同,所述后置文件中存在的函数在所述前置文件中不存在等。S104、若判断获知所述函数更改集满足热补丁条件,则生成热补丁内核模块。具体地,所述服务器在获得所述函数更改集之后,会判断所述函数更改集是否满足热补丁条件,如果所述函数更改集满足所述热补丁条件,说明采用内核热补丁对Linux操作系统进行修复时涉及的Linux操作系统的内核中的现有功能和数据结构比较简单,那么可以生成热补丁内核模块,从而实现通过内核热补丁对所述Linux操作系统的修复。在生成所述热补丁内核模块时,可以使用所述函数更改集调用Kernellivepatching技术,Kernellivepatching技术为开源技术包,具有把函数集制作成可安装补丁包的功能,通过Kernellivepatching技术对所述函数更改集的处理,可以把所述函数更改集编译成一个内核模块,即生成了所述热补丁内核模块。在生成所述热补丁内核模块之后,可以运行所述内核热补丁所针对的漏洞对应的程序,验证所述热补丁内核模块是否有效,如果漏洞消失说明所述热补丁内核模块有效。其本文档来自技高网...

【技术保护点】
1.一种Linux平台的修复方法,其特征在于,包括:/n根据Linux平台的内核原代码,获得前置对象文件;/n根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;/n根据所述前置文件和所述后置文件,获得函数更改集;/n若判断获知所述函数更改集满足热补丁条件,则生成热补丁内核模块。/n

【技术特征摘要】
1.一种Linux平台的修复方法,其特征在于,包括:
根据Linux平台的内核原代码,获得前置对象文件;
根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;
根据所述前置文件和所述后置文件,获得函数更改集;
若判断获知所述函数更改集满足热补丁条件,则生成热补丁内核模块。


2.根据权利要求1所述的方法,其特征在于,所述若判断获知所述函数更改集满足热补丁条件包括:
统计所述函数更改集中涉及的函数数量;
若判断获知所述函数数量小于数量阈值,则确定所述函数更改集满足所述热补丁条件。


3.根据权利要求1所述的方法,其特征在于,所述若判断获知所述函数更改集满足热补丁条件包括:
根据所述函数更改集的每个函数在内存中的开始地址和结束地址,获得所述函数更改集的每个函数的范围大小;
根据所述函数更改集的每个函数的范围大小,获得所述函数更改集的数据总范围;
若判断获知所述函数更改集的数据总范围小于范围阈值,则确定所述函数更改集满足所述热补丁条件。


4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
接收函数调用请求;
若判断获知所述函数调用请求包括旧函数,则调用所述旧函数对应的新函数;其中,所述新函数是所述旧函数在打上所述内核热补丁代码之后获得的函数;
通过所述新函数对所述函数调用请求进行处理。


5.一种Linux平台的修复装置,其特征在于,包括:
第一获得单元,用于根据Linux平台的内核原代码,获得前置对象文件;
第二获得单元,用于根据Linux平台的内核原代码以及内核热补丁代码,获得后置对象文件;
第三...

【专利技术属性】
技术研发人员:王竟成刘映镇郑天文黄梓锋
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1