CN109657465A - 一种基于文件损坏度的软件检测方法 - Google Patents
一种基于文件损坏度的软件检测方法 Download PDFInfo
- Publication number
- CN109657465A CN109657465A CN201811316687.4A CN201811316687A CN109657465A CN 109657465 A CN109657465 A CN 109657465A CN 201811316687 A CN201811316687 A CN 201811316687A CN 109657465 A CN109657465 A CN 109657465A
- Authority
- CN
- China
- Prior art keywords
- file
- degree
- sample
- tab
- software
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000001514 detection method Methods 0.000 claims abstract description 21
- 230000007547 defect Effects 0.000 claims abstract description 14
- 238000000605 extraction Methods 0.000 claims abstract 4
- 230000008859 change Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000011002 quantification Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 2
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 244000035744 Hura crepitans Species 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于文件损坏度的软件检测方法,本发明步骤为:样本执行前标记文件特征提取;样本执行后标记文件特征提取;单个标记文件损坏度计算;系统损坏度计算;选取木马动态检测引擎作为检测平台,选取10个标记文件,并将样本执行时间统一调整;采取随机的方法,对文件名、文件内容、文件类型随机写入,达到不同的样本对于标记文件损坏程度不同的效果。本发明利用文件加密型存在损坏度的缺陷样本进行动态检测,对大量缺陷样本、正常样本进行动态执行,计算其文件损坏度和系统损坏度,提高了文件的可用性,减少了系统损坏的频率。
Description
技术领域
本发明涉及一种软件检测方法,更具体地说,涉及一种基于文件损坏度的软件检测方法。
背景技术
随着互联网的快速发展,存在损坏度的软件数量剧增。当前检测软件损坏度常用的方法主要为设置陷进文件并检测其指纹变化或监控系统操作。而这两种方法都不能准确的区分软件损坏度和其他类型的恶意代码。在恶意代码动态分析技术中,针对自动化检测软件是否存在损坏度方面,较为常用的方法有以下三种:
1.利用文件指纹技术;
2.利用API HOOK技术;
3.动态检测过程中对进程行为进行监控。
以上方法都能比较直观地提现文件是否在样本运行中存在损坏度。同时方法易懂,且易操作,应用程度较广。但由于这些方法过于粗粒度,通过一个陷阱文件的状态变化或操作行为,不能武断的判断该文件就存在损坏度。同时在样本运行过程中也可能会出现一定的误报率,这样对其他类型的恶意样本无法作出判断。
发明内容
本发明要解决的技术问题在于,针对现有技术中的缺陷,提供一种基于文件损坏度的软件检测方法,减少文件损坏度,并保护系统,减少因文件损坏度造成的系统问题。
本发明解决其技术问题所采用的技术方案是:构造一种基于文件损坏度的软件检测方法,提出文件损坏度概念对文件变化进行多维度检测。在动态基础上通过模糊哈希等算法对文件变化进行多维度检测,定量计算出当前文件损坏度,并通过文件损坏度反映出当前系统所受到的威胁程度,从而确定该样本是否为存在损坏度的文件。
在本发明所述的基于文件损坏度的软件检测方法中,所述基于文件损坏度的软件检测方法步骤为:
S1获取软件的代码文本;
S2分析代码文本,根据预定的语法规则,对每一段有具体意义的代码进行切分;
S3将得到的有具体意义的代码片段与缺陷模式库中已有的缺陷模式进行匹配,逐一排查;
S4筛选出问题代码进行修复;
S5将问题代码进行代码替换,相应的对其进行溢出缺陷的检测;
S6得出结果。
实施本发明的一种基于文件损坏度的软件检测方法,具有以下有益效果:本发明利用文件加密型存在损坏度的缺陷样本进行动态检测,对大量缺陷样本、正常样本进行动态执行,计算其文件损坏度和系统损坏度,提高了文件的可用性,减少了系统损坏的频率。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的基于文件损坏度的软件检测方法流程图
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,所述基于文件损坏度的软件检测方法步骤为:
S1获取软件的代码文本;
S2分析代码文本,根据预定的语法规则,对每一段有具体意义的代码进行切分;
S3将得到的有具体意义的代码片段与缺陷模式库中已有的缺陷模式进行匹配,逐一排查;
S4筛选出问题代码进行修复;
S5将问题代码进行代码替换,相应的对其进行溢出缺陷的检测;
S6得出结果。
在文件样本执行过程中,对文件加密是该技术的核心过程。通过对大量文件加密型软件样本进行理论和实验分析,软件样本在对文件加密过程中会对文件内容、文件头有较大程度的修改,同时文件名在此过程中也会有较大程度的修改。本发明利用以下3个指标分别对文件内容、文件头、文件名是否发生修改进行细粒度化检测,通过3个指标定量计算该文件损坏度,从而准确判断样本执行中对文件修改程度。
指标1.完整性校验。通过对文件进行完整性校验来检测样本为存在损坏度的软件的可能性。本文采用哈希算法对文件进行MD5计算,计算其初始散列值。在样本执行后,再次对文件进行散列值计算,并与初始散列值进行比较。结果相同说明样本肯定不是存在损坏度的文件,当结果不同则可能是缺陷文件。
指标2.文件类型改变。文件加密型缺陷软件根据读写操作顺序分为3类:第一类为读取文件,加密数据直接覆盖在原文件位置上,一般在该过程中会对文件进行重命名;第二类则将文件移动到临时目录后读取临时文件并加密,将加密后的文件写会到原始路径下,同样的在这个过程中一般会进行重命名操作;第三类读取原文件,将加密后的文件写入到一个新的文件,删除原文件。
指标3.相似度检测。利用文件相似度检测存在损坏度的文件软件。本文将文件相似度计算对象分为2个部分:文件内容相似度和文件头相似度。
在动态检测中,我们的检测模型为:恶意样本上传到沙箱平台后,经沙箱平台检测,然后将样本下发到虚拟机进行动态检测。虚拟机将动态执行的结果回传的沙箱平台,沙箱平台再进行数据处理后得出结论。
该方法主要分为两部分,1是在虚拟机中选定多个标记文件,并提取样本执行前后每个标记文件变化特征。2是根据每个标记文件变化特征计算文件损坏度,构建标记文件结果集,计算当前系统损坏度。
这里给出单个标记文件损坏度计算方法作为参考:
Dmge(sign)=FC(sign)*self(sign)
Sign:从虚拟机中选取的类型文件,称之为标记文件;
Dmge(sign):对标记文件进行多维度信息采集后计算出的文件损坏度;
FC(sign):标记文件名及文件类型损坏度;
self(sign):文件内容损坏度。
尽管通过以上实施例对本发明进行了揭示,但本发明的保护范围并不局限于此,在不偏离本发明构思的条件下,对以上各构件所做的变形、替换等均将落入本发明的权利要求范围内。
Claims (4)
1.一种基于文件损坏度的软件检测方法,其特征在于,所述基于文件损坏度的软件检测方法步骤为:
S1样本执行前标记文件特征提取;
S2样本执行后标记文件特征提取;
S3单个标记文件损坏度计算;
S4系统损坏度计算;
S5选取木马动态检测引擎作为检测平台,选取10个标记文件,并将样本执行时间统一调整;
S6采取随机的方法,对文件名、文件内容、文件类型随机写入,达到不同的样本对于标记文件损坏程度不同的效果。
2.根据权利要求1所述的基于文件损坏度的软件检测方法,其特征在于,所述文件损坏度通过3个指标定量检测,从而准确判断样本执行中对文件修改程度;所述3个指标定量为完整性校验、文件类型改变和相似度检测。
3.根据权利要求2所述的基于文件损坏度的软件检测方法,其特征在于,所述完整性校验为通过对文件进行完整性校验来检测文件存在损坏度的软件的可能性,采用哈希算法对文件进行MD5计算,计算其初始散列值;在样本执行后,再次对文件进行散列值计算,并与初始散列值进行比较;结果相同说明样本肯定不是存在损坏度的文件,当结果不同则可能是缺陷文件;
所述相似度检测为利用文件相似度检测存在损坏度的文件软件;将文件相似度计算对象分为2个部分,文件内容相似度和文件头相似度。
4.根据权利要求2所述的基于文件损坏度的软件检测方法,其特征在于,所述系统损坏度计算分为两部分,首先在虚拟机中选定多个标记文件,并提取样本执行前后每个标记文件变化特征;然后根据每个标记文件变化特征计算文件损坏度,构建标记文件结果集,计算当前系统损坏度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811316687.4A CN109657465A (zh) | 2018-11-07 | 2018-11-07 | 一种基于文件损坏度的软件检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811316687.4A CN109657465A (zh) | 2018-11-07 | 2018-11-07 | 一种基于文件损坏度的软件检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109657465A true CN109657465A (zh) | 2019-04-19 |
Family
ID=66110570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811316687.4A Pending CN109657465A (zh) | 2018-11-07 | 2018-11-07 | 一种基于文件损坏度的软件检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109657465A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1770051A (zh) * | 2004-11-04 | 2006-05-10 | 华为技术有限公司 | 一种文件安全检测方法 |
CN103593617A (zh) * | 2013-10-27 | 2014-02-19 | 西安电子科技大学 | 基于vmm的软件完整性校验系统及其方法 |
CN107403096A (zh) * | 2017-08-04 | 2017-11-28 | 郑州云海信息技术有限公司 | 一种基于文件状态分析的勒索软件检测方法 |
CN107563199A (zh) * | 2017-09-04 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种基于文件请求监控的勒索软件实时检测与防御方法 |
CN108171054A (zh) * | 2016-12-05 | 2018-06-15 | 中国科学院软件研究所 | 一种针对社交欺骗的恶意代码的检测方法及系统 |
-
2018
- 2018-11-07 CN CN201811316687.4A patent/CN109657465A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1770051A (zh) * | 2004-11-04 | 2006-05-10 | 华为技术有限公司 | 一种文件安全检测方法 |
CN103593617A (zh) * | 2013-10-27 | 2014-02-19 | 西安电子科技大学 | 基于vmm的软件完整性校验系统及其方法 |
CN108171054A (zh) * | 2016-12-05 | 2018-06-15 | 中国科学院软件研究所 | 一种针对社交欺骗的恶意代码的检测方法及系统 |
CN107403096A (zh) * | 2017-08-04 | 2017-11-28 | 郑州云海信息技术有限公司 | 一种基于文件状态分析的勒索软件检测方法 |
CN107563199A (zh) * | 2017-09-04 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种基于文件请求监控的勒索软件实时检测与防御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003767B2 (en) | Multi-layer data model for security analytics | |
US10121004B2 (en) | Apparatus and method for monitoring virtual machine based on hypervisor | |
JP7024720B2 (ja) | マルウェア解析装置、マルウェア解析方法、及び、マルウェア解析プログラム | |
CN111881455B (zh) | 一种固件安全分析的方法及装置 | |
CN112733150B (zh) | 一种基于脆弱性分析的固件未知漏洞检测方法 | |
US10496842B1 (en) | Multi-pronged file anomaly detection based on violation counts | |
IL265518B2 (en) | Management of security vulnerabilities | |
CN111859399B (zh) | 一种基于oval的漏洞检测方法及装置 | |
US20170277887A1 (en) | Information processing apparatus, information processing method, and computer readable medium | |
Pirch et al. | Tagvet: Vetting malware tags using explainable machine learning | |
CN105550573B (zh) | 拦截捆绑软件的方法和装置 | |
CN109657465A (zh) | 一种基于文件损坏度的软件检测方法 | |
Didriksen | Forensic analysis of OOXML documents | |
WO2023067665A1 (ja) | 解析機能付与方法、解析機能付与装置及び解析機能付与プログラム | |
WO2023067668A1 (ja) | 解析機能付与方法、解析機能付与装置及び解析機能付与プログラム | |
CN105556484B (zh) | 软件检查装置、软件检查方法 | |
CN103699838A (zh) | 病毒的识别方法及设备 | |
US11232202B2 (en) | System and method for identifying activity in a computer system | |
KR101650445B1 (ko) | 커널 기반의 파일이벤트감사 기능을 이용한 실시간 웹셀 탐지 장치 및 방법 | |
KR100986998B1 (ko) | 서버의 개인정보 진단 방법 및 장치 | |
WO2023067663A1 (ja) | 解析機能付与方法、解析機能付与装置及び解析機能付与プログラム | |
CN111027052A (zh) | 基于应用程序版本虚拟机文档判别方法、装置及存储设备 | |
US11797707B2 (en) | Non-transitory computer-readable recording medium having stored therein information processing program, information processing method, and information processing apparatus | |
US20210224423A1 (en) | Non-transitory computer-readable recording medium having stored therein information processing program, information processing method, and information processing apparatus | |
KR102698908B1 (ko) | 유입된 문서 내부 정보를 검사하여 보안솔루션에서 빠르게 탐지할 수 있는 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190419 |