CN108171055A - 一种远控恶意代码行为触发方法及系统 - Google Patents
一种远控恶意代码行为触发方法及系统 Download PDFInfo
- Publication number
- CN108171055A CN108171055A CN201611122671.0A CN201611122671A CN108171055A CN 108171055 A CN108171055 A CN 108171055A CN 201611122671 A CN201611122671 A CN 201611122671A CN 108171055 A CN108171055 A CN 108171055A
- Authority
- CN
- China
- Prior art keywords
- malicious code
- information
- behavior
- remote control
- character string
- 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
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)
- Telephonic Communication Services (AREA)
Abstract
本发明提出一种远控恶意代码行为触发方法及系统,通过HOOK远控恶意代码中的对比类API接口;判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则获取所述远控恶意代码中的对比类API的字符串信息,与行为触发信息库中的字符串信息进行匹配,否则结束;判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库。通过本发明的方法及系统,能够有效触发远控恶意代码的恶意行为,提升动态恶意代码检测技术对远控类恶意代码的检出能力。
Description
技术领域
本发明涉及移动网络安全技术领域,尤其涉及一种远控恶意代码行为触发方法及系统。
背景技术
随着移动互联网的蓬勃发展,移动设备上的恶意代码层出不穷,而目前主流的移动恶意代码检测技术主要是基于静态代码解析和静态特征库的匹配。在恶意代码纷纷采用加固技术后,静态恶意代码检测技术变得捉襟见肘了。于是动态恶意代码检测技术逐步发展起来,动态恶意代码检测技术主要是通过监控恶意代码运行时的行为,因此如何使恶意代码在运行时触发恶意行为是动态恶意代码检测技术的关键,因为只有恶意代码在运行时产生了某些威胁行为时才能被动态恶意代码检测引擎所检出。但对于远控类的恶意代码在运行过程中只有接收到远控服务器指定的指令才会触发相关的行为,例如在远控恶意代码的代码中指定要接收远控服务器发送的SMS指令才会发送短信,但是在恶意代码模拟运行时很难精确的模拟这些指令从而触发远控恶意代码的发送短信行为,这就导致动态恶意代码检测技术对于远控类的恶意代码是无效的。
发明内容
有鉴于此,实有必要提出一种远控恶意代码行为触发方法及系统,能够有效触发远控恶意代码的恶意行为,提升动态恶意代码的检测能力。
为了实现上述目的,本发明公开了一种远控恶意代码行为触发方法,包括:
HOOK远控恶意代码中的对比类API接口,所述对比类API接口为对字符串信息进行对比判断类的系统API接口;
当远控恶意代码接收到模拟的行为触发信息时,获取所述远控恶意代码中的对比类API中的字符串信息,并与预设行为触发信息库中的字符串信息进行匹配;
判断对比类API中的字符串信息是否与预设行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库。
所述的方法中,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
所述的方法中,所述行为触发信息库用于记录已知远控恶意代码的行为触发信息。
所述的方法中,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息。
所述的方法中,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hook dvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
一种远控恶意代码行为触发系统,包括:
对比接口HOOK模块,用于HOOK远控恶意代码中的对比类API接口,并获取对比类API中的字符串信息;
信息匹配模块,用于判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则将对比接口HOOK模块获取的所述远控恶意代码中的对比类API中的字符串信息,与行为触发信息库中的字符串信息进行匹配,否则结束;
信息匹配模块还用于判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库;
行为触发信息模块,用于存储行为触发信息库;
疑似信息模块,用于存储疑似信息库。
所述的系统中,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
所述的系统中,所述行为触发信息库用于记录已知远控恶意代码的行为触发信息。
所述的系统中,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息。
所述的系统中,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hook dvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
本发明的关键在于,通过对远控恶意代码经常使用的用于匹配行为触发信息的API接口进行HOOK,实现远控类行为触发信息或远控指令匹配结果的逻辑替换;且本发明对Java层普通接口和java层inline接口都有实现API HOOK的方法,从而可针对不同的指令匹配机制进行逻辑替换,进而有效触发远控恶意代码行为;由于匹配接口也有可能是正常逻辑,因此本发明使用行为触发信息匹配的方式来代替直接替换匹配接口执行结果逻辑的方法,避免了直接替换导致的恶意代码逻辑混乱。
本发明提出一种远控恶意代码行为触发方法及系统,通过HOOK远控恶意代码中的对比类API接口;判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则获取所述远控恶意代码中的对比类API中的字符串信息,与行为触发信息库中的字符串进行匹配,否则结束;判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库。通过本发明的方法及系统,能够有效触发远控恶意代码的恶意行为,提升远控类恶意代码的检出能力。同时还能够解决远控指令自动化提取的问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种远控恶意代码行为触发方法流程图;
图2为本发明一种远控恶意代码行为触发系统结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
一种远控恶意代码行为触发方法,如图1所示,包括:
S101:HOOK远控恶意代码中的对比类API接口,所述对比类API接口为对字符串信息进行对比判断类的系统API接口;
S102:判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则执行S103,否则结束;
S103:获取所述远控恶意代码中的对比类API中的字符串信息,与行为触发信息库中的字符串信息进行匹配;
S104:判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则执行S105,否则执行S106;
S105:根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;
S106:将对比类API中的字符串信息保存到疑似信息库。
所述的方法中,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
所述的方法中,所述行为触发信息库用于记录已知远控恶意代码的行为触发信息。
所述的方法中,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息;当然行为触发信息还可以为除远控指令以外的其他信息,如运行环境信息或当前时间信息等,均可以利用本发明的方法实现检测。
所述的方法中,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hook dvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
本发明在开始时会HOOK对比类API接口,这里针对不同的API类型会有不同的HOOK方式,以及对应的返回值,具体如下:
上表中的返回值是指当远控恶意代码调用这些API获取的字符串信息命中行为触发信息库时,需要修改该API的返回值为表格中返回值列中给出的对应值,这样可以使得远控恶意代码误以为接收到的字符串正是代码所期望的字符串信息,进而继续执行相关的恶意行为。
例如:某恶意代码在运行时需要接收远程服务器发送过来的短信,并解析短信内容获取远控指令字符串信息,并且判断远控指令字符串信息中是否有远控恶意代码所期望的值,如sms,动态恶意代码检测系统通常会模拟远程服务器发送短信给远控恶意代码,但短信内容不可能正好是sms,如果恶意代码调用String类中的equals方法来校验这个短信指令,那么普通的方法就会校验失败,导致后续行为无法触发,而本发明获取API中想要进行对比的字符串信息,即sms,与行为触发信息库中匹配,如果匹配成功,则确定sms正好是某远控恶意代码的远控指令,此时本发明方法会修改equals方法的返回值,使得校验成功,从而触发后续恶意行为。
对于Java普通的API和Native层的API Hook方法目前已经有相当成熟的Hook方式了,因此本发明仅对Java层inline API Hook流程进行详细说明。
Java inline API Hook的流程是通过动态注入的方式将一个动态库注入到/system/bin/installd进程中,并执行设置LD_PRELOAD环境变量,LD_PRELOAD指向一个事先编译好的动态库,该动态库实现一个dvmContinueOptimization方法,该方法里面会先hookdvmUpdateCodeUnit方法,然后调用dvmContinueOptimiztion函数,这样在installd安装新的应用的时候就会先加载LD_PRELOAD指向的动态库,在dexopt时会执行LD_PRELOAD指向的动态库中的dvmContinueOptimiztion方法,并对dvmUpdateCodeUnit进行hook,从而屏蔽指令优化过程,指的原来需要的hook的java inline函数变成普通函数,可直接使用hook普通函数的方法hook java inline函数。
在本发明的方法中,疑似信息库存放未命中行为触发信息库中字符串信息的对比类API中的字符串信息,在实际应用中,由于恶意代码中调用对比接口的地方为可能会有很多,有些也可能是正常逻辑,可以通过人工审核的方法,将疑似信息库中的信息进行审核后,确认为行为触发信息的,将其补充到行为触发信息库中。
一种远控恶意代码行为触发系统,如图2所示,包括:
对比接口HOOK模块201,用于HOOK远控恶意代码中的对比类API接口,并获取对比类API中的字符串信息;
信息匹配模块202,用于判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则将对比接口HOOK模块获取所述远控恶意代码中的对比类API中的字符串信息,与行为触发信息库中的字符串信息进行匹配,否则结束;
信息匹配模块还用于判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库;
行为触发信息模块203,用于存储行为触发信息库;
疑似信息模块204,用于存储疑似信息库。
所述的系统中,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
所述的系统中,所述行为触发信息库用于记录已知远控恶意代码的行为触发信息。
所述的系统中,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息。
所述的系统中,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hook dvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
本发明的关键在于,通过对远控恶意代码经常使用的用于匹配行为触发信息的API接口进行HOOK,实现远控类行为触发信息或远控指令匹配结果的逻辑替换;且本发明对Java层普通接口和java层inline接口都有实现API HOOK的方法,从而可针对不同的指令匹配机制进行逻辑替换,从而有效触发远控恶意代码行为;由于匹配接口也有可能是正常逻辑,因此本发明使用行为触发信息匹配来代替直接替换匹配接口执行结果逻辑的方法,避免了直接替换导致的恶意代码逻辑混乱。
本发明提出一种远控恶意代码行为触发方法及系统,通过HOOK远控恶意代码中的对比类API接口;判断远控恶意代码是否接收到模拟的行为触发信息,如果是,则获取所述远控恶意代码中的对比类API中的字符串信息,与行为触发信息库中的字符串进行匹配,否则结束;判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;否则将对比类API中的字符串信息保存到疑似信息库。通过本发明的方法及系统,能够有效触发远控恶意代码的恶意行为,提升远控类恶意代码的检出能力。同时还能够解决远控指令自动化提取的问题。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
Claims (10)
1.一种远控恶意代码行为触发方法,其特征在于,包括:
HOOK远控恶意代码中的对比类API接口,所述对比类API接口为对字符串信息进行对比判断类的系统API接口;
当远控恶意代码接收到模拟的行为触发信息时,获取所述远控恶意代码中的对比类API中的字符串信息,并与预设行为触发信息库中的字符串信息进行匹配;
判断对比类API中的字符串信息是否与预设行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为。
2.如权利要求1所述的方法,其特征在于,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
3.如权利要求1所述的方法,其特征在于,所述预设行为触发信息库用于记录已知远控恶意代码的行为触发信息。
4.如权利要求1所述的方法,其特征在于,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息。
5.如权利要求4所述的方法,其特征在于,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hookdvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
6.一种远控恶意代码行为触发系统,其特征在于,包括:
对比接口HOOK模块,用于HOOK远控恶意代码中的对比类API接口,并获取对比类API中的字符串信息;
信息匹配模块,用于当远控恶意代码接收到模拟的行为触发信息时,获取所述远控恶意代码中的对比类API中的字符串信息,并与预设行为触发信息库中的字符串信息进行匹配;
而后判断对比类API中的字符串信息是否与行为触发信息库中的任一字符串信息相同,如果是,则根据预设值修改所述对比类API的返回值,触发远控恶意代码后续行为;
行为触发信息模块,用于存储行为触发信息库。
7.如权利要求6所述的系统,其特征在于,所述对比类API接口具体为,远控恶意代码用于匹配行为触发信息的API接口。
8.如权利要求6所述的系统,其特征在于,所述行为触发信息库用于记录已知远控恶意代码的行为触发信息。
9.如权利要求6所述的系统,其特征在于,所述行为触发信息为远控恶意代码的远控指令中的指令字符串信息。
10.如权利要求9所述的系统,其特征在于,所述对比类API接口为Java inline API时,所述HOOK远控恶意代码的对比类API接口具体为:设置一个环境变量指向一个预先hookdvmUpdateCodeUnit函数的dvmContinueOptimitztion方法的动态库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122671.0A CN108171055A (zh) | 2016-12-08 | 2016-12-08 | 一种远控恶意代码行为触发方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122671.0A CN108171055A (zh) | 2016-12-08 | 2016-12-08 | 一种远控恶意代码行为触发方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108171055A true CN108171055A (zh) | 2018-06-15 |
Family
ID=62526618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611122671.0A Pending CN108171055A (zh) | 2016-12-08 | 2016-12-08 | 一种远控恶意代码行为触发方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108171055A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1942431A1 (en) * | 2007-01-08 | 2008-07-09 | Apple Inc. | Software or other information integrity verification using variable block length and selection |
CN102750484A (zh) * | 2012-06-28 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 一种防止病毒样本自检的方法及装置 |
CN103221960A (zh) * | 2012-12-10 | 2013-07-24 | 华为技术有限公司 | 恶意代码的检测方法及装置 |
CN105488414A (zh) * | 2015-09-25 | 2016-04-13 | 深圳市安之天信息技术有限公司 | 一种防止恶意代码探测虚拟环境的方法及系统 |
-
2016
- 2016-12-08 CN CN201611122671.0A patent/CN108171055A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1942431A1 (en) * | 2007-01-08 | 2008-07-09 | Apple Inc. | Software or other information integrity verification using variable block length and selection |
CN102750484A (zh) * | 2012-06-28 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 一种防止病毒样本自检的方法及装置 |
CN103221960A (zh) * | 2012-12-10 | 2013-07-24 | 华为技术有限公司 | 恶意代码的检测方法及装置 |
CN105488414A (zh) * | 2015-09-25 | 2016-04-13 | 深圳市安之天信息技术有限公司 | 一种防止恶意代码探测虚拟环境的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866341B (zh) | 一种组件升级方法、装置及终端 | |
US9552275B2 (en) | Mobile development platform in a cloud based architecture | |
RU2611988C2 (ru) | Способ и устройство для отображения иконки | |
US20150242627A1 (en) | Apparatus and method for blocking actvity of malware | |
CN109471768B (zh) | 业务问题的监控方法、装置以及电子设备 | |
CN105204875A (zh) | 网页调用native功能的方法和系统 | |
KR20110128632A (ko) | 스마트폰 응용프로그램의 악성행위 탐지 방법 및 장치 | |
CN104361285A (zh) | 移动设备应用程序的安全检测方法及装置 | |
CN110928770B (zh) | 软件测试的方法、装置、系统、存储介质和电子设备 | |
KR102488582B1 (ko) | 애플리케이션 실행 상태 검증 방법 및 장치 | |
CN104881291A (zh) | 默认浏览器的控制方法、装置及终端 | |
CN110795128A (zh) | 一种程序漏洞修复方法、装置、存储介质及服务器 | |
CN109672553A (zh) | 网关动态配置方法、系统、计算机设备及存储介质 | |
CN111309620A (zh) | 一种游戏协议测试方法、装置、电子设备和存储介质 | |
CN111523097A (zh) | 基于安卓系统的app刷子用户识别方法、设备及存储介质 | |
CN109800030A (zh) | 一种应用程序运行方法、装置及终端 | |
CN103440453A (zh) | 浏览器运行环境检测方法、客户端、服务器及系统 | |
CN112100620B (zh) | 代码安全检测方法、装置、设备和可读存储介质 | |
CN107766068B (zh) | 应用系统补丁安装方法、装置、计算机设备和存储介质 | |
CN104104701A (zh) | 在线服务的配置更新的方法和系统 | |
CN105511273A (zh) | 一种客户端运行管理方法及客户端 | |
CN103824015A (zh) | 应用程序的控制方法、装置和系统 | |
CN108171055A (zh) | 一种远控恶意代码行为触发方法及系统 | |
CN112241529B (zh) | 恶意代码检测方法、装置、存储介质和计算机设备 | |
US20150378710A1 (en) | Patching Auto-Stop |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180615 |