CN104915595A - 云平台虚拟化漏洞修复的方法及装置 - Google Patents

云平台虚拟化漏洞修复的方法及装置 Download PDF

Info

Publication number
CN104915595A
CN104915595A CN201510375366.1A CN201510375366A CN104915595A CN 104915595 A CN104915595 A CN 104915595A CN 201510375366 A CN201510375366 A CN 201510375366A CN 104915595 A CN104915595 A CN 104915595A
Authority
CN
China
Prior art keywords
leak
memory field
patch
virtual machine
data storehouse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510375366.1A
Other languages
English (en)
Other versions
CN104915595B (zh
Inventor
胡智斌
蔡玉光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qianxin Technology Group Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510375366.1A priority Critical patent/CN104915595B/zh
Publication of CN104915595A publication Critical patent/CN104915595A/zh
Application granted granted Critical
Publication of CN104915595B publication Critical patent/CN104915595B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种云平台虚拟化漏洞修复的方法及装置,涉及信息安全技术领域,主要目的在于解决在虚拟机中进行漏洞修复时,出现关闭或者重新启动虚拟机的问题。本发明的主要技术方案包括:在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;从漏洞修复数据库中获取漏洞对应的漏洞修复补丁;将漏洞修复补丁注入内存区间,以修改内存区间中漏洞对应的程序代码。本发明主要应用于虚拟机中通过热补丁修复漏洞的过程中。

Description

云平台虚拟化漏洞修复的方法及装置
技术领域
本发明涉及信息安全技术领域,特别是涉及一种云平台虚拟化漏洞修复的方法及装置。
背景技术
随着信息技术的发展,虚拟化技术得到越来越广泛的认可及使用。虚拟化技术是一种资源管理技术,是将计算机的各种实体资源,予以抽象、转换后呈现出来,打破实体机构间不可分割的障碍,提高了资源利用率,提高了运营效率。虚拟机(Virtual Machine,VM)是虚拟化技术的一种,VM是指可以像真实物理机一样运行应用程序的计算机的软件实现。
为了充分利用资源,可以在服务器上安装由虚拟机软件模拟出的一台虚拟机,即逻辑上的服务器,在该虚拟机运行过程中,用户可以像对真实物理机的操作一样,对虚拟机进行操作。例如,当检测到虚拟机中出现高危漏洞时,可以采用通过升级源代码的方式,对该高危漏洞进行修复,但是,完成修复该高危漏洞的前提是关闭或者重新启动该虚拟机,如此便会导致虚拟机间断或者停机的问题;由于虚拟机中同时运行多个应用程序,若关闭或者重新启动该虚拟机,会造成虚拟机业务中断。
发明内容
有鉴于此,本发明提供的一种云平台虚拟化漏洞修复的方法及装置,主要目的在于解决在虚拟机中进行漏洞修复时,出现关闭或者重新启动虚拟机的问题。
依据本发明一个方面,本发明提供了一种云平台虚拟化漏洞修复的方法,包括:
在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
从漏洞修复数据库中获取漏洞对应的漏洞修复补丁;
将漏洞修复补丁注入内存区间,以修改内存区间中漏洞对应的程序代码。
依据本发明另一个方面,本发明提供了一种云平台虚拟化漏洞修复的装置,包括:
确定单元,用于在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
获取单元,用于从漏洞修复数据库中获取漏洞对应的漏洞修复补丁;
注入单元,用于将获取单元获取的漏洞修复补丁注入确定单元确定的内存区间,以修改内存区间中漏洞对应的程序代码。
借由上述技术方案,本发明提供的云平台虚拟化漏洞修复的方法及装置,首先通过预设检索漏洞规则,确定漏洞所在的内存区间,从漏洞修复数据库中获取该对应的漏洞修复补丁,将获取的漏洞修复补丁注入到该漏洞对应的内存区间中,本发明中,在确保虚拟机正常运行的情况下,即保证虚拟机不重启或者不关闭,将所述漏洞修复补丁注入到漏洞对应的内存区间内,修改该漏洞对应的程序代码,实现漏洞修复。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种云平台虚拟化漏洞修复的方法的流程图;
图2示出了本发明实施例提供的一种云平台虚拟化漏洞修复的装置的组成框图;
图3示出了本发明实施例提供的另一种云平台虚拟化漏洞修复的装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供一种云平台虚拟化漏洞修复的方法,如图1所示,该方法包括:
101、在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间。
在修复虚拟机中的漏洞时,首先需要准确的查找到存储该漏洞对应的内存区间,该内存区间中可能存储有一个或多个程序,通过预设检索漏洞规则查找内存区间中含有漏洞的程序,确定该漏洞的具体位置。需要说明的是,所述内存区间中可以包含多个程序,而不同的程序对应有不同的内存块,以方便程序的开发者对该程序进行统一管理。示例性的,假设,一个内存区间中存储有三个程序,分别为程序1、程序2、程序3,可以将程序1存储在内存区间中的内存块1中,并将该程序对应不同行的程序代码进行编号,以便开发者能够更快速的确定漏洞的具体位置;将程序2存储在内存区间中的内存块2中,并将该程序对应不同行的程序代码进行编号;将程序3存储在内存区间中的内存块4中,并将该程序对应不同行的程序代码进行编号;具体的,本发明实施例对程序存储的具体形式不进行限定。
所述预设检索漏洞规则为基于漏洞关键字及符号表预设的规则。漏洞分为不同的类型,不同的类型的漏洞对应不同的漏洞关键字,因此,在确定漏洞内存区间时,可以通过漏洞关键字查找并确定该漏洞关键字对应的漏洞的内存区间;在本发明实施例的另一种实现方式中,预设检索漏洞规则为基于符号表预设的规则,确定漏洞所在的内存区间,其中,所述符号表为开发者在编译程序的过程中不断收集、记录及使用程序中一些语法符号的类型和特征等相关信息,符号表中包含符号名、地址、注释等信息。通过查找符号表中记录的信息能够确定漏洞所在的内存区间。本发明实施例对所述预设检索漏洞规则中包含的内容、漏洞关键字的具体类型、符号表中包含的内容等信息不进行具体限定。
102、从漏洞修复数据库中获取漏洞对应的漏洞修复补丁。
需要说明的是,本发明实施例中所述的漏洞为已知漏洞,即该漏洞有对应的漏洞修复补丁。在步骤101确定漏洞所在的内存区间后,向云平台发送获取漏洞修复数据库的请求信息,云平台在接收到该请求信息之后,向虚拟机发送对应的漏洞修复数据库,虚拟机接收到该漏洞修复数据库后,查找该漏洞对应的漏洞修复补丁。需要说明的是,所述漏洞修复数据库中每条信息记录有漏洞所在的内存区间、漏洞修复补丁,所述漏洞所在的内存区间与漏洞修复补丁均唯一并且一一对应。在本发明实施例的一种实现方式中,虚拟机可以将获取到的漏洞修复数据库保存到虚拟机本地中,在确定漏洞所在的内存区间之后,判断虚拟机中是否保存有漏洞修复数据库,,若存在,则无需向云平台发送漏洞修复数据库的请求信息,若不存在,则向云平台发送漏洞修复数据库的请求信息;本发明实施例对虚拟机向云平台获取漏洞修复数据库的时机不进行具体的限定。
在实际的应用中,虚拟机接收到该漏洞修复数据库后,在查找该漏洞对应的漏洞修复补丁时,可以直接从所述漏洞修复数据库中获取到漏洞修复补丁,也可以通过该漏洞修复数据库中记录的该漏洞修复补丁的链接地址,获取该漏洞修复补丁,其中,该漏洞修复补丁的链接地址可以为访问互联网络的链接地址,也可以为保存在虚拟机本地中的链接地址。具体的本发明实施例对虚拟机查找并获取该漏洞修复补丁的实现过程不进行限定。
103、将漏洞修复补丁注入内存区间。
将步骤102中获取的漏洞修复补丁注入到漏洞所在的内存区间中,以修改内存区间中漏洞对应的程序代码。需要说明的是,在向内存区间注入漏洞修复补丁的过程中,无需关闭或者重启虚拟机即可完成漏洞修复。
本发明实施例提供的云平台虚拟化漏洞修复的方法,首先通过预设检索漏洞规则,确定漏洞所在的内存区间,从漏洞修复数据库中获取该对应的漏洞修复补丁,将获取的漏洞修复补丁注入到该漏洞对应的内存区间中,本发明实施例中,在确保虚拟机正常运行的情况下,即保证虚拟机不重启或者不关闭,将所述漏洞修复补丁注入到漏洞对应的内存区间内,修改该漏洞对应的程序代码,实现漏洞修复。
进一步的,在确定漏洞所在的内存区间之前,虚拟机向物理机发送启动热补进程的请求信息,该热补进程能够加载预设配置文件,所述预设配置文件中记录有对应于漏洞修复补丁的信息,其中,所述热补进程运行于物理机中,而不是运行于虚拟机中。所述预设配置文件使用可扩展标记语言XML编写,通过XML描述漏洞所在的内存区间及漏洞修复补丁等信息。预设配置文件中记录有虚拟机中所有的已知漏洞所在的内存区间及漏洞修复补丁,根据不同的漏洞类型形成一条一条的记录,示例性的,预设配置文件中记录的信息可以以表格的形式进行记录,如表1所示,表1示出了预设配置文件中记录的漏洞所在的内存区间及漏洞修复补丁;预设配置文件中记录的信息还可以以链表的形式进行记录。其中,表1仅为示例性的举例,本发明实施例对预设配置文件中记录的内容及记录内容的形式不进行具体的限定。
表1
序号 内存区间 漏洞修复补丁
1 内存区间3 漏洞修复补丁C
2 内存区间4 漏洞修复补丁D
3 内存区间6 漏洞修复补丁F
…… …… ……
在本发明实施例的另一种实现方式中,物理机也可以对虚拟机进行监控,当监控到在物理机中加载运行虚拟机时,启动热补进程;或者,在启动物理机时,直接启动热补进程。本发明实施例对启动热补进程的时机不进行限定。
进一步的,基于前述的启动热补进程,在确定漏洞所在的内存区间时,首先获取预设配置文件,向热补进程发送监听漏洞的指令消息,确定漏洞所在的内存区间。所述预设配置文件中记录有虚拟机中所有的已知漏洞所在的内存区间,热补进程会监听预设配置文件中的记录的所有的已知漏洞所在的内存区间,确定漏洞所在的内存区间。在具体实施时,在向热补进程发送监听漏洞的指令消息时,可以指示热补进程监听预设配置文件中记录的所有内存区间,也可以指定热补进程具体监听的内存区间,例如,指定一些高危漏洞经常出现的内存区间进行监听。
进一步的,在热补进程在监听漏洞的过程中,确定漏洞所在的内存区间后,需要将漏洞修复补丁注入该内存区间中。本发明实施例可以采用但不局限于以下的方式实现将漏洞修复补丁注入所述内存区间:
方式一:热补进程加载预设配置文件,将漏洞修复补丁注入所述内存区间。当监听及内存区间被访问时,首先通过热补进程加载预设配置文件,将所述预设配置文件中记录的漏洞修复补丁注入内存区间中所述漏洞对应的进程中,以修改漏洞进程对应的程序代码。
方式二:向所述漏洞对应的进程发送挂起进程的控制指令,对所述进程对应的程序代码进行重写。内存区间中可能执行有多个进程,对该多个进程进行判断,确定漏洞对应的进程,并向该进程发送挂起进程的控制指令,将该进程进行暂停,获取执行该漏洞对应进程的程序代码,对该程序代码进行重写,执行重写后的程序代码实现漏洞的修复。在本发明实施例的另一种实现方式中,在获取执行该漏洞对应进程后,可以对空白的漏洞修复补丁进行编写,并将编写后的漏洞修复补丁注入到所述漏洞对应的进程中,实现漏洞修复。本发明实施例对将漏洞修复补丁注入内存区间的具体实现方式不进行限定。
进一步的,由于漏洞的出现是没有规则的,即漏洞出现的时间不确定,对应不同的漏洞需要不同的修复方式,因此,漏洞修复数据库中记录的内容要及时更新,并及时下发给虚拟机,以便虚拟机能够基于更新后的漏洞修复数据库进行漏洞修复。虚拟机为了能够及时的对本地保存的漏洞修复数据库进行更新,除了可以通过向云平台发送获取漏洞修复数据库的请求信息的方式之外,还可以通过如下方式:虚拟机接收云平台下发的漏洞修复数据库,基于接收到的所述漏洞修复数据库更新本地保存的漏洞修复数据库。当云平台中有更新后的漏洞修复数据库时,会向虚拟机下发更新后的漏洞修复数据库,在云平台向虚拟机下发漏洞修复数据库时,可以采用但不局限于以下的方式实现,例如,当云平台中有更新后的漏洞修复数据库时,立即向虚拟机下发所述漏洞修复数据库;或者,云平台设置自动向虚拟机下发漏洞修复数据库,在自动向虚拟机下发漏洞修复数据库之前,对漏洞修复数据库中的内容进行判断,若有更新后的漏洞修复数据库,则向虚拟机下发漏洞修复数据库;若没有更新后的漏洞修复数据库,则向虚拟机下发未更新的通知消息。本发明实施例对获取漏洞修复数据库的时机及方式不进行具体的限定。
需要说明的是,以上实施例是以一台物理机开启一台虚拟机为例进行说明的,在实际的应用过程中,一台物理机中可能会同时开启多台虚拟机,多台虚拟机和一台虚拟机在修复漏洞的过程中,执行相同的漏洞修复操作,存在差异的地方在于,预设配置文件中记录的是多台虚拟机相关的漏洞所在的内存区间及漏洞修复补丁;在通过热补进程进行监听漏洞时,监听的是多台虚拟机中存在的漏洞。其中,有关热补进程监听多台虚拟机的漏洞的详细过程,请参考上述有关热补进程监听一台虚拟机的漏洞的详细描述,本发明实施例在此不在进行赘述。
进一步的,作为对上述图1所示方法的实现,本发明实施例提供一种云平台虚拟化漏洞修复的装置,如图2所示,该装置包括:
确定单元21,用于在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间,在修复虚拟机中的漏洞时,首先需要准确的查找到存储该漏洞对应的内存区间,该内存区间中可能存储有一个或多个程序,通过预设检索漏洞规则查找内存区间中含有漏洞部分的程序,确定该漏洞的具体位置。需要说明的是,所述内存区间中可以包含多个程序对应的代码,而不同的程序对应有不同的内存块,以方便程序的开发者对该程序进行管理;
获取单元22,用于从漏洞修复数据库中获取漏洞对应的漏洞修复补丁,本发明实施例中所述的漏洞为已知漏洞,即该漏洞有对应的漏洞修复补丁。在确定单元确定漏洞所在的内存区间后,向云平台发送获取漏洞修复数据库的请求信息,云平台在接收到该请求信息之后,向虚拟机发送对应的漏洞修复数据库,虚拟机接收到该漏洞修复数据库后,查找该漏洞对应的漏洞修复补丁。需要说明的是,所述漏洞修复数据库中每条信息记录有漏洞所在的内存区间、漏洞修复补丁,所述漏洞所在的内存区间与漏洞修复补丁均唯一并且一一对应;
注入单元23,用于将获取单元22获取的漏洞修复补丁注入确定单元21确定的内存区间,以修改内存区间中漏洞对应的程序代码,需要说明的是,在向内存区间注入漏洞修复补丁的过程中,无需关闭或者重启虚拟机即可完成漏洞修复。
进一步的,如图3所示,装置还包括:
发送单元24,用于在确定单元21确定漏洞所在的内存区间之前,向物理机发送启动热补进程的请求信息,热补进程用于加载预设配置文件,预设配置文件中记录有对应于漏洞修复补丁的信息,所述预设配置文件使用可扩展标记语言XML编写,通过XML描述漏洞所在的内存区间及漏洞修复补丁等信息。预设配置文件中记录有虚拟机中所有的已知漏洞所在的内存区间及漏洞修复补丁,根据不同的漏洞类型形成一条一条的记录。
进一步的,如图3所示,确定单元21,包括:
获取模块211,用于获取预设配置文件;
确定模块212,用于向热补进程发送监听漏洞的指令消息,确定漏洞所在的内存区间,在向热补进程发送监听漏洞的指令消息时,可以指示热补进程监听预设配置文件中记录的所有内存区间,也可以指定热补进程具体监听的内存区间,例如,指定一些高危漏洞经常出现的内存区间进行监听。
进一步的,如图3所示,注入单元23,包括:
加载模块231,用于当监听的内存区间被访问时,热补进程加载预设配置文件;
注入模块232,用于将漏洞修复补丁注入内存区间。
进一步的,如图3所示,注入单元23,包括:
发送模块233,用于当监听的内存区间被访问时,向漏洞对应的进程发送挂起进程的控制指令;
重写模块234,用于对进程对应的程序代码进行重写。
进一步的,如图3所示,装置还包括:
接收单元25,用于在获取单元22从漏洞修复数据库中获取漏洞对应的漏洞修复补丁之前,接收云平台下发的漏洞修复数据库;
更新单元26,用于基于接收单元25接收到的漏洞修复数据库更新本地保存的漏洞修复数据库。
进一步的,确定单元21中的预设检索漏洞规则为基于属性信息预设的规则,属性信息包括:漏洞关键字及符号表。
本发明实施例提供的云平台虚拟化漏洞修复的装置,首先通过预设检索漏洞规则,确定漏洞所在的内存区间,从漏洞修复数据库中获取该对应的漏洞修复补丁,将获取的漏洞修复补丁注入到该漏洞对应的内存区间中,本发明实施例中,在确保虚拟机正常运行的情况下,即保证虚拟机不重启或者不关闭,将所述漏洞修复补丁注入到漏洞对应的内存区间内,修改该漏洞对应的程序代码,实现漏洞修复。
本发明的实施例公开了:
A1、一种云平台虚拟化漏洞修复的方法,其特征在于,包括:
在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁;
将所述漏洞修复补丁注入所述内存区间,以修改所述内存区间中所述漏洞对应的程序代码。
A2、根据权利要求A1所述的方法,其特征在于,在确定漏洞所在的内存区间之前,所述方法还包括:
向物理机发送启动热补进程的请求信息,所述热补进程用于加载预设配置文件,所述预设配置文件中记录有所述漏洞修复补丁的信息。
A3、根据权利要求A2所述的方法,其特征在于,所述确定漏洞所在的内存区间,包括:
获取所述预设配置文件;
向所述热补进程发送监听所述漏洞的指令消息,确定所述漏洞所在的内存区间。
A4、根据权利要求A3所述的方法,其特征在于,所述将所述漏洞修复补丁注入所述内存区间,包括:
当监听的所述内存区间被访问时,所述热补进程加载所述预设配置文件,将所述漏洞修复补丁注入所述内存区间。
A5、根据权利要求A3所述的方法,其特征在于,所述将所述漏洞修复补丁注入所述内存区间,包括:
当监听的所述内存区间被访问时,向所述漏洞对应的进程发送挂起进程的控制指令;
对所述进程对应的程序代码进行重写。
A6、根据权利要求A1所述的方法,其特征在于,在从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁之前,所述方法还包括:
接收云平台下发的所述漏洞修复数据库;
基于接收到的所述漏洞修复数据库更新本地保存的漏洞修复数据库。
A7、根据权利要求A1至A6中任一项所述的方法,其特征在于,所述预设检索漏洞规则为基于属性信息预设的规则,所述属性信息包括:漏洞关键字及符号表。
B8、一种云平台虚拟化漏洞修复的装置,其特征在于,包括:
确定单元,用于在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
获取单元,用于从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁;
注入单元,用于将所述获取单元获取的所述漏洞修复补丁注入所述确定单元确定的所述内存区间,以修改所述内存区间中所述漏洞对应的程序代码。
B9、根据权利要求B8所述的装置,其特征在于,所述装置还包括:
发送单元,用于在确定单元确定漏洞所在的内存区间之前,向物理机发送启动热补进程的请求信息,所述热补进程用于加载预设配置文件,所述预设配置文件中记录有所述漏洞修复补丁的信息。
B10、根据权利要求B9所述的装置,其特征在于,所述确定单元,包括:
获取模块,用于获取所述预设配置文件;
确定模块,用于向所述热补进程发送监听所述漏洞的指令消息,确定所述漏洞所在的内存区间。
B11、根据权利要求B10所述的装置,其特征在于,所述注入单元,包括:
加载模块,用于当监听的所述内存区间被访问时,所述热补进程加载所述预设配置文件;
注入模块,用于将所述漏洞修复补丁注入所述内存区间。
B12、根据权利要求B10所述的装置,其特征在于,所述注入单元,包括:
发送模块,用于当监听的所述内存区间被访问时,向所述漏洞对应的进程发送挂起进程的控制指令;
重写模块,用于对所述进程对应的程序代码进行重写。
B13、根据权利要求B8所述的装置,其特征在于,所述装置还包括:
接收单元,用于在所述获取单元从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁之前,接收云平台下发的所述漏洞修复数据库;
更新单元,用于基于所述接收单元接收到的所述漏洞修复数据库更新本地保存的漏洞修复数据库。
B14、根据权利要求B8至B13中任一项所述的装置,其特征在于,所述确定单元中的所述预设检索漏洞规则为基于属性信息预设的规则,所述属性信息包括:漏洞关键字及符号表。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的发明名称(如确定网站内链接等级的装置)中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (10)

1.一种云平台虚拟化漏洞修复的方法,其特征在于,包括:
在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁;
将所述漏洞修复补丁注入所述内存区间,以修改所述内存区间中所述漏洞对应的程序代码。
2.根据权利要求1所述的方法,其特征在于,在确定漏洞所在的内存区间之前,所述方法还包括:
向物理机发送启动热补进程的请求信息,所述热补进程用于加载预设配置文件,所述预设配置文件中记录有所述漏洞修复补丁的信息。
3.根据权利要求2所述的方法,其特征在于,所述确定漏洞所在的内存区间,包括:
获取所述预设配置文件;
向所述热补进程发送监听所述漏洞的指令消息,确定所述漏洞所在的内存区间。
4.根据权利要求3所述的方法,其特征在于,所述将所述漏洞修复补丁注入所述内存区间,包括:
当监听的所述内存区间被访问时,所述热补进程加载所述预设配置文件,将所述漏洞修复补丁注入所述内存区间。
5.根据权利要求3所述的方法,其特征在于,所述将所述漏洞修复补丁注入所述内存区间,包括:
当监听的所述内存区间被访问时,向所述漏洞对应的进程发送挂起进程的控制指令;
对所述进程对应的程序代码进行重写。
6.根据权利要求1所述的方法,其特征在于,在从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁之前,所述方法还包括:
接收云平台下发的所述漏洞修复数据库;
基于接收到的所述漏洞修复数据库更新本地保存的漏洞修复数据库。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述预设检索漏洞规则为基于属性信息预设的规则,所述属性信息包括:漏洞关键字及符号表。
8.一种云平台虚拟化漏洞修复的装置,其特征在于,包括:
确定单元,用于在虚拟机运行的过程中,通过预设检索漏洞规则,确定漏洞所在的内存区间;
获取单元,用于从漏洞修复数据库中获取所述漏洞对应的漏洞修复补丁;
注入单元,用于将所述获取单元获取的所述漏洞修复补丁注入所述确定单元确定的所述内存区间,以修改所述内存区间中所述漏洞对应的程序代码。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
发送单元,用于在确定单元确定漏洞所在的内存区间之前,向物理机发送启动热补进程的请求信息,所述热补进程用于加载预设配置文件,所述预设配置文件中记录有所述漏洞修复补丁的信息。
10.根据权利要求9所述的装置,其特征在于,所述确定单元,包括:
获取模块,用于获取所述预设配置文件;
确定模块,用于向所述热补进程发送监听所述漏洞的指令消息,确定所述漏洞所在的内存区间。
CN201510375366.1A 2015-06-30 2015-06-30 云平台虚拟化漏洞修复的方法及装置 Active CN104915595B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510375366.1A CN104915595B (zh) 2015-06-30 2015-06-30 云平台虚拟化漏洞修复的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510375366.1A CN104915595B (zh) 2015-06-30 2015-06-30 云平台虚拟化漏洞修复的方法及装置

Publications (2)

Publication Number Publication Date
CN104915595A true CN104915595A (zh) 2015-09-16
CN104915595B CN104915595B (zh) 2018-08-14

Family

ID=54084657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510375366.1A Active CN104915595B (zh) 2015-06-30 2015-06-30 云平台虚拟化漏洞修复的方法及装置

Country Status (1)

Country Link
CN (1) CN104915595B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105809039A (zh) * 2016-03-04 2016-07-27 南京大学 缓冲区溢出漏洞自动修复方法
CN106845245A (zh) * 2016-12-21 2017-06-13 中国科学院信息工程研究所 一种基于Xen虚拟化平台的漏洞热修复方法
CN108009427A (zh) * 2017-11-29 2018-05-08 北京安华金和科技有限公司 一种针对数据库漏洞规则的快速检索方法
CN108345796A (zh) * 2017-05-02 2018-07-31 北京安天网络安全技术有限公司 一种漏洞修复及主机加固方法及系统
CN109117169A (zh) * 2016-12-12 2019-01-01 百度在线网络技术(北京)有限公司 用于修复内核漏洞的方法和装置
CN110457909A (zh) * 2019-08-15 2019-11-15 腾讯科技(深圳)有限公司 虚拟机内存的漏洞修复方法、装置及计算机设备
CN111046390A (zh) * 2019-07-12 2020-04-21 哈尔滨安天科技集团股份有限公司 一种协同防御补丁防护方法、装置及存储设备
CN111163080A (zh) * 2019-12-26 2020-05-15 杭州安恒信息技术股份有限公司 基于内网补丁共享的漏洞修复方法及装置
CN111291368A (zh) * 2018-12-07 2020-06-16 北京奇虎科技有限公司 Cpu漏洞的防御方法及系统
CN111382440A (zh) * 2018-12-27 2020-07-07 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111444509A (zh) * 2018-12-27 2020-07-24 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111859405A (zh) * 2020-07-31 2020-10-30 深信服科技股份有限公司 一种威胁免疫框架、方法、设备及可读存储介质
CN112182590A (zh) * 2020-11-16 2021-01-05 中国银联股份有限公司 一种Web应用的漏洞更新方法及装置
WO2021259109A1 (zh) * 2020-06-24 2021-12-30 中兴通讯股份有限公司 补丁加载方法、网元及计算机可读存储介质
CN110457909B (zh) * 2019-08-15 2024-05-28 腾讯科技(深圳)有限公司 虚拟机内存的漏洞修复方法、装置及计算机设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102982277A (zh) * 2012-12-24 2013-03-20 广东威创视讯科技股份有限公司 一种实现嵌入式系统软件补丁的方法和系统
CN103473505A (zh) * 2012-06-06 2013-12-25 腾讯科技(深圳)有限公司 一种软件漏洞的扫描提示方法和装置
CN103634317A (zh) * 2013-11-28 2014-03-12 北京奇虎科技有限公司 基于云安全对恶意网址信息进行安全鉴定的方法及系统
CN103885808A (zh) * 2014-04-08 2014-06-25 北京奇虎科技有限公司 热补丁处理方法及装置
CN103944920A (zh) * 2014-05-09 2014-07-23 哈尔滨工业大学 基于检测驱动的网络蠕虫主动遏制方法及对抗工具自动生成系统
CN103942073A (zh) * 2014-04-08 2014-07-23 北京奇虎科技有限公司 实现系统热补丁的方法及装置
CN104468563A (zh) * 2014-12-03 2015-03-25 北京奇虎科技有限公司 网站漏洞防护方法、装置及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103473505A (zh) * 2012-06-06 2013-12-25 腾讯科技(深圳)有限公司 一种软件漏洞的扫描提示方法和装置
CN102982277A (zh) * 2012-12-24 2013-03-20 广东威创视讯科技股份有限公司 一种实现嵌入式系统软件补丁的方法和系统
CN103634317A (zh) * 2013-11-28 2014-03-12 北京奇虎科技有限公司 基于云安全对恶意网址信息进行安全鉴定的方法及系统
CN103885808A (zh) * 2014-04-08 2014-06-25 北京奇虎科技有限公司 热补丁处理方法及装置
CN103942073A (zh) * 2014-04-08 2014-07-23 北京奇虎科技有限公司 实现系统热补丁的方法及装置
CN103944920A (zh) * 2014-05-09 2014-07-23 哈尔滨工业大学 基于检测驱动的网络蠕虫主动遏制方法及对抗工具自动生成系统
CN104468563A (zh) * 2014-12-03 2015-03-25 北京奇虎科技有限公司 网站漏洞防护方法、装置及系统

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105809039B (zh) * 2016-03-04 2018-07-27 南京大学 缓冲区溢出漏洞自动修复方法
CN105809039A (zh) * 2016-03-04 2016-07-27 南京大学 缓冲区溢出漏洞自动修复方法
CN109117169B (zh) * 2016-12-12 2022-06-07 百度在线网络技术(北京)有限公司 用于修复内核漏洞的方法和装置
CN109117169A (zh) * 2016-12-12 2019-01-01 百度在线网络技术(北京)有限公司 用于修复内核漏洞的方法和装置
CN106845245B (zh) * 2016-12-21 2019-11-26 中国科学院信息工程研究所 一种基于Xen虚拟化平台的漏洞热修复方法
CN106845245A (zh) * 2016-12-21 2017-06-13 中国科学院信息工程研究所 一种基于Xen虚拟化平台的漏洞热修复方法
CN108345796A (zh) * 2017-05-02 2018-07-31 北京安天网络安全技术有限公司 一种漏洞修复及主机加固方法及系统
CN108009427B (zh) * 2017-11-29 2021-01-26 北京安华金和科技有限公司 一种针对数据库漏洞规则的快速检索方法
CN108009427A (zh) * 2017-11-29 2018-05-08 北京安华金和科技有限公司 一种针对数据库漏洞规则的快速检索方法
CN111291368A (zh) * 2018-12-07 2020-06-16 北京奇虎科技有限公司 Cpu漏洞的防御方法及系统
CN111382440A (zh) * 2018-12-27 2020-07-07 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111444509A (zh) * 2018-12-27 2020-07-24 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111382440B (zh) * 2018-12-27 2024-05-10 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111444509B (zh) * 2018-12-27 2024-05-14 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统
CN111046390A (zh) * 2019-07-12 2020-04-21 哈尔滨安天科技集团股份有限公司 一种协同防御补丁防护方法、装置及存储设备
CN111046390B (zh) * 2019-07-12 2023-07-07 安天科技集团股份有限公司 一种协同防御补丁防护方法、装置及存储设备
CN110457909A (zh) * 2019-08-15 2019-11-15 腾讯科技(深圳)有限公司 虚拟机内存的漏洞修复方法、装置及计算机设备
CN110457909B (zh) * 2019-08-15 2024-05-28 腾讯科技(深圳)有限公司 虚拟机内存的漏洞修复方法、装置及计算机设备
CN111163080A (zh) * 2019-12-26 2020-05-15 杭州安恒信息技术股份有限公司 基于内网补丁共享的漏洞修复方法及装置
CN111163080B (zh) * 2019-12-26 2022-09-27 杭州安恒信息技术股份有限公司 基于内网补丁共享的漏洞修复方法及装置
WO2021259109A1 (zh) * 2020-06-24 2021-12-30 中兴通讯股份有限公司 补丁加载方法、网元及计算机可读存储介质
CN111859405A (zh) * 2020-07-31 2020-10-30 深信服科技股份有限公司 一种威胁免疫框架、方法、设备及可读存储介质
CN112182590A (zh) * 2020-11-16 2021-01-05 中国银联股份有限公司 一种Web应用的漏洞更新方法及装置

Also Published As

Publication number Publication date
CN104915595B (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
CN104915595A (zh) 云平台虚拟化漏洞修复的方法及装置
CN109491695A (zh) 一种集成安卓应用的增量更新方法
CN107451474B (zh) 用于终端的软件漏洞修复方法和装置
CN106796522B (zh) 用于更新源代码文件的系统和方法
CN103559449B (zh) 一种代码改动的检测方法及装置
CN103559065B (zh) 一种ota升级的方法和系统
CN109032631B (zh) 应用程序补丁包获取方法、装置、计算机设备及存储介质
CN103646082A (zh) 一种文件校验的方法及装置
CN105573915A (zh) 一种基于代码覆盖率的测试方法和装置
CN103530420A (zh) 数据文件的动态更新方法及装置
CN105204916A (zh) 基于环境变量的项目进程运行方法及装置
US11842188B2 (en) Continuous integration and deployment pipeline selection based on dynamic mapping
US20120131539A1 (en) Find and Track Information Of Interface Usage Of Software Libraries By Other Software
CN104133699A (zh) 设备系统软件升级方法与系统
Gómez et al. Ring: a unifying meta-model and infrastructure for Smalltalk source code analysis tools
CN106681783A (zh) 一种svn代码检测方法及其系统
CN111104158A (zh) 一种软件打包的方法、装置、计算机设备及存储介质
CN103810099A (zh) 代码跟踪方法及其系统
CN105677394A (zh) 一种终端设备的应用程序升级方法和装置
US20220058260A1 (en) Binary image stack cookie protection
US9841982B2 (en) Locating import class files at alternate locations than specified in classpath information
CN111142922A (zh) 应用程序更新方法、装置、终端及服务器
CN104166541A (zh) 用于更新被测控件库的方法和装置
CN114610516B (zh) 应用程序的修复方法、装置、计算机设备以及存储介质
CN115794858A (zh) 查询语句处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20161230

Address after: 100015 Chaoyang District Road, Jiuxianqiao, No. 10, building No. 3, floor 15, floor 17, 1701-26,

Applicant after: BEIJING QI'ANXIN SCIENCE & TECHNOLOGY CO., LTD.

Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant before: Beijing Qihoo Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 100088 Building 3 332, 102, 28 Xinjiekouwai Street, Xicheng District, Beijing

Patentee after: Qianxin Technology Group Co., Ltd.

Address before: 100015 Jiuxianqiao Chaoyang District Beijing Road No. 10, building 15, floor 17, layer 1701-26, 3

Patentee before: BEIJING QI'ANXIN SCIENCE & TECHNOLOGY CO., LTD.