CN102891752A - 基于网络指纹的软件动态可信认证方法 - Google Patents
基于网络指纹的软件动态可信认证方法 Download PDFInfo
- Publication number
- CN102891752A CN102891752A CN 201110206587 CN201110206587A CN102891752A CN 102891752 A CN102891752 A CN 102891752A CN 201110206587 CN201110206587 CN 201110206587 CN 201110206587 A CN201110206587 A CN 201110206587A CN 102891752 A CN102891752 A CN 102891752A
- Authority
- CN
- China
- Prior art keywords
- network
- software
- fingerprint
- behavior
- monitoring
- 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
Images
Landscapes
- Computer And Data Communications (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种基于网络指纹的软件动态可信认证方法,该方法由4个步骤组成:网络指纹提取、软件网络行为监控、软件网络行为认证、软件动态行为控制,可分别对应4个模块。网络指纹提取模块提取软件的网络指纹信息,网络指纹包括网络协议特征及网络数据特征两部分。软件网络行为监控模块对软件网络指纹中所描述的关键特征进行细粒度监控。软件动态行为认证模块基于网络指纹对监控的网络行为进行动态认证,以判定软件的网络通信行为是否符合预期,是则继续监控,否则交由软件动态行为控制模块处理。软件网络行为控制模块以有利于保障软件动态可信的方式进行处理。本检测方法可有效提升恶意软件免杀的难度,同时可准确检测出各类带有通信特征的未知恶意软件威胁。
Description
技术领域
本发明属于信息系统安全领域,特别涉及一种基于网络指纹的软件动态可信认证方法。
背景技术
随着软件规模的不断增大,软件的开发、集成和演化变得越来越复杂,这导致软件产品在推出时总会含有很多已知或未知的缺陷。这些缺陷对软件系统安全的可靠运行构成了严重的威胁;另一方面,软件的运行和开发环境从传统的静态封闭的状态变成互联网环境下动态开放的状态。越来越多的软件漏洞和缺陷被发现并被恶意攻击者频繁利用。
为了保障软件的运行安全,目前安全界采用了多种防护手段和技术。典型的包括:数据完整性验证技术、特征值检测技术、虚拟机技术、启发式扫描技术、主动防御技术、防火墙技术、补丁自动修补技术、云查杀技术等。
数据完整性验证技术目前已经被很多安全软件所采用,其缺陷在于无法保障软件运行过程中动态行为的可信性,且需要提前获得允许运行软件的数据完整性校验值。
特征值检测技术在检测已知病毒上效果良好,但却无法检测未知病毒,且已知病毒在经过免杀处理之后极易绕过特征值检测技术。
启发式扫描技术根据恶意软件的代码及行为特征经验来判定病毒,其可检测未知病毒,但误报率较高,且也容易被恶意攻击者通过巧妙设计软件行为来绕过。
虚拟机技术结合特征值检测后可以有效对抗已知的加密型病毒,但对未知病毒依然无能为力,且虚拟机机制也容易被病毒检测到和绕过。
主动防御技术对疑似危险行为进行了拦截,但却没有考虑软件行为主体自身的行为特性,因此误报率较高,目前的主动防御技术也存在被绕过甚至被终结的风险。
防火墙技术基于预定规则对网络进出数据进行过滤,可有效抵挡一部分已知的入侵行为,但无法抵抗未知的攻击,容易被绕过。
补丁自动修补技术能够及时地修补已知漏洞,保护系统的安全性,但是目前地下市场有大量的0Day漏洞,其对这些没有补丁的漏洞无能为力。
云查杀技术将病毒判定过程从原来的客户端转移到服务端,从一定程度上说,其提升了病毒判定的能力,但其实时判定速度则有可能不能满足需求,另外,部分云查杀引擎需要上传客户计算机中的文件,也可能对用户数据的私密性产生影响。
可见,现有的安全防护技术很难保证系统的可信性,尤其是系统的动态行为可信性。
如何提高现有计算机终端的安全防护能力,确保计算机系统的安全,已成为当前我国信息安全保障工作中亟待解决的关键问题。
软件动态行为可信技术是可信计算必须解决的一个关键性问题,同时也是促进软件安全、有效增强系统信息安全的一种有效方式。
要确保软件动态行为可信就要确保软件主体的行为“总是以预期的方式,达到预期的目标”。
发明内容
本发明目的在于解决现有技术不足,提出了基于网络指纹的软件动态可信认证方法,其可大大提升恶意软件的免杀难度,能够对各类未知恶意软件进行准确检测,从而增加恶意软件的制作成本,有效保障信息系统的安全性。
本发明提供的基于网络指纹的动态可信认证方法,具体方案如下:
本方法包括四个步骤:网络指纹提取、软件网络行为监控、软件网络行为认证以及软件行为控制,这四个步骤可以分为以下四个阶段来实现:
网络指纹提取阶段:网络指纹包括软件的网络协议特征及网络数据特征。网络协议特征是指,软件对外进行通信采用的网络通信协议,如应用层协议:HTTP、SMTP、POP3、SNMP等,传输层协议:TCP、UDP等;网络数据指纹是指软件采用相应协议对外进行通信时,其数据表现出来的具体特点,如数据的信息熵、上行下行数据包的平均长度,时间间隔,上行下行数据量所占的比例等。不同的软件的网络指纹特征是不一样的,在本阶段,将对主机内所有具备网络通信功能的软件进行指纹提取,并存储在网络指纹库中。另外,为了认证通信软件的身份,还需要提前对通信软件进行数据完整性指纹的提取,并将其存储在软件数据完整性指纹库中。
进行软件数据完整性指纹提取时,根据具体的静态指纹类别采用静态提取方式直接对软件自身进行相应的运算来获取,譬如,如果将MD5值作为软件的静态指纹,则采用MD5算法对目标软件的二进制文件进行计算;
进行软件网络指纹提取时,可由安全服务提供者进行动态提取,也可由软件生产商提供。安全服务提供者动态提取时,在干净的监控环境中,尽可能全面地运行软件的各种功能,采用网络数据捕获技术分进程捕获软件的各类网络通信数据,抽取出指定软件的网络指纹特征。
网络行为监控阶段:在进行软件网络行为动态监控时,将对软件进程的启动行为、所有的网络通信数据进行监控,监控手段既可以在目标系统内核层实现也可能在用户层实现。当软件进程启动时,将首先根据软件数据完整性指纹库中的指纹信息对启动进程对应软件的数据完整性进行验证以确定软件身份,确定软件身份有两个目的:1.确定该软件在预期可允许范围之内,2.为后续该软件产生的网络行为确定其行为标准(即定位网络指纹库中的具体网络行为指纹实体)。
软件网络行为认证阶段:软件网络行为认证中心对监控到的软件启动行为及所有网络通信行为进行认证。当监控到新的执行体(如进程)即将被启动时,则首先对其进行数据指纹认证(数字签名校验、或散列值校验、或校验和校验),认证通过之后,则允许启动新进程。对于所有监控到的网络通信行为,软件网络行为认证中心则根据软件网络指纹来判定当前通信行为(及同一进程之前一段时间之内的通信行为)是否符合预期,符合则放行并继续监控认证后续网络行为,否则交由软件动态行为控制中心处理。
具体认证方式如下:
1.确定该网络行为所对应的具体进程P,通过该进程名及其进程路径信息确定之前已经提取过软件网络指纹的具体软件S,并获得其网络指纹数据NF;如果找不到对应的软件,则转4;
2.确定该软件行为的协议是否符合S的网络指纹NF中的协议特征NF-Protocal,如果不符合,则直接拒绝,并调用软件动态行为控制模块来进行处理,否则,转4;
3.结合之前该进程已经发生的通信数据特征,对网络通信数据进行信息熵分析,上行下行流量比例分析,上行下行包大小比例分析,如果其在S的网络数据特征NF-Data中的标准范围之内,则说明该软件行为正常,将本次网络数据特征保存下来,然后继续对后续网络行为进行监控,转1.否则,说明该软件行为异常,转4;
4.调用软件动态行为控制模块来进行处理;
对于不符合预期的网络行为,软件动态行为控制中心可提示用户该进程可疑,提醒其进行处理,并直接终止该软件行为。
附图说明
图1为本发明给出的一种具体实施方式的实施流程。
具体实施方式
为便于实施,下面给出本发明所提供方法的一种具体实施方式(参见图1):
该实施实例的运行环境为Windows XP操作系统,其目的是防止本系统被外部黑客控制或本系统的私密数据被外部攻击者恶意获取,保障系统的安全性。
步骤101:软件数据完整性指纹提取阶段:
网络指纹包括软件的数据完整性指纹及网络指纹。
进行软件数据完整性指纹提取时,采用MD5算法对目标软件S的二进制文件进行计算,并将其MD5值作为软件的静态指纹进行保存,标记为Z1。
步骤102:软件网络指纹提取阶段:
网络指纹包括软件的网络协议特征及网络数据特征。进行网络指纹提取时,在干净环境中运行指定目标软件,尽可能按照正常需求使用该软件,并同时对该进程的所有通信数据进行捕获,以获取如下网络指纹,记为Z2:网络协议特征(软件对外进行通信时用到的各种网络通信协议,如应用层协议:HTTP、SMTP、POP3、SNMP等,传输层协议:TCP、UDP等);网络数据特征(针对网络协议特征中的不同通信协议的通信数据,统计通信数据的信息熵范围、上行下行数据包大小比例分配范围、上行下行数据量大小比例分配范围)。
步骤103:网络指纹融合阶段:
将Z1及Z2合并为最终的软件P的网络指纹信息。
按照此法依次处理其他软件个体,得到所有软件的指纹信息。
步骤104:软件行为监控阶段:
在Windows下,采用自行编写服务提供者接口程序(SPI程序)的方式(也可采用其他用户态和内核态的系统拦截方式)对所有网络行为进行拦截。
另外采用SSDT Hook方式对软件启动行为进行拦截,对软件模块启动行为进行监控,以捕获软件执行和模块加载行为。
步骤105:软件数据指纹认证阶段:
当监控到软件执行或模块加载时,首先对软件或模块的静态指纹进行校验,具体方法是:重新计算软件的MD5值,然后将其与网络指纹库中的MD5值进行比对,如果找到可匹配项,则放行,否则提示用户进行拒绝或者设置为可信并重新提取指纹,或直接给予拒绝。
步骤106:软件网络行为指纹认证阶段:
软件开始执行之后,自动开始进行软件网络行为认证,具体方法为:当捕获到目标软件的网络通信时,根据目标软件的网络指纹集合来判定网络通信协议以及特定协议对应的网络数据的信息熵、上行下行数据包平均大小,各类不同大小数据包的比例,以及上行下行数据量的大小比例是否符合预期标准,如果符合,则放行,继续监控认证,否则说明软件的通信数据异常,极有可能出现恶意软件入侵,此时交由软件动态行为控制模块来处理。
步骤107:软件动态行为控制阶段:
对于不符合网络指纹预期特征的软网络件行为,首先对用户给出提示,根据用户选择来处理或者直接拒绝软件行为。
Claims (6)
1.一种基于网络指纹的软件动态行为可信认证方法,其特征在于:其包含了如下几个步骤:网络指纹提取、软件网络行为监控、软件网络行为认证、软件网络行为控制。这四个步骤可以设计四个对应的模块来实现。
2.根据权利要求1所述的基于网络指纹的软件动态行为可信认证方法,其特征在于:网络指纹包括软件对外进行网络通信的协议特征和网络数据特征。
3.根据权利要求2所述的基于网络指纹的软件动态行为可信认证方法,其特征在于:需要对本地所有网络通信程序进行网络指纹提取,建立对应的网络程序白名单;进行网络指纹提取时,对于其网络通信协议特征和网络数据特征,可由安全系统研制方自行提取,也可以由软件研制方提供。
4.根据权利要求1所属的基于网络指纹的软件动态行为可信认证方法,其特征在于:在进行软件网络行为监控时,将对本系统的所有网络数据收发行为进行监控,同时确定响应网络数据对应的收发进程,监控手段既可以在目标系统内核层实现也可能在用户层实现。
5.根据权利要求1所属的基于网络指纹的软件动态行为可信认证方法,其特征在于:软件网络行为认证中心对监控到的各类软件网络行为进行认证;当监控到新的执行体(如进程)即将被启动时,则首先对其进行实体身份认证,认证通过之后,则允许启动新进程;当监控到网络通信数据时,软件行为认证中心则根据软件网络指纹来判定当前网络通信数据是否符合预期,符合则放行,否则交由软件网络行为控制中心处理。
6.根据权利要求1和5所属的基于网络指纹的软件动态行为可信认证方法,其特征在于:对于不符合预期的软件网络行为,软件动态行为控制中心可提示用户对应的软件存在异常,让其进行处理,或者直接阻止对应进程的所有行为。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110206587 CN102891752A (zh) | 2011-07-22 | 2011-07-22 | 基于网络指纹的软件动态可信认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110206587 CN102891752A (zh) | 2011-07-22 | 2011-07-22 | 基于网络指纹的软件动态可信认证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102891752A true CN102891752A (zh) | 2013-01-23 |
Family
ID=47535128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110206587 Pending CN102891752A (zh) | 2011-07-22 | 2011-07-22 | 基于网络指纹的软件动态可信认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102891752A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110619214A (zh) * | 2019-08-15 | 2019-12-27 | 苏州浪潮智能科技有限公司 | 一种监控软件正常运行的方法和装置 |
CN111181926A (zh) * | 2019-12-13 | 2020-05-19 | 中国人民解放军战略支援部队信息工程大学 | 一种基于拟态防御思想的安全设备及其运行方法 |
-
2011
- 2011-07-22 CN CN 201110206587 patent/CN102891752A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110619214A (zh) * | 2019-08-15 | 2019-12-27 | 苏州浪潮智能科技有限公司 | 一种监控软件正常运行的方法和装置 |
CN111181926A (zh) * | 2019-12-13 | 2020-05-19 | 中国人民解放军战略支援部队信息工程大学 | 一种基于拟态防御思想的安全设备及其运行方法 |
CN111181926B (zh) * | 2019-12-13 | 2022-04-05 | 中国人民解放军战略支援部队信息工程大学 | 一种基于拟态防御思想的安全设备及其运行方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9223973B2 (en) | System and method for attack and malware prevention | |
US11562068B2 (en) | Performing threat detection by synergistically combining results of static file analysis and behavior analysis | |
US11405410B2 (en) | System and method for detecting lateral movement and data exfiltration | |
US10095866B2 (en) | System and method for threat risk scoring of security threats | |
US10334083B2 (en) | Systems and methods for malicious code detection | |
CN102831356A (zh) | 基于软件指纹的软件动态可信认证方法 | |
US9100425B2 (en) | Method and apparatus for detecting malicious software using generic signatures | |
WO2015149663A1 (zh) | 一种智能电网嵌入式设备网络攻击诱捕系统和诱捕方法 | |
US20140033310A1 (en) | System and Method of Active Remediation and Passive Protection Against Cyber Attacks | |
TWI407328B (zh) | 網路病毒防護方法及系統 | |
EP3374870B1 (en) | Threat risk scoring of security threats | |
CN107493256A (zh) | 安全事件防御方法及装置 | |
CN100557545C (zh) | 一种区分有害程序行为的方法 | |
US8763121B2 (en) | Mitigating multiple advanced evasion technique attacks | |
Kumar et al. | Understanding the behaviour of android sms malware attacks with real smartphones dataset | |
Ahmad et al. | Performance analysis of intrusion detection systems for smartphone security enhancements | |
JP3652661B2 (ja) | サービス不能攻撃の防御方法および装置ならびにそのコンピュータプログラム | |
CN102891752A (zh) | 基于网络指纹的软件动态可信认证方法 | |
US20170346844A1 (en) | Mitigating Multiple Advanced Evasion Technique Attacks | |
Sparks et al. | A chipset level network backdoor: bypassing host-based firewall & ids | |
Ham et al. | DroidVulMon--Android Based Mobile Device Vulnerability Analysis and Monitoring System | |
CN113079182A (zh) | 一种网络安全控制系统 | |
KR100959264B1 (ko) | 네트워크를 이용하는 프로세스의 감시를 통한 좀비pc 차단 시스템 및 그 방법 | |
CN106127032B (zh) | 一种拦截应用程序行为的方法及终端 | |
KR102296234B1 (ko) | 특징값 추출 기반의 바이너리 검증 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
DD01 | Delivery of document by public notice |
Addressee: Peng Guojun Document name: Notification of Publication of the Application for Invention |
|
DD01 | Delivery of document by public notice |
Addressee: Wuhan Anjia Education Technology Co., Ltd. Document name: Notification of before Expiration of Request of Examination as to Substance |
|
DD01 | Delivery of document by public notice |
Addressee: Wuhan Anjia Education Technology Co., Ltd. Document name: Notification that Application Deemed to be Withdrawn |
|
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130123 |