CN108038378A - 云端检测函数被恶意修改的方法、终端设备及存储介质 - Google Patents
云端检测函数被恶意修改的方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN108038378A CN108038378A CN201711455392.0A CN201711455392A CN108038378A CN 108038378 A CN108038378 A CN 108038378A CN 201711455392 A CN201711455392 A CN 201711455392A CN 108038378 A CN108038378 A CN 108038378A
- Authority
- CN
- China
- Prior art keywords
- clouds
- target process
- function
- malicious modification
- information
- 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
-
- 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
本发明涉及一种云端检测函数被恶意修改的方法、终端设备及存储介质,该方法可包括以下步骤:S1、采集函数未被恶意修改和被恶意修改的目标进程信息并上报到云端,其中,未被恶意修改的目标进程信息包括被安全软件修改过函数地址的目标进程信息;S2、云端根据这些信息建立基于决策树算法的分类模型;S3、采集需要检测的目标系统的目标进程信息并上报到云端;S4、云端将目标系统上报的目标进程信息输入所建立的分类模型,得到目标进程函数是否被恶意修改的结果。
Description
技术领域
本发明涉及计算机安全领域,具体地涉及一种云端检测函数被恶意修改的方法、终端设备及存储介质。
背景技术
随着计算机技术的发展,当前对程序函数地址修改一般通过两种方式:通过进程注入修改程序的函数调用地址;对程序二进制文件直接修改其函数调用地址。
进程注入修改函数地址的方式通常被称作热补丁,在不终止程序运行的情况下,通过给程序更新一些函数调用,实现添加额外功能或者修补已知问题的目的。通过进程注入实现函数地址修改一般需要做到以下几步:关联需要注入的正在运行的目标进程;让目标进程加载预先准备好的注入用的动态库;在注入的动态库中运行函数,替换目标进程中的部分函数的跳转地址,使目标进程在调用这些函数时,跳转到注入的动态库中的函数,实现函数替换的目的。
程序二进制直接修改函数调用地址通常被称作冷补丁,相对于进程注入修改函数调用地址,其修改是永久生效的,而进程注入则在进程每次重新启动都需要重新注入。
函数地址修改技术也会被用于一些非法的目的,比如通过修改程序验证函数对程序进行破解、修改程序密码获取函数窃取密码、植入病毒代码等。
如何判断函数地址被恶意修改,目前,主要有以下方法:
在目标系统上通过安全防护软件检测注入行为的发生;
在目标系统上通过安全防护软件检测程序二进制文件是否包含恶意代码;
在目标系统上目标进程自身在运行中检测函数是否被替换。
对于函数地址替换,也有可能是目标进程的软件厂商自己发布的修复补丁或者是安全厂商处于安全目的进行的加固,因此单纯的在目标系统上检查目标进程是否被注入以及函数是否被替换是不一定准确的。
目标进程自身检测函数是否被替换,对于实现了该机制的目标进程才能进行检测,但是并不是运行在系统上的所有目标进程都实现了该机制。
发明内容
本发明旨在提供一种云端检测函数被恶意修改的方法,以解决上述现有技术存在的问题。为此,本发明采用的具体技术方案如下:
一种云端检测函数被恶意修改的方法,可包括以下步骤:
S1、采集函数未被恶意修改和被恶意修改的目标进程信息并上报到云端,其中,未被恶意修改的目标进程信息包括被安全软件修改过函数地址的目标进程信息;
S2、云端根据这些信息建立基于决策树算法的分类模型;
S3、采集需要检测的目标系统的目标进程信息并上报到云端;
S4、云端将目标系统上报的目标进程信息输入所建立的分类模型,得到目标进程函数是否被恶意修改的结果。
进一步地,S1的具体过程为:建立专用于采集的基准系统,在基准系统上运行各个目标进程,通过采集程序采集目标进程的函数与动态库的关联信息并上报到云端。
进一步地,S2的具体过程为:云端将上报的进程信息形成数据集,通过遍历整个数据集,循环计算每个特征的香农熵,根据香农熵确定分类模型。
进一步地,S3的具体过程为:在需要检测的目标系统上运行采集程序,采集程序通过注入的方式将采集用的动态库注入到目标进程,并让目标进程执行动态库中的采集函数,采集函数采集目标进程中的所有函数与动态库的关联信息并上报到云端。
进一步地,还包括步骤S5:在每次软件升级或者安全软件有更新时,通过采集更新后的目标进程信息,云端持续更新分类模型。这有助于提高检测的正确性。
进一步地,所述目标进程信息包括操作系统名、操作系统版本、目标进程名、目标进程版本、动态库名和函数名。
本发明还提供了一种云端检测函数被恶意修改的终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序被处理器执行时实现如上所述方法的步骤。
本发明采用上述技术方案,具有的有益效果是:本发明通过在云端建立了目标进程信息的分类模型,判断目标进程的函数是否被修改不再局限于仅通过目标进程所在系统的单一环境,并且提高了检测的方便性、准确性和及时性。
附图说明
图1是本发明的云端检测函数被恶意修改的方法的流程图。
具体实施方式
为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
现结合附图和具体实施方式对本发明进一步说明。图1示出了本发明的云端检测函数被恶意修改的方法的流程图。该方法可包括以下步骤:
S1、采集函数未被恶意修改和被恶意修改的目标进程信息并上报到云端。其中,未被恶意修改的目标进程信息包括被安全软件修改过函数地址的目标进程信息,以增加云端分类模型的判定准确性。采集函数采集的目标进程信息可包括操作系统名、操作系统版本、目标进程名、目标进程版本、动态库名和函数名等。具体地,建立专用于采集的基准系统,其中,基准系统可以根据平台(例如Windows、Linux或Unix等)和对应的版本(例如Windows的win7、win8和win10等)划分;在基准系统上运行各个目标进程,通过采集程序采集目标进程的函数与动态库的关联信息并上报到云端。其中,采集程序通过注入的方式将采集用的动态库注入到目标进程,并让目标进程执行动态库中的采集函数。
S2、云端根据这些信息建立基于决策树算法的分类模型。
具体地,云端将上报的进程信息形成数据集,通过遍历整个数据集,循环计算每个特征的香农熵,根据香农熵确定分类模型。云端将采集信息形成数据集,包括以下子项:未被恶意修改的目标进程信息、被安全软件修改过函数地址的目标进程信息、被恶意修改的目标进程信息,如可按照以下方式组成一个子项(以json格式表示):[“操作系统名”,“操作系统版本”,“目标进程名”,”目标进程版本”,”动态库名”,”函数名”,“是否被恶意篡改”]。
组成的数据集类似以下格式:[[子项],[子项],[子项],[子项]…]。
其中,香农熵计算公式如下:
其中,P(x)表示随机变量某个取值的概率。
通过基于决策树算法的分类模型,有利于提高判断速度,节省云端开销。
S3、采集需要检测的目标系统的目标进程信息并上报到云端。
具体地,在需要检测的目标系统上运行采集程序,采集程序通过注入的方式将采集用的动态库注入到目标进程,并让目标进程执行动态库中的采集函数,采集函数采集目标进程中的所有函数与动态库的关联信息并上报到云端。
S4、云端将目标系统上报的目标进程信息输入所建立的分类模型,得到目标进程函数是否被恶意修改的结果。
此外,该方法包括步骤S5:在每次软件升级或者安全软件有更新时,通过采集更新后的目标进程信息,云端持续更新分类模型。这有助于提高检测的正确性。
本发明还提供了一种云端检测函数被恶意修改的终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
进一步地,该终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,上述终端设备的组成结构仅仅是云端检测函数被恶意修改的终端设备的示例,并不构成对云端检测函数被恶意修改的终端设备的限定,可以包括比上述更多或更少的部件,或者组合某些部件,或者不同的部件,例如云端检测函数被恶意修改的终端设备还可以包括输入输出设备、网络接入设备、总线等,本发明实施例对此不做限定。
进一步地,所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是云端检测函数被恶意修改的终端设备的控制中心,利用各种接口和线路连接整个云端检测函数被恶意修改的终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述云端检测函数被恶意修改的终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述方法的步骤。
云端检测函数被恶意修改的终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
Claims (8)
1.一种云端检测函数被恶意修改的方法,其特征在于,包括以下步骤:
S1、采集函数未被恶意修改和被恶意修改的目标进程信息并上报到云端,其中,未被恶意修改的目标进程信息包括被安全软件修改过函数地址的目标进程信息;
S2、云端根据这些信息建立基于决策树算法的分类模型;
S3、采集需要检测的目标系统的目标进程信息并上报到云端;
S4、云端将目标系统上报的目标进程信息输入所建立的分类模型,得到目标进程函数是否被恶意修改的结果。
2.如权利要求1所述的云端检测函数被恶意修改的方法,其特征在于,S1的具体过程为:建立专用于采集的基准系统,在基准系统上运行各个目标进程,通过采集程序采集目标进程的函数与动态库的关联信息并上报到云端。
3.如权利要求1所述的云端检测函数被恶意修改的方法,其特征在于,S2的具体过程为:云端将上报的进程信息形成数据集,通过遍历整个数据集,循环计算每个特征的香农熵,根据香农熵确定分类模型。
4.如权利要求1所述的云端检测函数被恶意修改的方法,其特征在于,S3的具体过程为:在需要检测的目标系统上运行采集程序,采集程序通过注入的方式将采集用的动态库注入到目标进程,并让目标进程执行动态库中的采集函数,采集函数采集目标进程中的所有函数与动态库的关联信息并上报到云端。
5.如权利要求1所述的云端检测函数被恶意修改的方法,其特征在于,还包括步骤S5:在每次软件升级或者安全软件有更新时,通过采集更新后的目标进程信息,云端持续更新分类模型。
6.如权利要求1-5中的任一项所述的云端检测函数被恶意修改的方法,其特征在于,所述目标进程信息包括操作系统名、操作系统版本、目标进程名、目标进程版本、动态库名和函数名。
7.一种云端检测函数被恶意修改的终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-6中任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711455392.0A CN108038378A (zh) | 2017-12-28 | 2017-12-28 | 云端检测函数被恶意修改的方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711455392.0A CN108038378A (zh) | 2017-12-28 | 2017-12-28 | 云端检测函数被恶意修改的方法、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108038378A true CN108038378A (zh) | 2018-05-15 |
Family
ID=62098108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711455392.0A Pending CN108038378A (zh) | 2017-12-28 | 2017-12-28 | 云端检测函数被恶意修改的方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108038378A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111179079A (zh) * | 2019-12-23 | 2020-05-19 | 上海金仕达软件科技有限公司 | 终端信息采集方法、装置、终端设备及存储介质 |
CN115051833A (zh) * | 2022-05-12 | 2022-09-13 | 中国电子科技集团公司电子科学研究院 | 一种基于终端进程的互通网络异常检测方法 |
CN115688109A (zh) * | 2023-01-04 | 2023-02-03 | 杭州云缔盟科技有限公司 | 一种基于恶意代码检测报警系统的恶意代码检测方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314561A (zh) * | 2010-07-01 | 2012-01-11 | 电子科技大学 | 基于api hook的恶意代码自动分析方法和系统 |
CN102622536A (zh) * | 2011-01-26 | 2012-08-01 | 中国科学院软件研究所 | 一种恶意代码捕获方法 |
CN103679032A (zh) * | 2013-12-13 | 2014-03-26 | 北京奇虎科技有限公司 | 防御恶意软件的方法和装置 |
CN103761481A (zh) * | 2014-01-23 | 2014-04-30 | 北京奇虎科技有限公司 | 一种恶意代码样本自动处理的方法及装置 |
CN104268472A (zh) * | 2014-09-11 | 2015-01-07 | 腾讯科技(深圳)有限公司 | 还原被第三方动态库修改函数地址的方法和装置 |
CN104951375A (zh) * | 2015-07-01 | 2015-09-30 | 北京博睿宏远科技发展有限公司 | 基于函数拦截技术的手机app性能数据采集方法 |
US20150350237A1 (en) * | 2011-10-28 | 2015-12-03 | Confer Technologies, Inc. | Security Policy Deployment and Enforcement System for the Detection and Control of Polymorphic and Targeted Malware |
CN105205396A (zh) * | 2015-10-15 | 2015-12-30 | 上海交通大学 | 一种基于深度学习的安卓恶意代码检测系统及其方法 |
CN105429956A (zh) * | 2015-11-02 | 2016-03-23 | 重庆大学 | 基于p2p动态云的恶意软件检测系统及方法 |
CN107341401A (zh) * | 2017-06-21 | 2017-11-10 | 清华大学 | 一种基于机器学习的恶意应用监测方法和设备 |
-
2017
- 2017-12-28 CN CN201711455392.0A patent/CN108038378A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314561A (zh) * | 2010-07-01 | 2012-01-11 | 电子科技大学 | 基于api hook的恶意代码自动分析方法和系统 |
CN102622536A (zh) * | 2011-01-26 | 2012-08-01 | 中国科学院软件研究所 | 一种恶意代码捕获方法 |
US20150350237A1 (en) * | 2011-10-28 | 2015-12-03 | Confer Technologies, Inc. | Security Policy Deployment and Enforcement System for the Detection and Control of Polymorphic and Targeted Malware |
CN103679032A (zh) * | 2013-12-13 | 2014-03-26 | 北京奇虎科技有限公司 | 防御恶意软件的方法和装置 |
CN103761481A (zh) * | 2014-01-23 | 2014-04-30 | 北京奇虎科技有限公司 | 一种恶意代码样本自动处理的方法及装置 |
CN104268472A (zh) * | 2014-09-11 | 2015-01-07 | 腾讯科技(深圳)有限公司 | 还原被第三方动态库修改函数地址的方法和装置 |
CN104951375A (zh) * | 2015-07-01 | 2015-09-30 | 北京博睿宏远科技发展有限公司 | 基于函数拦截技术的手机app性能数据采集方法 |
CN105205396A (zh) * | 2015-10-15 | 2015-12-30 | 上海交通大学 | 一种基于深度学习的安卓恶意代码检测系统及其方法 |
CN105429956A (zh) * | 2015-11-02 | 2016-03-23 | 重庆大学 | 基于p2p动态云的恶意软件检测系统及方法 |
CN107341401A (zh) * | 2017-06-21 | 2017-11-10 | 清华大学 | 一种基于机器学习的恶意应用监测方法和设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111179079A (zh) * | 2019-12-23 | 2020-05-19 | 上海金仕达软件科技有限公司 | 终端信息采集方法、装置、终端设备及存储介质 |
CN115051833A (zh) * | 2022-05-12 | 2022-09-13 | 中国电子科技集团公司电子科学研究院 | 一种基于终端进程的互通网络异常检测方法 |
CN115051833B (zh) * | 2022-05-12 | 2023-12-15 | 中国电子科技集团公司电子科学研究院 | 一种基于终端进程的互通网络异常检测方法 |
CN115688109A (zh) * | 2023-01-04 | 2023-02-03 | 杭州云缔盟科技有限公司 | 一种基于恶意代码检测报警系统的恶意代码检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108665297B (zh) | 异常访问行为的检测方法、装置、电子设备和存储介质 | |
KR102017756B1 (ko) | 이상행위 탐지 장치 및 방법 | |
CN102622536B (zh) | 一种恶意代码捕获方法 | |
US9692599B1 (en) | Security module endorsement | |
US20210049715A1 (en) | Blockchain-based data procesing method, apparatus, and electronic device | |
CN109144548A (zh) | 一种基于git实现的多组件软件升级方法、装置及服务器 | |
CN107808096A (zh) | 检测apk运行时被注入恶意代码的方法、终端设备及存储介质 | |
CN108648810B (zh) | 医学审核的数据处理方法、装置、及计算机可读存储介质 | |
CN110619210A (zh) | 一种模拟器检测方法及系统 | |
CN111179066B (zh) | 业务数据的批量处理方法、装置、服务器和存储介质 | |
CN105468977A (zh) | 一种基于朴素贝叶斯的Android恶意软件分类方法和装置 | |
CN109726067A (zh) | 一种进程监控方法以及客户端设备 | |
CN108038378A (zh) | 云端检测函数被恶意修改的方法、终端设备及存储介质 | |
CN108027859A (zh) | 检测对计算设备中的进程的软件攻击 | |
CN108255702A (zh) | 一种测试用例创建方法、装置、设备及存储介质 | |
CN106339247A (zh) | 一种动态链接库文件的加载系统及加载方法 | |
KR20200039912A (ko) | Ai 기반 안드로이드 악성코드 자동화 분석 시스템 및 방법 | |
CN107656750A (zh) | 插件更新方法及装置 | |
CN107741904A (zh) | 测试机自动配置方法、装置、设备及存储介质 | |
CN108805590A (zh) | 一种基于区块链的农产品追溯系统 | |
CN110109900A (zh) | 数据稽核方法、系统、电子设备及可读存储介质 | |
CN109690571A (zh) | 基于学习的组标记系统和方法 | |
CN105631336B (zh) | 检测移动装置上的恶意文件的系统及方法 | |
CN111931047A (zh) | 基于人工智能的黑产账号检测方法及相关装置 | |
CN112671609A (zh) | 一种资产普查与安全检测方法、装置及终端设备 |
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: 20180515 |