CN117521068A - Linux主机恶意软件检测方法、***、设备及介质 - Google Patents
Linux主机恶意软件检测方法、***、设备及介质 Download PDFInfo
- Publication number
- CN117521068A CN117521068A CN202311682115.9A CN202311682115A CN117521068A CN 117521068 A CN117521068 A CN 117521068A CN 202311682115 A CN202311682115 A CN 202311682115A CN 117521068 A CN117521068 A CN 117521068A
- Authority
- CN
- China
- Prior art keywords
- file
- detected
- analysis
- preset
- training
- 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
- 238000004458 analytical method Methods 0.000 claims abstract description 140
- 230000003068 static effect Effects 0.000 claims abstract description 59
- 238000012706 support-vector machine Methods 0.000 claims abstract description 48
- 238000001514 detection method Methods 0.000 claims abstract description 38
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims description 80
- 230000006399 behavior Effects 0.000 claims description 28
- 238000007781 pre-processing Methods 0.000 claims description 22
- 238000012360 testing method Methods 0.000 claims description 15
- 238000010845 search algorithm Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 241000700605 Viruses Species 0.000 description 3
- 238000012098 association analyses Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000010223 real-time analysis Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 244000035744 Hura crepitans Species 0.000 description 1
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000008531 maintenance mechanism Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000010200 validation analysis 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Hardware Design (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Virology (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种Linux主机恶意软件检测方法、***、设备及介质,涉及网络安全技术领域,包括:基于预设规则集对待检测文件进行静态文件分析,得到待检测文件的静态分析特征;待检测文件为运行于Linux主机上的文件;在预设环境中对待检测文件进行动态文件分析,得到待检测文件的动态分析特征;以静态分析特征和动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果;基于训练好的大型语言模型对静态分析特征、动态分析特征和分类结果进行分析,得到待检测文件的检测结果。本发明缓解了现有技术中存在的准确性差和误报率高的技术问题。
Description
技术领域
本发明涉及网络安全技术领域,具体为一种Linux主机恶意软件检测方法、***、设备及介质。
背景技术
在如今数字化,网络化时代,服务器作为承载业务的重要基础设置,尤其是Linux服务器的高效安全运行也成企业关注的重点,同时也成为黑客的重点攻击目标。针对Linux***的攻击和威胁,(如APT:高级持续性威胁)也日趋增多,主机安全防护面临的威胁不断加剧,例如各种恶意软件、病毒、木马等,这些威胁可能导致主机数据被破坏或窃取。同时这些攻击变得更为隐蔽和复杂,难以检测。
而现有的Linux主机安全防护手段无法提供全面、精确的恶意软件检测和防范,存在一定的局限性和不足。例如:(1)基于病毒特征库的杀毒软件是最常见的Linux主机安全技术,它通过提取已知恶意软件的特征码,并与主机程序进行模式匹配,来检测威胁,而面对未知和变种病毒则难以检出;(2)基于规则的入侵检测***,通过预定义规则来分析主机行为,检测可疑活动,运营过程中规则需要频繁更新维护规则,存在漏报和误报风险;(3)基于统计的异常检测技术,通过建立主机行为基线,分析偏差来发现异常,如基于***调用序列的检测,缺点是存在较高误报率;(4)沙箱技术,在隔离环境中运行可疑程序,分析其行为,可以检测未知威胁,但反应不够实时;(5)日志关联分析,收集并关联各类日志,通过相关性分析发现攻击链,需处理海量日志,主机统一威胁管理,通过集中管理不同安全工具的警报和日志,进行关联分析,操作和维护较复杂;(6)安全信息和事件管理,提供实时监控、日志分析、风险预警等功能,需要大量存储和计算资源;(7)网络入侵检测***,通过分析网络流量来检测主机受到的网络攻击,不能检测本地威胁。
而当前现有的基于机器学习的解决方案存在如下问题:基于行为分析的检测技术缺点是误报率较高,需要大量特征工程提取程序行为模式;基于机器学习的检测模型缺点是对抗样本的鲁棒性差,容易受到欺骗。
发明内容
本发明的目的就在于为了解决上述至少一个技术问题而提供一种Linux主机恶意软件检测方法、***、设备及介质。
第一方面,本发明实施例提供了一种Linux主机恶意软件检测方法,包括:基于预设规则集对待检测文件进行静态文件分析,得到所述待检测文件的静态分析特征;所述待检测文件为运行于Linux主机上的文件;在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征;以所述静态分析特征和所述动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果;基于训练好的大型语言模型对所述静态分析特征、所述动态分析特征和所述分类结果进行分析,得到所述待检测文件的检测结果。
进一步的,所述预设规则集包括黑名单规则和白名单规则;基于预设规则集对待检测文件进行静态文件分析,包括:基于静态文件分析,获取所述待检测文件的结构、元数据和代码段;基于所述黑名单规则和模式匹配,检测所述待检测文件的恶意特征;基于所述白名单规则和模式匹配,检测所述待检测文件是否为合法文件。
进一步的,在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征,包括:获取所述待检测文件在所述预设环境中运行时的行为信息;基于预设行为特征库对所述行为信息进行分析,得到所述待检测文件的动态分析特征。
进一步的,还包括:获取训练数据集;所述训练数据集包括恶意文件特征样本和非恶意文件特征样本;将所述训练数据集进行数据预处理,并划分为训练集和测试集;基于所述训练集构建预设支持向量机模型;确定所述预设支持向量机模型的超参数空间;基于网格搜索算法或随机搜索算法搜索所述超参数空间,确定所述预设支持向量机模型的最佳参数组合;基于所述训练集对所述预设支持向量机模型进行训练,得到所述训练好的支持向量机模型;基于所述测试集,对所述训练好的支持向量机模型进行验证。
进一步的,还包括:获取预设文本数据集;所述预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;对所述预设文本数据集进行预处理操作,得到处理之后的文本数据集;所述预处理操作包括:分词、去除停用词、词干提取;基于所述处理之后的文本数据集对预设大型语言模型进行训练,得到所述训练好的大型语言模型。
第二方面,本发明实施例还提供了一种Linux主机恶意软件检测***,包括:静态分析模块,动态分析模块,分类模块和检测模块;其中,所述静态分析模块,用于基于预设规则集对待检测文件进行静态文件分析,得到所述待检测文件的静态分析特征;所述待检测文件为运行于Linux主机上的文件;所述动态分析模块,用于在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征;所述分类模块,用于以所述静态分析特征和所述动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果;所述检测模块,用于基于训练好的大型语言模型对所述静态分析特征、所述动态分析特征和所述分类结果进行分析,得到所述待检测文件的检测结果。
进一步的,还包括第一训练模块,用于:获取训练数据集;所述训练数据集包括恶意文件特征样本和非恶意文件特征样本;将所述训练数据集进行数据预处理,并划分为训练集和测试集;基于所述训练集构建预设支持向量机模型;确定所述预设支持向量机模型的超参数空间;基于网格搜索算法或随机搜索算法搜索所述超参数空间,确定所述预设支持向量机模型的最佳参数组合;基于所述训练集对所述预设支持向量机模型进行训练,得到所述训练好的支持向量机模型;基于所述测试集,对所述训练好的支持向量机模型进行验证。
进一步的,还包括第二训练模块,用于:获取预设文本数据集;所述预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;对所述预设文本数据集进行预处理操作,得到处理之后的文本数据集;所述预处理操作包括:分词、去除停用词、词干提取;基于所述处理之后的文本数据集对预设大型语言模型进行训练,得到所述训练好的大型语言模型。
第三方面,本发明实施例还提供了一种电子设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的处理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如第一方面所述的方法。
本发明提供了一种Linux主机恶意软件检测方法、***、设备和介质,结合了静态分析、动态分析、本地机器学习和大型语言模型的优势,提高了检测准确性和适应性,利用大型语言模型的语义特征提取,可以增强鲁棒性,能够更全面和准确地识别未知威胁,同时减少误报提高主机的安全性,缓解了现有技术中存在的准确性差和误报率高的技术问题。
附图说明
为了更清楚地说明本申请实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种Linux主机恶意软件检测方法的流程图;
图2为本发明实施例提供的一种Linux主机恶意软件检测***的示意图;
图3为本发明实施例提供的一种Linux主机恶意软件检测***的框架示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1是根据本发明实施例提供的一种Linux主机恶意软件检测方法的流程图。如图1所示,该方法具体包括如下步骤:
步骤S102,基于预设规则集对待检测文件进行静态文件分析,得到待检测文件的静态分析特征;其中,待检测文件为运行于Linux主机上的文件。
可选地,在本发明实施例中,预设规则集包括黑名单规则和白名单规则;步骤S102具体包括如下步骤:
基于静态文件分析,获取待检测文件的结构、元数据和代码段;
基于黑名单规则和模式匹配,检测待检测文件的恶意特征;
基于白名单规则和模式匹配,检测待检测文件是否为合法文件。
在本发明实施例中,静态分析指的是,采用静态文件分析技术,检查文件的结构、元数据和代码段。基于事先定义的预设规则集(包括黑名单规则和白名单规则)进行文件分析。具体的,黑名单规则包括检查文件签名、特定字符串、危险操作码等,以识别潜在的恶意特征。白名单规则用于排除已知的合法文件,以减少误报率。在分析过程中记录文件的特征和匹配规则,用于后续改进。
步骤S104,在预设环境中对待检测文件进行动态文件分析,得到待检测文件的动态分析特征。具体的,包括如下步骤:
获取待检测文件在预设环境中运行时的行为信息;
基于预设行为特征库对行为信息进行分析,得到待检测文件的动态分析特征。
在本发明实施例中,动态分析指的是,在受控环境(即预设环境)中运行待检测文件,监控其行为。收集待检测文件执行时的***调用、文件***操作、网络通信等信息。基于规则进行实时分析,以检测潜在的恶意行为,如文件修改、进程注入、网络连接到C&C服务器,结合威胁情报识别软件恶意行为等。记录动态分析的结果和事件,用于构建恶意行为特征数据库。
步骤S106,以静态分析特征和动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果。
步骤S108,基于训练好的大型语言模型对静态分析特征、动态分析特征和分类结果进行分析,得到待检测文件的检测结果。
具体的,将训练好的大型语言模型(Large Language Model,LLM)部署为一个API,允许用户上传文件扫描和相关信息进行分析。部署模型在云端,以确保可扩展性和实时性。
本发明提供了一种Linux主机恶意软件检测方法,结合了静态分析、动态分析、本地机器学习和大型语言模型的优势,提高了检测准确性和适应性,利用大型语言模型的语义特征提取,可以增强鲁棒性,能够更全面和准确地识别未知威胁,同时减少误报提高主机的安全性,缓解了现有技术中存在的准确性差和误报率高的技术问题。
在本发明实施例中,还包括训练支持向量机模型。具体的,包括如下步骤:
获取训练数据集;训练数据集包括恶意文件特征样本和非恶意文件特征样本;
将训练数据集进行数据预处理,并划分为训练集和测试集;
基于训练集构建预设支持向量机模型;
确定预设支持向量机模型的超参数空间;
基于网格搜索算法或随机搜索算法搜索超参数空间,确定预设支持向量机模型的最佳参数组合;
基于训练集对预设支持向量机模型进行训练,得到训练好的支持向量机模型;
基于测试集,对训练好的支持向量机模型进行验证。
在本发明实施例中,构建本地支持向量机模型(Support Vector Machine,SVM)分类器,用于进一步分析和验证文件的恶意性,提取静态和动态分析的特征作为SVM的输入。在训练阶段,使用已知的恶意文件和正常文件样本,对SVM进行训练。
SVM利用支持向量来构建决策边界,以区分恶意文件和正常文件。在实时分析中,将提取的特征提供给SVM分类器,进行文件分类。记录SVM的决策结果和分类准确性,用于后续改进和调优。
在本发明实施例中,还包括训练大型语言模型。具体的,包括如下步骤:
获取预设文本数据集;预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;
对预设文本数据集进行预处理操作,得到处理之后的文本数据集;预处理操作包括:分词、去除停用词、词干提取;
基于处理之后的文本数据集对预设大型语言模型进行训练,得到训练好的大型语言模型。
在本发明实施例中,构建云端机器学习平台,集成大型语言模型(如GPT-3或其后继者)。利用LLM的自然语言处理能力,将***,文件静态信息,动态执行日志信息,提取和分类任务外包到云端。提供API接口,以便本地***能够上传文件特征描述和相关信息。在云端,LLM接受文件描述和上下文,对文件进行深层文本分析,识别潜在的威胁描述。LLM可以用于检测新型威胁,因为它有自然语言理解的能力,可以理解和分析不同语言的威胁描述。返回分析结果和威胁描述,以供本地***进一步处理。
本发明实施例提供的一种Linux主机恶意软件检测方法,通过LLM的语义特征提取,鲁棒性较强。针对于现有基于深度学习的检测模型训练样本不足导致过拟合的技术问题,本发明实施例中的LLM通过海量预训练,可以有效避免过拟合;针对于现有检测技术部署门槛高、移植性差的技术问题,本发明实施例只需要安装轻量传感器即可,适用于各类Linux***。
本发明实施例通过基于规则、基于支撑向量机器学习和基于LLM机器学习方式结合的方式,缓解了现有技术中的单一维度的检测方法准确率低、误报率高的技术问题,解决了现有技术缺少快速优化和维护机制的技术问题;通过将检测结果反馈LLM模型实现持续学习和优化,解决了当前常规方法针对不同入侵数据源没有特定模型的技术问题。
实施例二
图2是根据本发明实施例提供的一种Linux主机恶意软件检测***的示意图。如图2所示,该***包括:静态分析模块10,动态分析模块20,分类模块30和检测模块40。
具体的,静态分析模块10,用于基于预设规则集对待检测文件进行静态文件分析,得到待检测文件的静态分析特征;待检测文件为运行于Linux主机上的文件。
动态分析模块20,用于在预设环境中对待检测文件进行动态文件分析,得到待检测文件的动态分析特征;
分类模块30,用于以静态分析特征和动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果。
检测模块40,用于基于训练好的大型语言模型对静态分析特征、动态分析特征和分类结果进行分析,得到待检测文件的检测结果。
具体的,如图2所示,本发明实施例提供的***,还包括第一训练模块50,用于:
获取训练数据集;训练数据集包括恶意文件特征样本和非恶意文件特征样本;
将训练数据集进行数据预处理,并划分为训练集和测试集;
基于训练集构建预设支持向量机模型;
确定预设支持向量机模型的超参数空间;
基于网格搜索算法或随机搜索算法搜索超参数空间,确定预设支持向量机模型的最佳参数组合;
基于训练集对预设支持向量机模型进行训练,得到训练好的支持向量机模型;
基于测试集,对训练好的支持向量机模型进行验证。
如图2所示,本发明实施例提供的***,还包括第二训练模块60,用于:
获取预设文本数据集;预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;
对预设文本数据集进行预处理操作,得到处理之后的文本数据集;预处理操作包括:分词、去除停用词、词干提取;
基于处理之后的文本数据集对预设大型语言模型进行训练,得到训练好的大型语言模型。
由以上描述可知,本发明提供了一种Linux主机恶意软件检测***,结合了静态分析、动态分析、本地机器学习和大型语言模型的优势,提高了检测准确性和适应性,利用大型语言模型的语义特征提取,可以增强鲁棒性,能够更全面和准确地识别未知威胁,同时减少误报提高主机的安全性,缓解了现有技术中存在的准确性差和误报率高的技术问题。
实施例三
图3是根据本发明实施例提供的一种Linux主机恶意软件检测***的框架示意图。如图3所示,该***包括:样本输入模块100,分析引擎200和结果输出模块300三部分。其中,样本输入模块100,用于获取待检测样本;结果输出模块300,用于输出待检测样本的检测结果。
具体的,如图3所示,分析引擎200还包括:规则分析引擎210、SVM分析引擎220和LLM分析引擎230。其中,SVM分析引擎220部署于本地服务器,LLM分析引擎230部署于云端服务器。
具体的,规则分析引擎210,用于:
(1)静态分析:
采用静态文件分析技术,检查文件的结构、元数据和代码段。基于事先定义的规则集(黑名单和白名单规则)进行文件分析。黑名单规则包括检查文件签名、特定字符串、危险操作码等,以识别潜在的恶意特征。白名单规则用于排除已知的合法文件,以减少误报率。在分析过程中记录文件的特征和匹配规则,用于后续改进。获取需要分析的恶意文件,通常是通过安全操作员、网络流量捕获、电子邮件附件等方式获取。获取文件类型信息,包括可执行文件、文档、脚本等。文件元数据信息,提取待检查文件的元数据,如文件大小、创建日期、修改日期、所有者等,以获取关于文件的基本信息。提取文件哈希值信息,计算文件的哈希值(例如MD5、SHA1、SHA256),以便将来对文件进行跟踪和检测。文件格式提取与分析,分析文件的格式,查找任何异常或恶意特征。例如,检查可执行文件的文件头、文件结构和代码段。提取壳执行文件汇编代码信息,分析文件的行为和任何潜在的恶意操作。检查文件中的代码段,查找可疑操作、API调用和其他潜在的恶意行为。使用恶意特征数据库、规则和模式匹配来检测文件中的已知恶意特征。这可以包括检查文件的数字签名、行为特征和其他指纹。
(2)动态分析:
运行文件在受控环境中,监控其行为。收集文件执行时的***调用、文件***操作、网络通信等信息。基于规则进行实时分析,以检测潜在的恶意行为,如文件修改、进程注入、网络连接到C&C服务器等。记录动态分析的结果和事件,用于构建恶意行为特征数据库。
检查文件的自我解压缩、文件***和注册表修改、进程创建、网络通信等行为。使用监控工具来记录文件的行为,例如文件***活动、***调用、网络连接、注册表修改、内存操作等。检查文件是否试图植入恶意代码、执行潜在的攻击活动或传播自身。监视文件是否尝试建立网络连接,并记录通信的目标和内容。这有助于识别恶意软件。
具体的,SVM分析引擎220,用于:
数据提取:文件的静态特征提取,包括文件大小,文件类型,文件结构等。文件创建日期和修改日期,文件所有者和权限文件属性。提取文件中的字符串,这些字符串可以包含关键字、URL、IP地址等信息。检测是否存在编码或加密的字符串。PE文件特征,包括导入表,导出表。文件的运行行为:如果进行了动态分析,可以提取有关文件执行期间的***调用、文件***活动、网络连接等信息。
数据预处理阶段:数据中包含正常样本和恶意样本的数据信息。由于数据可能存在缺失值,需要删除包含缺失值的样本或填充缺失值。标准化和归一化:特征的标度和范围可能会不同,因此在数据预处理中通常会对特征进行标准化或归一化。这有助于确保不同特征的权重相等,避免某些特征对SVM分类器的影响过大。如果正负样本的数量差异很大,需要采取类别不平衡处理方法,以确保SVM在处理不平衡数据时能够产生平衡的结果。这可以包括过采样、欠采样或使用合适的加权。
模型训练和参数调优:首先,收集并准备训练数据集,包括已知的恶意文件和正常文件样本。确保数据集是多样化的,覆盖不同类型的文件和威胁提取文件的特征作为输入。结合之前的特征提取方法,确保特征表示了文件的静态和动态特性。
对数据集进行数据预处理,包括标准化、归一化、缺失值处理、特征选择、异常值处理等。确保数据集的质量和一致性。将数据集划分为训练集和测试集。训练集用于构建SVM模型,测试集用于评估模型性能。选择SVM模型的类型,如线性SVM、非线性SVM(使用核函数)等,根据问题的性质和数据的特征来选择。使用训练集训练选定的SVM模型。在训练期间,SVM会学习如何将恶意文件和正常文件分开。为了更好地评估模型的性能,可以使用k折交叉验证来检验模型的泛化性能。最终确保SVM模型能够准确地识别恶意文件并尽可能减少误报率。
定义SVM的超参数空间,包括C(正则化参数)和核函数的参数。对于非线性SVM,还包括核函数类型和核函数的参数。使用网格搜索或随机搜索来搜索参数空间以寻找最佳参数组合。这通常涉及尝试多个C值、不同核函数和核函数参数的组合。定义用于评估SVM性能的指标,如准确度、召回率、精确度、F1分数等。这有助于确定哪种参数配置在性能度量上表现最佳。可以使用自动化参数调优工具,如网格搜索和交叉验证,以自动找到最佳参数组合。在每个参数组合下,使用测试集评估SVM模型的性能。根据性能指标的结果选择最佳参数组合。一旦找到最佳参数组合,重新使用整个训练数据集进行模型训练。这将生成性能最佳的SVM模型。使用独立的验证数据集对模型进行最终验证,以确保其性能在新数据上也是可靠的。
具体的,LLM分析引擎230,用于:
数据收集:收集大规模的文本数据,包括***日志信息,文件静态行为,动态行为,恶意文件报告、安全博客、威胁情报、技术文档等用于训练LLM。
数据预处理:清理和预处理文本数据,包括分词、去除停用词、词干提取等,以准备数据用于训练。
模型选择:选择合适的大型语言模型:选择已有日常标签信息训练一个大型语言模型,或者根据需求自行训练一个语言模型。考虑模型的规模、语言理解能力和可用性,以满足特定的恶意文件分析需求。
模型训练:利用准备好的文本数据集对选择的大型语言模型进行微调,以适应恶意文件分析任务。在微调过程中,引入与恶意文件分析相关的任务,如文件描述、威胁分析、文本分类等,以提高模型的适应性。
API和云端部署:将经过微调的LLM部署为一个API,允许用户上传文件描述和相关信息进行分析。部署模型在云端,以确保可扩展性和实时性。
文本分析和威胁描述:用户通过API上传文件描述、威胁描述或文本数据。LLM将文本进行深层分析,理解文本的语义和语境,识别潜在的威胁和恶意行为。
多任务学习和分类:
利用LLM的多任务学习能力,同时执行多个自然语言处理任务,如文本分类、情感分析、关键字提取等。将文本数据与恶意文件分析任务相关联,使LLM能够输出关于威胁的详细描述、分类结果和建议的行动。
实时反馈和改进:
收集用户的反馈和模型输出,以改进LLM的性能。利用用户反馈数据,重新微调模型,以提高其性能和准确性。
隐私和安全:
确保用户上传的文件描述和数据在传输和处理过程中得到适当的保护,以维护数据的隐私和安全。
性能评估和监控:
定期评估LLM的性能,包括准确性、实时性和可扩展性。设立监控机制,以及时发现和解决性能下降或错误的问题。
由以上描述可知,本发明实施例提供的Linux主机恶意软件检测***,具有自动化机器学习能力,关键点可能包括自动特征选择、模型更新和自动化打标签的方法。这有助于***不断改进,并适应新的威胁。规则引擎通过事先定义的规则集快速检测明显的恶意特征,提供了高准确性,同时可为基于支撑向量机模型提供新的特征集和分类标签。基于支撑向量机的引擎不断迭代学习,参数调优,可为基于LLM的引擎提供标签。
本发明实施例还提供了一种电子设备,包括:存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如实施例一中的处理方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现如实施例一中的方法。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (10)
1.一种Linux主机恶意软件检测方法,其特征在于,包括:
基于预设规则集对待检测文件进行静态文件分析,得到所述待检测文件的静态分析特征;所述待检测文件为运行于Linux主机上的文件;
在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征;
以所述静态分析特征和所述动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果;
基于训练好的大型语言模型对所述静态分析特征、所述动态分析特征和所述分类结果进行分析,得到所述待检测文件的检测结果。
2.根据权利要求1所述的方法,其特征在于:所述预设规则集包括黑名单规则和白名单规则;基于预设规则集对待检测文件进行静态文件分析,包括:
基于静态文件分析,获取所述待检测文件的结构、元数据和代码段;
基于所述黑名单规则和模式匹配,检测所述待检测文件的恶意特征;
基于所述白名单规则和模式匹配,检测所述待检测文件是否为合法文件。
3.根据权利要求1所述的方法,其特征在于:在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征,包括:
获取所述待检测文件在所述预设环境中运行时的行为信息;
基于预设行为特征库对所述行为信息进行分析,得到所述待检测文件的动态分析特征。
4.根据权利要求1所述的方法,其特征在于:还包括:
获取训练数据集;所述训练数据集包括恶意文件特征样本和非恶意文件特征样本;
将所述训练数据集进行数据预处理,并划分为训练集和测试集;
基于所述训练集构建预设支持向量机模型;
确定所述预设支持向量机模型的超参数空间;
基于网格搜索算法或随机搜索算法搜索所述超参数空间,确定所述预设支持向量机模型的最佳参数组合;
基于所述训练集对所述预设支持向量机模型进行训练,得到所述训练好的支持向量机模型;
基于所述测试集,对所述训练好的支持向量机模型进行验证。
5.根据权利要求1所述的方法,其特征在于:还包括:
获取预设文本数据集;所述预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;
对所述预设文本数据集进行预处理操作,得到处理之后的文本数据集;所述预处理操作包括:分词、去除停用词、词干提取;
基于所述处理之后的文本数据集对预设大型语言模型进行训练,得到所述训练好的大型语言模型。
6.一种Linux主机恶意软件检测***,其特征在于,包括:静态分析模块,动态分析模块,分类模块和检测模块;其中,
所述静态分析模块,用于基于预设规则集对待检测文件进行静态文件分析,得到所述待检测文件的静态分析特征;所述待检测文件为运行于Linux主机上的文件;
所述动态分析模块,用于在预设环境中对所述待检测文件进行动态文件分析,得到所述待检测文件的动态分析特征;
所述分类模块,用于以所述静态分析特征和所述动态分析特征作为输入,基于训练好的支持向量机模型进行分类,得到分类结果;
所述检测模块,用于基于训练好的大型语言模型对所述静态分析特征、所述动态分析特征和所述分类结果进行分析,得到所述待检测文件的检测结果。
7.根据权利要求6所述的***,其特征在于:还包括第一训练模块,用于:
获取训练数据集;所述训练数据集包括恶意文件特征样本和非恶意文件特征样本;
将所述训练数据集进行数据预处理,并划分为训练集和测试集;
基于所述训练集构建预设支持向量机模型;
确定所述预设支持向量机模型的超参数空间;
基于网格搜索算法或随机搜索算法搜索所述超参数空间,确定所述预设支持向量机模型的最佳参数组合;
基于所述训练集对所述预设支持向量机模型进行训练,得到所述训练好的支持向量机模型;
基于所述测试集,对所述训练好的支持向量机模型进行验证。
8.根据权利要求6所述的***,其特征在于:还包括第二训练模块,用于:
获取预设文本数据集;所述预设文本数据集包括:***日志信息、文件的静态分析特征和动态分析特征、恶意文件报告、安全博客、威胁情报、技术文档;
对所述预设文本数据集进行预处理操作,得到处理之后的文本数据集;所述预处理操作包括:分词、去除停用词、词干提取;
基于所述处理之后的文本数据集对预设大型语言模型进行训练,得到所述训练好的大型语言模型。
9.一种电子设备,其特征在于,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-5任一项所述的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311682115.9A CN117521068A (zh) | 2023-12-08 | 2023-12-08 | Linux主机恶意软件检测方法、***、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311682115.9A CN117521068A (zh) | 2023-12-08 | 2023-12-08 | Linux主机恶意软件检测方法、***、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117521068A true CN117521068A (zh) | 2024-02-06 |
Family
ID=89764583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311682115.9A Pending CN117521068A (zh) | 2023-12-08 | 2023-12-08 | Linux主机恶意软件检测方法、***、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117521068A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106778268A (zh) * | 2016-11-28 | 2017-05-31 | 广东省信息安全测评中心 | 恶意代码检测方法与*** |
CN107590388A (zh) * | 2017-09-12 | 2018-01-16 | 南方电网科学研究院有限责任公司 | 恶意代码检测方法和装置 |
CN112883373A (zh) * | 2020-12-30 | 2021-06-01 | 国药集团基因科技有限公司 | 一种PHP类型的WebShell检测方法及其检测*** |
CN114491523A (zh) * | 2021-12-14 | 2022-05-13 | 奇安信科技集团股份有限公司 | 恶意软件检测方法、装置、电子设备、介质及产品 |
CN114840207A (zh) * | 2022-04-02 | 2022-08-02 | 三六零数字安全科技集团有限公司 | 源代码语言类型检测方法和***、设备及存储介质 |
US20230205883A1 (en) * | 2021-12-27 | 2023-06-29 | Sergey ULASEN | Integrated static and dynamic analysis for malware detection |
CN117077153A (zh) * | 2023-10-18 | 2023-11-17 | 深圳海云安网络安全技术有限公司 | 基于大规模语言模型的静态应用安全检测误报判别方法 |
-
2023
- 2023-12-08 CN CN202311682115.9A patent/CN117521068A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106778268A (zh) * | 2016-11-28 | 2017-05-31 | 广东省信息安全测评中心 | 恶意代码检测方法与*** |
CN107590388A (zh) * | 2017-09-12 | 2018-01-16 | 南方电网科学研究院有限责任公司 | 恶意代码检测方法和装置 |
CN112883373A (zh) * | 2020-12-30 | 2021-06-01 | 国药集团基因科技有限公司 | 一种PHP类型的WebShell检测方法及其检测*** |
CN114491523A (zh) * | 2021-12-14 | 2022-05-13 | 奇安信科技集团股份有限公司 | 恶意软件检测方法、装置、电子设备、介质及产品 |
US20230205883A1 (en) * | 2021-12-27 | 2023-06-29 | Sergey ULASEN | Integrated static and dynamic analysis for malware detection |
CN114840207A (zh) * | 2022-04-02 | 2022-08-02 | 三六零数字安全科技集团有限公司 | 源代码语言类型检测方法和***、设备及存储介质 |
CN117077153A (zh) * | 2023-10-18 | 2023-11-17 | 深圳海云安网络安全技术有限公司 | 基于大规模语言模型的静态应用安全检测误报判别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11423146B2 (en) | Provenance-based threat detection tools and stealthy malware detection | |
CN110912890B (zh) | 一种面向内网的漏洞攻击检测*** | |
Smutz et al. | Malicious PDF detection using metadata and structural features | |
Van Ede et al. | Deepcase: Semi-supervised contextual analysis of security events | |
US9424426B2 (en) | Detection of malicious code insertion in trusted environments | |
US20110041179A1 (en) | Malware detection | |
Sabhadiya et al. | Android malware detection using deep learning | |
US20240129327A1 (en) | Context informed abnormal endpoint behavior detection | |
Atzeni et al. | Countering android malware: A scalable semi-supervised approach for family-signature generation | |
Huang et al. | Android malware development on public malware scanning platforms: A large-scale data-driven study | |
Feng et al. | Automated detection of password leakage from public github repositories | |
US20230252136A1 (en) | Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information | |
Rahman et al. | A study of permission-based malware detection using machine learning | |
US20240054210A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20230252144A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20230252146A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20230048076A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
Gandotra et al. | A framework for generating malware threat intelligence | |
CN117521068A (zh) | Linux主机恶意软件检测方法、***、设备及介质 | |
Ohm et al. | Towards Detection of Malicious Software Packages Through Code Reuse by Malevolent Actors | |
Wu et al. | IoT malware analysis and new pattern discovery through sequence analysis using meta-feature information | |
US20230306113A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20220164449A1 (en) | Classifer generator | |
US20230252143A1 (en) | Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information | |
Anwar et al. | Human Elements in Machine Learning-Based Solutions to Cybersecurity |
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 |