CN112597494A - 一种用于恶意程序检测的行为白名单自动收集方法 - Google Patents
一种用于恶意程序检测的行为白名单自动收集方法 Download PDFInfo
- Publication number
- CN112597494A CN112597494A CN202011516722.4A CN202011516722A CN112597494A CN 112597494 A CN112597494 A CN 112597494A CN 202011516722 A CN202011516722 A CN 202011516722A CN 112597494 A CN112597494 A CN 112597494A
- Authority
- CN
- China
- Prior art keywords
- sample
- analysis
- white list
- behavior
- programs
- 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 63
- 238000004458 analytical method Methods 0.000 claims abstract description 50
- 230000008569 process Effects 0.000 claims abstract description 28
- 244000035744 Hura crepitans Species 0.000 claims abstract description 26
- 238000012544 monitoring process Methods 0.000 claims abstract 2
- 230000006399 behavior Effects 0.000 claims description 48
- 238000004422 calculation algorithm Methods 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 11
- 230000009191 jumping Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 3
- 230000000717 retained effect Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 claims 1
- 238000007781 pre-processing Methods 0.000 claims 1
- 230000009471 action Effects 0.000 description 7
- 230000002155 anti-virotic effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 239000010979 ruby Substances 0.000 description 3
- 229910001750 ruby Inorganic materials 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 229910052711 selenium Inorganic materials 0.000 description 2
- 239000011669 selenium Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 102100023696 Histone-lysine N-methyltransferase SETDB1 Human genes 0.000 description 1
- 101710168120 Histone-lysine N-methyltransferase SETDB1 Proteins 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 241001377938 Yara Species 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- 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)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种用于恶意程序检测的行为白名单自动收集方法,包括将经过处理后标记为正常的样本程序入库,中心服务器将对每个入库样本的样本原文件分发给多个沙箱分析程序并全程监控沙箱分析程序的任务状态;沙箱分析程序对单个样本分析并形成分析日志后传送回中心服务器,中心服务器调用动态日志分析模块形成单个样本的白名单列表;对单个样本的白名单列表进行去重和模板统计处理后整合到总体白名单中,并按照样本类别分类存储到数据库中;重复上述第二和第三步骤,直到所有统计模板存储到数据库中。本发明通过单个样本的反复触发可充分收集操作***的行为和软件环境的默认行为,极大减少了人工参与的环节,具有成本低、跨平台、通用性强等特点。
Description
技术领域
本发明涉及计算机安全技术领域,尤其涉及一种用于恶意程序检测的行为白名单自动收集方法。
背景技术
恶意程序是指人为编制的、对网络或***会产生威胁或潜在威胁的计算机代码。最常见的恶意程序种类包括病毒、木马、蠕虫、后门、广告、勒索、间谍等。随着杀毒软件的不断发展,恶意程序也在不断的演化升级,呈现出变种数量多、隐蔽性强、传播速度快、影响范围广、恶意行为越来越复杂等特点。主流的恶意程序检测技术分为两类:一类是基于规则式的检测方法,一类是基于启发式的检测方法。基于规则式的检测方法主要利用恶意代码特征规则库(包括恶意指令的指纹特征、恶意行为的模式特征)对样本进行检测和归类。基于启发式的检测方法通过收集样本的静态特征数据、动态行为数据构造特征向量,再通过机器学习或深度学习算法进行训练、建模、分类,分类结果就代表了样本的风险性。
白名单过滤技术是基于启发式的恶意程序检测软件减少误报的主要途径之一,白名单的覆盖范围直接决定了恶意程序检测软件的品质好坏。但是白名单也不是越大越好,随着白名单容量的增加,会严重拖慢恶意程序检测软件的运行环境,影响用户体验;与此同时,白名单条目中存在的随机生成的子串、软件版本号子串等,由于变化的空间很大,使得白名单的容量剧增。白名单过滤技术需要对这些随机生成的子串、软件版本号子串等进行统计、识别和替换,形成过滤模板,从而减少白名单的容量。
传统的白名单收集技术主要靠安全工程师逐条编写过滤项模板,如正则表达式或yara规则。这种方式严重依赖安全工程师的经验,且收集的效率较低,收集的范围也较窄。在操作***触发的***行为和常用软件(如Office)的默认行为越来越多时,以及某些特殊行为需要在特定条件下触发时,这种依靠人工收集的技术越来越难以胜任。
发明内容
本发明的目的在于克服现有技术的缺点,提供了一种用于恶意程序检测的行为白名单自动收集方法,解决了当前依靠安全工程师收集白名单的方式存在的效率低下、范围狭窄等问题。
本发明的目的通过以下技术方案来实现:一种用于恶意程序检测的行为白名单自动收集方法,其包括以下内容:
S1、利用网络样本收集模块收集各种类型的样本程序,其中网络样本收集模块包括网络爬虫程序和网络流量解析程序(网络流量复制、协议解析、样本提取);
S2、利用样本自动生成模块生成已知的多个类型的样本程序,包括python、ruby、javascript、sh、vbs等脚本程序,office或PDF文档,PE或ELF可执行程序;
S3、对收集到的所有样本程序进行数据清洗,去掉文件大小小于指定阈值的样本,对样本进行类型识别,去除数据格式错误的样本;
S4、对清洗后的所有样本程序进行风险性判定,为样本程序打标记,进一步地,风险性判定模块可依靠人工分析或综合多家杀毒软件的扫描结果;
S5、将标记为正常的样本程序入库(如MySQL);
S6、对于每个入库的样本,行为白名单自动收集***中心服务器将样本原文件分发给多个沙箱分析程序并全程监控沙箱分析程序的任务状态。其中沙箱分析程序是本发明依赖的运行在配置了不同操作***和基础软件环境的虚拟机环境中,且能够通过网络接收下发任务并执行和监控任务,同时能够实时通过网络上报运行状态的分析程序;
S7、沙箱分析程序分析完单个样本并形成分析日志通过网络传送回行为白名单自动收集***中心服务器,中心服务器调用动态日志分析模块形成单个样本的白名单列表,进一步地,动态日志分析模块在分析单条行为时能够自动的识别随机子串和版本号子串信息并用通配符进行替换,其中单条行为分为网络行为、文件行为、注册表行为、进程行为、服务/任务行为、***状态等;
S8、单个样本的白名单列表在白名单收集、汇总模块中经过去重、模板统计等处理后整合到总体白名单中,进一步地,模板统计是从统计的角度去识别变化的子串,以此来弥补随机子串识别算法中的不足;
S9、总体白名单按样本类别分类存储到数据库中,进一步地,每个类别存储在一张单独的表中,每个白名单项占一条记录,字段包括父进程路径、父进程MD5、行为类别、行为参数、行为关联的MD5等;
S10、将所有统计模板存储到数据库中,进一步地,存在一张统计模板表,其每条记录的字段包括带通配符的字符串、替换的起始位置,替换的方法等。
本发明具有以下优点:一种用于恶意程序检测的行为白名单自动收集方法,通过单个样本的反复触发可充分收集操作***的行为和软件环境的默认行为,极大的减少了人工参与的环节,具有成本低、跨平台、通用性强等特点。为后续其他模块做样本行为报告输出和样本风险性判定提供强有力的支撑。
附图说明
图1为本发明方法的流程示意图;
图2为复合文档结构示意图;
图3为去随机算法流程示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下结合附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的保护范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。下面结合附图对本发明做进一步的描述。
如图1所示,本发明涉及一种用于恶意程序检测的行为白名单自动收集方法,主要针对当前白名单的收集严重依赖安全工程师的经验,且收集的效率较低,收集的范围较窄的问题;其具体包括以下内容:
S1、中心服务器启动网络样本收集模块,网络样本收集模块采用Python编写,并使用Selenium自动化web测试工具库和PhantomJS无界面浏览器库来实现样本程序URL的抓取。其中PhantomJS能将待分析网页加载到内存并执行页面上的JavaScript代码,同时Selenium能提取服务器返回的Cookie和header信息,两者结合可以很好的解决在抓取部分动态网页时由于不能感知页面发生的变化而不能正确提取网页中目标链接的问题。
S2、中心服务器启动样本自动生成模块,样本自动生成模块依据样本的不同类别采用不同的方案来生成目标样本程序。
进一步地,对于python、ruby、javascript、sh、vbs等脚本程序,通过预先编写大量的小功能模块代码,然后自动的将这些小功能模块代码进行随机组装,从而生成最终的脚本程序;
对于office或PDF文档,通过python直接将大量预设的内容随机选取一部分写入文档,从而生成最终的文档文件;
对于PE或ELF可执行程序,同样通过预先编写大量的小功能模块代码,然后自动的将这些小功能模块代码随机组装成一个cpp文件,最后利用Visual Studio的devenv.com或者gcc编译生成最终的可执行程序。
S3、通过网络样本收集模块和样本自动生成模块收集到大量样本文件后,需要做数据清洗操作,删除大小不符合要求的样本文件。
S4、对筛选出的每个样本做类型识别。对于脚本程序通过扫描程序中的关键字与段落结构以及注释内容可以确定文件类型,如python中大量存在的import、from import,ruby脚本大量存在的require、puts,bat脚本中大量存在的@echo、set、rem等。对于office和pdf文档,需要从二进制文件格式来分析。office文档是类似于文件***的复合文档,其数据被分成许多流(Stream),这些流又存储在不同的仓库(Storage)里,如图2所示。
其中流又分成更小的数据扇区,包括控制数据和用户数据。整个符合文档由一个头结构以及其后的所有其他数据扇区组成。其中头结构的前8个字节是D0H CFH 11H E0HA1H B1H 1AH E1H,第28个字节是FEH,第29个字节是FFH;
然后读取主扇区配置表、扇区配置表、短扇区配置表,并进一步读取目录结构形成一颗红黑树。通过搜索树中的节点如果包含WordDocument节点则文档是Word文档,如果包含PowerPointDocument节点则文档是PPT文档,如果包含Workbook节点则文档是Excel文档。
进一步地,PDF文档包含文件头、文件体、交叉引用表、文件尾4个部分,其中文件头格式为%PDF-x.x指示PDF版本号,文件体由一系列的PDF间接对象组成如字体、页面、图像等,起始部分格式为x 0obj,以endobj结束。交叉引用表以xref开始,文件尾以trailer开始,以%%EOF结束。以上述几个位置为检测点检测通过的则为PDF文档。
Windows PE文件由DOS首部、PE文件头、节区表、节区、调试信息等构成。DOS首部以5AH 4DH开头,并包含This program onlyrun in Dos mode.字样,PE文件头以50H 45H开始,能通过检查的则为PE样本。
Linux ELF文件由ELF头部、程序头部表、段、节区头部表构成,ELF头部以7FH 45H4CH 46H 01/02H 01H 01H 00H 00H 00H 00H 00H 00H 00H 00H 00H开始,满足头部要求的即为ELF文件。
S5、对经过类型识别的样本库,批量通过多家杀毒软件进行扫描,记录每个样本的风险性。其中杀毒软件选取了ESET、大蜘蛛、小红伞、Windows Defender、officescan、F-Secure、卡巴斯基、火绒8家支持命令行工具的产品,如卡巴斯基的命令行为:avp.comSCAN/i0文件名。统计8款杀毒软件的扫描结果对每个样本进行投票,得票数高于设定阈值的样本标记为有风险,否者标记为无风险。
S6:将带有风险性标记的样本入库,如通过SQL语句Insert into Samples(md5,type,risk,path,createTime,name)values(‘9bb1a887217e49135400dfe5651c0ca7’,’doc’,1,’d:\samples\test1.doc’,‘2020-11-0518:03:02’,’test1’)添加一条数据到MySQL中。
S7、中心服务器启动多个线程,每个线程分配一到多个沙箱分析程序,通过ICE接口来下发分析任务和查询分析状态,状态查询通过轮询机制实现。
由于沙箱的分析环境已经固定,故运行于其中的沙箱分析程序能够分析的样本类别也是确定的。在向沙箱分析程序下发分析任务之前需要先查询其支持的样本类别,再从数据库中获取对应类别的原始样本文件,同时需要记录下当前的查询位置。
基于沙箱分析程序分析时间较短且部分***行为、基础软件默认行为需要特定条件才能触发的特点,每个样本文件需要多次下发到沙箱分析程序进行分析。同时在查询到分析状态是完成时,接收来自沙箱分析程序返回的分析日志文件,该日志文件主要由进程树和一条条行为项组成。
其中,行为项的格式为:行为名称、行为参数、触发时间、所在进程ID。进程树主要描述分析启动时刻各个进程的相互关系,格式为:子进程路径、子进程ID、子进程MD5、父进程路径、父进程ID、父进程MD5。
S8、下发任务线程在获取到分析日志文件后,将分析日志传递给动态日志分析模块。动态日志分析模块先从代表进程关系的条目中重建进程树,然后对行为项按触发时间从小到大进行排序,再逐条分析行为项。
进一步地,在动态日志分析模块内置一个词典,至少包含2-8个字母的英文单词和常见的中文词组。首先提取出行为参数,并通过去随机算法和版本号检测对可变部分进行通配符(如*)替换。
其中去随机算法实现流程如图3所示,其中非temp路径下去随机算法实现如下:扫描component,统计16进制字符个数、字母(包括中文)个数、非16进制字符非字母字符个数、跳变次数(即3种字符类型的切换),如果跳变次数、跳变率(跳变次数/总的字符个数)、非16进制字符非字母字符占比、16进制字符占比大于指定阈值,或component构成的单词不在预设辞典里,则判定整个component为随机串。
temp路径下去随机算法实现如下:统计component中16进制字符、字母(包括中文)、不可打印字符的个数,如果16进制字符或者不可打印字符或者他们的组合个数、占比大于指定的阈值,component构成的单词不在预设辞典里,则判定整个component为随机串。
行为参数根据行为类型使用不同的分隔符进行分割,行为参数被分割成一个个component。对每个component,动态日志分析模块根据其前一个component是否是temp来分别调用非temp路径下去随机算法和temp路径下去随机算法。如果该component被判定为随机串则整个component被替换成通配符(如*),否者保留该component,且保留文件后缀。
版本号检测主要针对office和adobe reader的版本号进行检测,检测到\officexx\和\reader x.x\后将xx和x.x替换成*。分析完日志文件的所有行为项后最终生成单个样本的白名单行为列表。列表项格式为:行为名称、行为参数、所在进程路径、所在进程MD5。
S9、单个样本的白名单列表在白名单收集、汇总模块中经过去重、模板统计等处理后整合到总体白名单中。
进一步地,模板统计通过对所有白名单项做两两相似度计算,将彼此相似度都高于指定阈值的白名单项整合在一起(设为List1)。对List1中的每项使用\或/或空格进行分割,对分割后的每个component依次同时(即每个白名单项)做通配符替换。若替换后所有List1中的项都相同,则此次替换作为一个模板进行存储。
模板的具体格式为:带通配符的字符串、替换的起始位置,替换的方法(如替换3个字符,替换直到下一个‘\’符号等)。
进一步地,相似度计算使用Levenshtein Distance算法,又称为Edit Distance算法来取得编辑距离,再除以两个字串中较长串的字符个数来求得相似度。该算法的原理是计算两个字串之间由一个转换成另一个所需的最少编辑操作次数,允许的编辑操作包括将其中一个字符替换成另一个字符、***一个字符、删除一个字符。公式定义如下:
其中L(ai≠bj)是一个指示函数,当ai≠bj时其值为1,其他时候其值为0。min运算中的第一个公式代表从a中删除字符以到达b,第二个公式代表***字符,第三个公式代表替换(取决于当前字符是否相同)。
具体实现思路为:先初始化一个LD矩阵MxN,M和N分别为两个输入字符串的长度,矩阵可以从左上角到右下角进行填充,每个水平或垂直跳转分别对应于一个***或删除操作;每个操作的成本设置为1,如果[i][j]位置处两个字符串相等,则将[i][j-1]、[i-1][j]处加1,然后从[i][j-1]、[i-1][j]、[i-1][j-1]三个位置选出最小的值填充到[i][j]处,如果[i][j]位置处两个字符串不相等,则从[i][j-1]、[i-1][j]、[i-1][j-1]三个位置选出最小的值再加上1填充到[i][j]处;按照前面的规则将LD矩阵填充完毕后,最终矩阵右下角的数字就是两个字符串的LD值。
S10、总体白名单按样本类别分类存储到数据库中,进一步地,每个类别存储在一张单独的表中,每个白名单项占一条记录,字段包括父进程路径、父进程MD5、行为类别、行为参数、行为关联的MD5等。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (10)
1.一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述自动收集方法包括:
将经过处理后标记为正常的样本程序入库,中心服务器将对每个入库样本的样本原文件分发给多个沙箱分析程序并全程监控沙箱分析程序的任务状态;
沙箱分析程序对单个样本分析并形成分析日志后传送回中心服务器,中心服务器调用动态日志分析模块形成单个样本的白名单列表;
对单个样本的白名单列表进行去重和模板统计处理后整合到总体白名单中,并按照样本类别分类存储到数据库中;
重复上述第二和第三步骤,直到所有统计模板存储到数据库中。
2.根据权利要求1所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述中心服务器将对每个入库样本的样本原文件分发给多个沙箱分析程序并全程监控沙箱分析程序的任务状态包括:
中心服务器启动多个线程,每个线程分配一到多个沙箱分析程序,通过ICE接口下发分析任务和查询分析状态,状态查询通过轮询机制实现;
每个样本文件需要多次下发到沙箱分析程序进行分析,同时在查询到分析状态是完成时,接收来自沙箱分析程序返回的由进程树和一条条行为项组成的分析日志文件。
3.根据权利要求2所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:在向沙箱分析程序下发分析任务之前需要先查询其支持的样本类型,再从数据库中获取对应类别的原始样本文件,同时记录下当前的查询位置。
4.根据权利要求2所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述沙箱分析程序对单个样本分析并形成分析日志后传送回中心服务器,中心服务器调用动态日志分析模块形成单个样本的白名单列表包括:
下发任务线程在获取到分析日志文件后将分析日志传递给动态日志分析模块;
动态日志分析模块从代表进程关系的条目中重建进程树,并对行为项按触发时间从小到大进行排序,再逐条分析行为项;
分析完日志文件的所用行为项后最终生成单个样本的白名单行为列表。
5.根据权利要求4所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:在所述动态日志分析模块内置有一个词典,其至少包含多个字母英文单词和常见的中文词组;所述动态日志分析模块通过提取出行为参数,并通过去随机算法和版本号检测对可变部分进行通配符替换的方式对行为项进行逐条分析。
6.根据权利要求5所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述去随机算法包括非temp路径下去随机算法和temp路径下去随机算法;所述非temp路径下去随机算法的步骤如下:
扫描component,统计16进制字符个数、字母个数、非16进制字符非字母字符个数、跳变次数;
如果跳变次数、跳变率、非16进制字符非字母字符占比、16进制字符占比大于指定阈值,或component构成的单词不在预设词典内,则判定整个component为随机串。
7.根据权利要求6所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述temp路径下去随机算法的步骤如下:
统计component中16进制字符、字母、不可打印字符的个数;
如果16进制字符或者不可打印字符或者他们的组合个数、占比大于指定的阈值,component构成的单词不在预设词典内,则判定整个component为随机串。
8.根据权利要求7所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述动态日志分析模块根据前一个component是否为temp来分别调用非temp路径下去随机算法和temp路径算法;如果该component被判定为随机串,则整个component被替换成通配符,否则保留该component和文件后缀。
9.根据权利要求6所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述对单个样本的白名单列表进行去重和模板统计处理后整合到总体白名单中,并按照样本类别分类存储到数据库中包括:
模板统计同对所用白名单项做两两相似度计算,将彼此相似度都高于指定阈值的白名单项整合在一起并设为List1;
对List1中的每项通过\或/或空格形式进行分割,对分割后的每个component依次同时做通配符替换;
若替换后所有List1中的项都相同,则将此次替换作为一个模板进行存储。
10.根据权利要求1-9任意一项所述的一种用于恶意程序检测的行为白名单自动收集方法,其特征在于:所述自动收集方法还包括样本程序收集以及前期处理步骤;所述样本程序收集以及前期处理步骤包括:
利用网络样本收集模块收集各种类型的样本程序,并通过样本自动生产模块生成已知的多个类型的样本程序;
对收集到的所有样本程序进行数据清洗,去掉文件大小小于指定阈值的样本,并对样本进行类型识别,去除数据格式错误的样本;
对清洗后的所有样本程序进行风险性判定,为正常的样本程序打上标记。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011516722.4A CN112597494A (zh) | 2020-12-21 | 2020-12-21 | 一种用于恶意程序检测的行为白名单自动收集方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011516722.4A CN112597494A (zh) | 2020-12-21 | 2020-12-21 | 一种用于恶意程序检测的行为白名单自动收集方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112597494A true CN112597494A (zh) | 2021-04-02 |
Family
ID=75200086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011516722.4A Pending CN112597494A (zh) | 2020-12-21 | 2020-12-21 | 一种用于恶意程序检测的行为白名单自动收集方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112597494A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363060A (zh) * | 2021-12-31 | 2022-04-15 | 深信服科技股份有限公司 | 一种域名检测方法、***、设备及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607381A (zh) * | 2010-08-18 | 2014-02-26 | 北京奇虎科技有限公司 | 白名单生成及恶意程序检测方法、客户端和服务器 |
CN106326746A (zh) * | 2016-08-26 | 2017-01-11 | 成都科来软件有限公司 | 一种恶意程序行为特征库构建方法及装置 |
CN106529293A (zh) * | 2016-11-09 | 2017-03-22 | 东巽科技(北京)有限公司 | 一种用于恶意软件检测的样本类别判定方法 |
CN106709326A (zh) * | 2016-11-24 | 2017-05-24 | 北京奇虎科技有限公司 | 一种可疑样本的处理方法和装置 |
CN110502892A (zh) * | 2019-07-09 | 2019-11-26 | 成都亚信网络安全产业技术研究院有限公司 | 一种异常测试进程的确定方法、装置及*** |
CN111368289A (zh) * | 2018-12-26 | 2020-07-03 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
-
2020
- 2020-12-21 CN CN202011516722.4A patent/CN112597494A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607381A (zh) * | 2010-08-18 | 2014-02-26 | 北京奇虎科技有限公司 | 白名单生成及恶意程序检测方法、客户端和服务器 |
CN106326746A (zh) * | 2016-08-26 | 2017-01-11 | 成都科来软件有限公司 | 一种恶意程序行为特征库构建方法及装置 |
CN106529293A (zh) * | 2016-11-09 | 2017-03-22 | 东巽科技(北京)有限公司 | 一种用于恶意软件检测的样本类别判定方法 |
CN106709326A (zh) * | 2016-11-24 | 2017-05-24 | 北京奇虎科技有限公司 | 一种可疑样本的处理方法和装置 |
CN111368289A (zh) * | 2018-12-26 | 2020-07-03 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
CN110502892A (zh) * | 2019-07-09 | 2019-11-26 | 成都亚信网络安全产业技术研究院有限公司 | 一种异常测试进程的确定方法、装置及*** |
Non-Patent Citations (1)
Title |
---|
龚琪: "基于分布式沙箱的恶意程序检测***设计与研究", 中国优秀硕士学位论文全文数据库信息科技辑, 15 April 2019 (2019-04-15), pages 28 - 30 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363060A (zh) * | 2021-12-31 | 2022-04-15 | 深信服科技股份有限公司 | 一种域名检测方法、***、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245496B (zh) | 一种源代码漏洞检测方法及检测器和其训练方法及*** | |
CN107707545B (zh) | 一种异常网页访问片段检测方法、装置、设备及存储介质 | |
JP4711949B2 (ja) | マクロと実行可能なスクリプトにおいてマルウェアを検出する方法およびシステム | |
CN107368856B (zh) | 恶意软件的聚类方法及装置、计算机装置及可读存储介质 | |
CN109325193B (zh) | 基于机器学习的waf正常流量建模方法以及装置 | |
Ueda et al. | On detection of gapped code clones using gap locations | |
US11243834B1 (en) | Log parsing template generation | |
CN114417197A (zh) | 一种访问记录处理方法、装置及存储介质 | |
Wisse et al. | Scripting dna: Identifying the javascript programmer | |
CN107315956A (zh) | 一种用于快速准确检测零日恶意软件的图论方法 | |
CN113254255B (zh) | 一种云平台日志的分析方法、***、设备及介质 | |
US20210136032A1 (en) | Method and apparatus for generating summary of url for url clustering | |
Mimura et al. | Using LSI to detect unknown malicious VBA macros | |
CN109146625B (zh) | 一种基于内容的多版本App更新评价方法及*** | |
Vanamala et al. | Topic modeling and classification of Common Vulnerabilities And Exposures database | |
CN116149669A (zh) | 一种基于二进制文件的软件成分分析方法、装置以及介质 | |
WO2018047027A1 (en) | A method for exploring traffic passive traces and grouping similar urls | |
CN112597494A (zh) | 一种用于恶意程序检测的行为白名单自动收集方法 | |
CN110008701A (zh) | 基于elf文件特征的静态检测规则提取方法及检测方法 | |
CN111431883A (zh) | 一种基于访问参数的web攻击检测方法及装置 | |
CN112163217B (zh) | 恶意软件变种识别方法、装置、设备及计算机存储介质 | |
Attenberg et al. | Cleaning search results using term distance features | |
KR102344496B1 (ko) | 악성코드의 기능을 분석하는 방법 및 장치 | |
CN113704108A (zh) | 一种相似代码检测方法及装置、电子设备、存储介质 | |
WO2014012863A2 (en) | Method of automatically extracting features from a computer readable file |
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 |