CN104796403A - 快速补丁扫描引擎的实现方法 - Google Patents
快速补丁扫描引擎的实现方法 Download PDFInfo
- Publication number
- CN104796403A CN104796403A CN201510110433.7A CN201510110433A CN104796403A CN 104796403 A CN104796403 A CN 104796403A CN 201510110433 A CN201510110433 A CN 201510110433A CN 104796403 A CN104796403 A CN 104796403A
- Authority
- CN
- China
- Prior art keywords
- patch
- terminal
- scanning engine
- software
- scanning
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种快速补丁扫描引擎的实现方法,包括以下步骤:步骤一、补丁扫描引擎实时监控补丁发布网站,并在监控到补丁发布网站发布补丁后第一时间将软件补丁索引包下载;步骤二、分析上述下载的软件补丁索引包,通过MD5散列算法对比软件补丁与官网数据的一致性;步骤三、将上述步骤二分析对比无误的软件补丁安装包通过基于P2P的智能流量负载系统,分发到终端上;步骤四、终端的补丁扫描引擎利用多核CPU的纤程并发机制,同时对上述步骤三分发的多个补丁进行扫描,并快速的使用HASH算法进行补丁分析和匹配,并对终端进行补丁扫描,确保终端安装最新的补丁。以实现提高补丁获取速度并保证终端及时打补丁的优点。
Description
技术领域
本发明涉及信息技术领域,具体地,涉及一种快速补丁扫描引擎的实现方法。
背景技术
伴随着计算机网络技术在各方面越来越多的应用,蠕虫、病毒等网络攻击事件频繁爆发,网络安全问题日益突出,大部分的网络攻击都是基于操作系统或应用程序的漏洞进行的。这些蠕虫可以在几分钟,甚至更短的时间内,感染网络中大量的漏洞主机。目前,各种软件的漏洞已经成为大规模网络与信息安全事件和重大信息泄露事件的主要原因之一。针对计算机漏洞带来的危害,安装相应的补丁是最有效、也是最经济的防范措施。对于互联网上数目众多的主机节点和日益复杂的各种应用,很难确保补丁被及时的安装,而且补丁实施基本是需求方到发布方去下载补丁程序并安装的过程,而不是发布方主动为需求方提供补丁程序并进行针对性的部署,因此补丁实施更依赖于非专业的需求方。对于主机数目众多、应用种类繁杂的大型网络,不能及时跟踪补丁的更新,不能实施有效的部署,将极大地威胁到网络与信息安全,造成不可挽回的损失。
研究表明,操作系统和应用软件的漏洞,经常成为安全攻击的入口。系统漏洞,也叫系统脆弱性(Vulnerability),是计算机系统在硬件、软件、协议的设计与实现过程中或系统安全策略上存在的缺陷和不足。非法用户可利用系统安全漏洞获得计算机系统的额外权限,在未经授权的情况下访问或提高其访问权,破坏系统,危害计算机系统安全。系统安全漏洞是针对计算机安全而言的,广义的系统安全漏洞是一切导致威胁、损坏计算机系统安全的因素。每个平台无论是硬件还是软件都存在漏洞,没有绝对安全的系统。
对于每个存在漏洞的系统,及时安装补丁都是非常必要的防范机制,可以有效防止系统被攻击或破坏。目前多数补丁管理软件采取的是客户端与服务器(C/S)的方式,用户要进行漏洞修复,必须登录补丁服务器进行更新。然而,在补丁发布后,由于用户安全意识薄弱和软件更新的复杂性等原因,往往导致用户不能及时安装补丁,而大部分的网络攻击正是利用这段时间进行的。例如,Gkantsidis等人的实验显示在补丁公布后的 24 小时内,只有 80%不同的用户会进行补丁的下载和安装。客户端与服务器的补丁发布模式,严重影响了补丁的发布效率,无法与快速传播的蠕虫相抗衡。
目前,补丁发布广泛采用的都是 Client/Server 体系。例如,微软的Windows 更新,使用的是 WSUS (Windows Server Update Services)进行补丁的管理。首先用户向服务器发出补丁下载请求,决定哪些补丁需要进行下载,接着从分发服务器进行补丁的下载,最后是补丁的安装。它的基本原理是客户端必须登录到服务器上,才可以进行软件的更新,是一种客户端与服务器直接相连的补丁发布方式。
按照这种补丁发布模式,当用户量很少时,是可以在很短时间内完成软件的更新。但如果需要下载的补丁较大,客户端数目众多,在同一时间段内有数百万的计算机登录到服务器上进行软件的更新,将会给服务器带来难以承受的负荷,不仅会减缓传播速度,也会堵塞网络的流通。
根据目前补丁的发布策略,研究发现从补丁发布到用户完成更新,中间可能会延误很长一段时间。然而在这段时间内,攻击者就有可能利用补丁来生成新的漏洞。APEG(Automatic patch-based exploit generation),是一种基于补丁的漏洞利用自动生成技术,通过研究发现,它很容易在目前的补丁发布方案中实现,用于攻击未打补丁,带有漏洞的系统。简单的说,APEG 就是对于程序 P 与打了补丁的程序 P′进行逆向工程分析,定位它们之间的区别所在,自动生成漏洞,威胁用户安全的一种技术。恶意用户在接收到补丁后的几分钟之内,可以利用APEG 找出漏洞,编写蠕虫代码,对还未安装补丁的用户发动攻击。然而,根据目前的补丁发布方式,在几分钟之内使所有用户都安装上补丁是根本办不到的。
根据目前蠕虫的传播速度,知道要想真正有效的发挥补丁的修复作用,保障系统的安全,就必须赶在蠕虫大范围传播之前,给系统安装上补丁,这是一个蠕虫与补丁赛跑的过程,谁的速度快,谁就可以最终阻止对方的入侵。
分析目前软件补丁分发的情况,可以发现如下问题:(1)目前的补丁的发布速度过于缓慢,无法有效的进行补丁的传播;(2)基于C/S 的补丁发布模式,使得在同一段时间访问服务器的用户量过多,会造成服务器繁忙,导致更新不能及时有效的完成;(3)用户的安全防范意识差,很多用户不愿意,或不能够及时的更新系统,使得网络中的很多主机长期处于无人管理状态;(4)恶意蠕虫具有传播迅速的特点,使得软件补丁无法及时地应用在主机上,导致蠕虫不断的威胁网络的安全。因此,传统的防病毒技术、入侵检测技术和防火墙技术在与这种高速传播的网络蠕虫对抗中始终处于劣势。
发明内容
本发明的目的在于,针对上述问题,提出一种快速补丁扫描引擎的实现方法,以实现提高补丁获取速度并保证终端及时打补丁的优点。
为实现上述目的,本发明采用的技术方案是:
一种快速补丁扫描引擎的实现方法,包括以下步骤:
步骤一、补丁扫描引擎实时监控补丁发布网站,并在监控到补丁发布网站发布补丁后第一时间将软件补丁索引包下载;
步骤二、分析上述下载的软件补丁索引包,通过MD5散列算法对比软件补丁与官网数据的一致性;
步骤三、将上述步骤二分析对比无误的软件补丁安装包通过基于P2P的智能流量负载系统,分发到终端上;
步骤四、终端的补丁扫描引擎利用多核CPU的纤程并发机制,同时对上述步骤三分发的多个补丁进行扫描,并快速的使用HASH算法进行补丁分析和匹配,并对终端进行补丁扫描,确保终端安装最新的补丁。
优选的,上述步骤四中终端的补丁扫描引擎,采用多线程和 CPU 亲和力技术针对多核CPU做应用层面的优化,采用 Cache在微架构层面进行优化。
优选的上述步骤一中的补丁扫描引擎内置性能监控平衡探测器,从而根据硬件的性能智能的提高和放慢补丁扫描速度。
本发明的技术方案具有以下有益效果:
本发明的技术方案的补丁扫描引擎在获取到软件的补丁信息之后,会对补丁进行一次预先的优化分析,得出补丁里面的文件MD5信息、注册表信息、文件大小信息和是否安装的判断依据,然后生成内部使用的一个优化后的数据结构,供终端代理程序扫描时候使用,由于前面已经进行过优化,所以扫描速度会很快,而且对终端的性能消耗几乎没有。
本发明提出的技术方案充分利用了当前主流的多核CPU多线程优势,加快了补丁扫描引擎扫描速度,此外,针对补丁的正确性和准确性进行了对比保障了补丁包的数据安全,考虑到C/S方式对服务器的要求和多终端并发的庞大压力,引入P2P智能流量负载技术,大大减少了因为服务器负载过度带来的内网管理故障,保证了终端计算机的安全,达到了及时扫描和安装最新补丁的要求。
达到提高补丁获取速度并保证终端及时打补丁的目的。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明实施例所述的快速补丁扫描引擎的实现方法的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图1所示, 一种快速补丁扫描引擎的实现方法,包括以下步骤:
步骤一、补丁扫描引擎实时监控补丁发布网站,并在监控到补丁发布网站发布补丁后第一时间将软件补丁索引包下载;
步骤二、分析上述下载的软件补丁索引包,通过MD5散列算法对比软件补丁与官网数据的一致性;
步骤三、将上述步骤二分析对比无误的软件补丁安装包通过基于P2P的智能流量负载系统,分发到终端上;
步骤四、终端的补丁扫描引擎利用多核CPU的纤程并发机制,同时对上述步骤三分发的多个补丁进行扫描,并快速的使用HASH算法进行补丁分析和匹配,并对终端进行补丁扫描,确保终端安装最新的补丁。
优选的,步骤四中终端的补丁扫描引擎,采用多线程和 CPU 亲和力技术针对多核CPU做应用层面的优化,采用 Cache在微架构层面进行优化。使得扫描引擎能充分利用多核CPU的纤程并发机制,能同对多个补丁进行扫描,加上提前对补丁的预处理的排序和索引构建,能够快速的使用HASH算法进行补丁分析和匹配。
优选的,步骤一中的补丁扫描引擎内置性能监控平衡探测器,从而根据硬件的性能智能的提高和放慢补丁扫描速度。从而达到不占用系统资源,不影响电脑用户使用体验的目的。
本发明技术方案通过持续刷新官方补丁发布系统数据,第一时间获取到最新的补丁,提高了补丁获取速度并保证了终端及时打补丁。
充分应用MD5算法的优势,对下载下来的补丁进行对比和验证,保证补丁程序与官方的完全一致,防止下载到被篡改的补丁。
结合P2P传输的特点:当出现新的补丁更新,如果终端一起采用传统的下载方式,请求补丁下载的时候,会严重的占有网络资源,造成网络的拥塞,导致其他的业务无法正常开展。这是不符合风险控制管理的,因而在终端引进了 P2P下载技术。该技术可以合理的分配网络资源,保护局域网内的网络带宽,同时还能缓解同时请求补丁时候对服务器的承载负荷,并且P2P下载可以对客户端进行下载和流量控制技术,很好的保证了网络的负载均衡。采取 P2P 方式进行软件更新,可以使系统中每个完成更新的结点帮助进行补丁的分发。
并针对多核CPU进行优化:将应用程序划分成多个独立的任务,并确定这些任务之间的相互依赖关系,根据实际的需要,通过不断的调优,来确定线程数量的最佳值,同时考虑带宽、数据竞争及数据同步不当等因素,从而能够最大程度地利用多核CPU的优势。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种快速补丁扫描引擎的实现方法,其特征在于,包括以下步骤:
步骤一、补丁扫描引擎实时监控补丁发布网站,并在监控到补丁发布网站发布补丁后第一时间将软件补丁索引包下载;
步骤二、分析上述下载的软件补丁索引包,通过MD5散列算法对比软件补丁与官网数据的一致性;
步骤三、将上述步骤二分析对比无误的软件补丁安装包通过基于P2P的智能流量负载系统,分发到终端上;
步骤四、终端的补丁扫描引擎利用多核CPU的纤程并发机制,同时对上述步骤三分发的多个补丁进行扫描,并快速的使用HASH算法进行补丁分析和匹配,并对终端进行补丁扫描,确保终端安装最新的补丁。
2.根据权利要求1所述的快速补丁扫描引擎的实现方法,其特征在于, 上述步骤四中终端的补丁扫描引擎,采用多线程和 CPU 亲和力技术针对多核CPU做应用层面的优化,采用 Cache在微架构层面进行优化。
3.根据权利要求1或2所述的快速补丁扫描引擎的实现方法,其特征在于,上述步骤一中的补丁扫描引擎内置性能监控平衡探测器,从而根据硬件的性能智能的提高和放慢补丁扫描速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510110433.7A CN104796403A (zh) | 2015-03-13 | 2015-03-13 | 快速补丁扫描引擎的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510110433.7A CN104796403A (zh) | 2015-03-13 | 2015-03-13 | 快速补丁扫描引擎的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104796403A true CN104796403A (zh) | 2015-07-22 |
Family
ID=53560915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510110433.7A Pending CN104796403A (zh) | 2015-03-13 | 2015-03-13 | 快速补丁扫描引擎的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104796403A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106997441A (zh) * | 2016-01-22 | 2017-08-01 | 吴有亮 | 自动检测与清除集成电路设计中功能性木马的方法和装置 |
CN108268272A (zh) * | 2017-02-17 | 2018-07-10 | 平安科技(深圳)有限公司 | 基于wsus的补丁更新方法和装置 |
CN111898118A (zh) * | 2020-07-13 | 2020-11-06 | 北京中软华泰信息技术有限责任公司 | 一种基于自动推演的linux软件安全升级系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064722A1 (en) * | 2002-10-01 | 2004-04-01 | Dinesh Neelay | System and method for propagating patches to address vulnerabilities in computers |
CN101119231A (zh) * | 2007-07-19 | 2008-02-06 | 南京联创网络科技有限公司 | 计算机安全漏洞库集中管理并自动下发补丁的方法 |
CN102156650A (zh) * | 2011-03-02 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种实现补丁自动分析的方法及装置 |
CN102647436A (zh) * | 2011-02-21 | 2012-08-22 | 腾讯科技(深圳)有限公司 | 一种基于点对点的文件发布方法及系统 |
-
2015
- 2015-03-13 CN CN201510110433.7A patent/CN104796403A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064722A1 (en) * | 2002-10-01 | 2004-04-01 | Dinesh Neelay | System and method for propagating patches to address vulnerabilities in computers |
CN101119231A (zh) * | 2007-07-19 | 2008-02-06 | 南京联创网络科技有限公司 | 计算机安全漏洞库集中管理并自动下发补丁的方法 |
CN102647436A (zh) * | 2011-02-21 | 2012-08-22 | 腾讯科技(深圳)有限公司 | 一种基于点对点的文件发布方法及系统 |
CN102156650A (zh) * | 2011-03-02 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种实现补丁自动分析的方法及装置 |
Non-Patent Citations (1)
Title |
---|
李建安,谷利泽,杨义先: ""漏洞扫描与补丁管理系统的设计与实现"", 《第一届中国高校通信类院系学术研讨会论文集》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106997441A (zh) * | 2016-01-22 | 2017-08-01 | 吴有亮 | 自动检测与清除集成电路设计中功能性木马的方法和装置 |
CN106997441B (zh) * | 2016-01-22 | 2019-09-10 | 吴有亮 | 自动检测与清除集成电路设计中功能性木马的方法和装置 |
CN108268272A (zh) * | 2017-02-17 | 2018-07-10 | 平安科技(深圳)有限公司 | 基于wsus的补丁更新方法和装置 |
CN108268272B (zh) * | 2017-02-17 | 2021-08-31 | 平安科技(深圳)有限公司 | 基于wsus的补丁更新方法和装置 |
CN111898118A (zh) * | 2020-07-13 | 2020-11-06 | 北京中软华泰信息技术有限责任公司 | 一种基于自动推演的linux软件安全升级系统及方法 |
CN111898118B (zh) * | 2020-07-13 | 2024-04-26 | 北京中软华泰信息技术有限责任公司 | 一种基于自动推演的linux软件安全升级系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zimmermann et al. | Small world with high risks: A study of security threats in the npm ecosystem | |
CN111565199B (zh) | 网络攻击信息处理方法、装置、电子设备及存储介质 | |
US11340890B2 (en) | Integrity assurance and rebootless updating during runtime | |
US8869142B2 (en) | Secure content publishing and distribution | |
CN107944232A (zh) | 一种基于白名单技术的主动防御系统的设计方法及系统 | |
US10565378B1 (en) | Exploit of privilege detection framework | |
US9420049B1 (en) | Client side human user indicator | |
EP2748751B1 (en) | System and method for day-zero authentication of activex controls | |
US20220366057A1 (en) | Detecting vulnerabilities in managed client devices | |
US8739287B1 (en) | Determining a security status of potentially malicious files | |
US8806629B1 (en) | Automatic generation of policy-driven anti-malware signatures and mitigation of DoS (denial-of-service) attacks | |
US20140380473A1 (en) | Zero-day discovery system | |
CN105637479A (zh) | 用于以受信方式修改计算机程序的方法和装置 | |
CN104270467B (zh) | 一种用于混合云的虚拟机管控方法 | |
CN103986743A (zh) | 用于在物联网中采集数据的方法、装置和系统 | |
CN104732147A (zh) | 一种应用程序处理方法 | |
CN111131176B (zh) | 资源访问控制方法、装置、设备及存储介质 | |
CN104573435A (zh) | 用于终端权限管理的方法和终端 | |
CN104375869A (zh) | 自启动应用控制方法及装置 | |
WO2013185483A1 (zh) | 签名规则的处理方法、服务器及入侵防御系统 | |
CN111914249A (zh) | 一种程序白名单的生成方法、程序更新方法及装置 | |
CN104796403A (zh) | 快速补丁扫描引擎的实现方法 | |
US20220391506A1 (en) | Automated Interpreted Application Control For Workloads | |
KR102559568B1 (ko) | 사물인터넷 인프라 환경에서의 보안통제 장치 및 방법 | |
KR20190099816A (ko) | 웹 페이지 위변조 탐지 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150722 |
|
RJ01 | Rejection of invention patent application after publication |