CN113111347A - 一种Android应用的威胁处置方法和安全监测探针 - Google Patents

一种Android应用的威胁处置方法和安全监测探针 Download PDF

Info

Publication number
CN113111347A
CN113111347A CN202110219611.5A CN202110219611A CN113111347A CN 113111347 A CN113111347 A CN 113111347A CN 202110219611 A CN202110219611 A CN 202110219611A CN 113111347 A CN113111347 A CN 113111347A
Authority
CN
China
Prior art keywords
android application
threat
time period
preset time
behavior
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
Application number
CN202110219611.5A
Other languages
English (en)
Inventor
李勇
陈牧
戴造建
陈璐
李尼格
卢子昂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
State Grid Shandong Electric Power Co Ltd
Global Energy Interconnection Research Institute
Original Assignee
State Grid Corp of China SGCC
State Grid Shandong Electric Power Co Ltd
Global Energy Interconnection Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, State Grid Shandong Electric Power Co Ltd, Global Energy Interconnection Research Institute filed Critical State Grid Corp of China SGCC
Priority to CN202110219611.5A priority Critical patent/CN113111347A/zh
Publication of CN113111347A publication Critical patent/CN113111347A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Alarm Systems (AREA)

Abstract

本发明涉及一种Android应用的威胁处置方法和安全监测探针,包括:在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。本发明提供的技术方案,对Android应用环境异常行为和应用敏感行为进行联合监测,进而准确的执行Android应用的威胁处置操作,降低了Android应用存在的安全风险。

Description

一种Android应用的威胁处置方法和安全监测探针
技术领域
本发明涉及电力信息安全和移动互联网安全领域,具体涉及一种Android应用的威胁处置方法和安全监测探针。
背景技术
近年来,随着智能设备的普及和应用,企业传统业务应用都在往移动化方向发展,应用客户端基本都满足兼容支持Android系统,但是由于Android系统的开放性和版本碎片化特征,导致系统的安全机制和平台运营模式存在一定的不足,被发现越来越多的安全漏洞,如Android应用的Web View远程代码执行、证书弱校验和权限提升等安全问题,已成为黑客的攻击热点,严重威胁业务应用运营方的知识产权和数据安全,损害用户利益。
为了提高Android应用安全性,Android应用上线前通常需要进行安全监测和安全加固防护,实现降低应用漏洞影响和被逆向破解的风险,但是由于安全厂商加固技术层次不齐,且缺乏应用运行态安全防护,应用上线运行时,仍然存在被攻击破解、越权使用和敏感数据窃取等安全风险。
针对Android应用运行态监控方案,目前业界已有大量研究,如腾讯的Bugly、基于插件化框架Virtual APP等,但是这些监测方案不满足Android应用安全监测功能要求,或者监测模式也不符合用户体验和设备兼容性的需求。
因此,亟需提供一种新的监控方案解决上述问题。
发明内容
针对现有技术的不足,本发明的目的是提供一种Android应用的威胁处置方法和安全监测探针,该方法对Android应用环境异常行为和应用敏感行为进行联合监测,进而准确的执行Android应用的威胁处置操作,降低了Android应用存在的安全风险。
本发明的目的是采用下述技术方案实现的:
本发明提供一种Android应用的威胁处置方法,其改进之处在于,所述方法包括:
在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
本发明提供一种Android应用的安全监测探针,其改进之处,所述探针包括:
监测模块,用于在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
安全事件判定模块,用于基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
威胁处置模块,用于基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
与最接近的现有技术相比,本发明具有的有益效果:
本发明提供的技术方案,在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。该方案对Android应用环境异常行为和应用敏感行为进行联合监测,进而准确的执行Android应用的威胁处置操作,降低了Android应用存在的安全风险。
本发明提供的技术方案,安全监测探针能根据威胁等级执行忽略、应用弹窗、强制退出和联动断网等处置操作,处置方法有效递进、层次分明,能够实现联动处置,具备较高安全处置能力。
附图说明
图1是一种Android应用的威胁处置方法流程图;
图2是一种Android应用的安全监测探针结构图;
图3是本发明实施例中HOOK攻击框架和监测探针执行逻辑对比图;
图4是本发明实施例中对某Android应用执行威胁处置的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1:
为了提高Android应用安全性,Android应用上线前通常需要进行安全监测和安全加固防护,实现降低应用漏洞影响和被逆向破解的风险,但是由于安全厂商加固技术层次不齐,且缺乏应用运行态安全防护,应用上线运行时,仍然存在被攻击破解、越权使用和敏感数据窃取等安全风险。
针对此问题,本发明提供一种Android应用的威胁处置方法,该Android应用的威胁处置方法的执行主体是以SDK形式提供给Android应用的安全监测探针,在Android应用运行时,安全监测探针能够监测和监听应用存在的运行环境异常和敏感行为等对Android应用构成安全风险的威胁行为,并根据监听到的威胁行为生成威胁行为序列,一旦生成威胁行为序列,探针会基于安全规则列表评估威胁行为序列的风险等级,并执行本地响应处置操作,使应用做出忽略、弹窗提醒、强制退出、断网处置等处置动作,及时中止威胁告警行为,从而实现应用告警监测、处置和溯源的闭环防护能力。通过实验评估分析,该安全监测探针能够监测包括ROOT、模拟器运行、界面截屏、框架攻击和调试注入等威胁行为,适合移动应用安全态势感知和企业应用数据防泄漏等多种应用需求场景。
一种Android应用的威胁处置方法的具体流程如图1所示,包括:
步骤101,在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
步骤102,基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
步骤103,基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
具体的,所述步骤101,包括:
在预设时段内不间断的对Android应用进行异常环境监测,得到预设时段内Android应用的环境异常行为;
其中,所述异常环境监测包括如下一种或多种:
ROOT监测、模拟器监测、敏感配置监测、HTTP/HTTPS劫持监测和攻击框架监测。
在本发明的最佳实施例中,ROOT监测、模拟器监测、敏感配置监测、HTTP/HTTPS劫持监测和攻击框架监测对应的环境异常行为分别为:ROOT运行、模拟器运行、敏感配置异常、存在HTTP/HTTPS劫持和存在攻击框架;
这里认定,对Android应用进行异常环境监测的结果与对Android应用所装载在的智能终端进行异常环境监测的结果一致;
其中,①对智能终端进行ROOT监测,并得到ROOT监测结果,包括:
监测智能终端能否执行su命令、智能终端中/system目录能否被访问以及智能终端当前型号与智能终端出厂型号是否一致;
若智能终端能执行su命令、智能终端中/system目录能被访问或智能终端当前型号与智能终端出厂型号不一致,则ROOT监测结果为智能终端处于root运行;否则,ROOT监测结果为智能终端不处于root运行;
智能终端出厂型号包括:智能终端测试版出厂型号和智能终端正式版出厂型号。
②对智能终端进行模拟器监测,并得到模拟器监测结果,包括:
匹配智能终端的特征信息与已知模拟器的特征信息;
若智能终端的特征信息与已知模拟器的特征信息的相同项超过2项,则模拟器监测结果为智能终端存在模拟器;否则,模拟器监测结果为智能终端不存在模拟器;
其中,特征信息包括IMSI信息、cpu信息、蓝牙配置信息和光传感器配置信息;
所述蓝牙配置信息包括:配置有蓝牙或未配置蓝牙,所述光传感器配置信息包括配置有光传感器或未配置光传感器。
③对智能终端进行敏感配置监测,并得到敏感配置监测结果,包括:
监测智能终端中开发者模式、USB调试模式和位置模拟设置是否开启,以及监测智能终端hosts文件是否被修改;
若智能终端中开发者模式开启、智能终端中USB调试模式开启、智能终端中位置模拟设置开启或智能终端hosts文件被修改,则敏感配置监测结果为敏感配置篡改;否则,敏感配置监测结果为敏感配置设置正常。
④对智能终端进行HTTP/HTTPS劫持监测,并得到HTTP/HTTPS劫持监测结果,包括:
监测智能终端是否开启服务器代理模式和智能终端中根证书文件是否存在变更;
若智能终端开启服务器代理模式或智能终端中根证书文件存在变更,则HTTP/HTTPS劫持监测结果为存在HTTP/HTTPS劫持风险;否则,HTTP/HTTPS劫持监测结果为不存在HTTP/HTTPS劫持风险。
⑤攻击框架监测方式包括已安装应用、进程信息、开放端口三种监测方式;因此对智能终端进行攻击框架监测,并得到攻击框架监测结果,包括:
监测智能终端中已安装应用的应用名称中是否存在形如Xposed与VirtualXposed的攻击框架;
监测智能终端的所有进程的进程名称中是否存在形如frida_server、android_server和gdbserver的攻击框架;
监测智能终端的所有进程的进程信息中是否存在形如hack、inject、hook、call、gdb、ptrace_stop和tracing等被动态调试的关键词;
监测智能终端的所有端口的端口号中是否存在形如27042、23946和31415的端口号;其中,27042为Frida对应的端口号,23946为IDA对应的端口号,31415为drozer对应的端口号;
若任意一个存在,则攻击框架监测结果为Android设备存在攻击框架;否则,攻击框架监测结果为Android设备不存在攻击框架。
具体的,所述步骤101,还包括:
在预设时段内利用HOOK监听技术对Android应用各个敏感行为调用接口进行监听,得到预设时段内Android应用的敏感行为及其操作次数;
其中,所述敏感行为包括如下一种或多种:截屏、复制、粘贴、文件读写、数据库读写和自定义关键函数调用。
在本发明的最佳实施例中,通过在敏感行为代码调用处HOOK执行安全监测探针里的监控函数sand Monitor(),实现对敏感行为调用时间、调用频率等信息进行监测统计。
具体的,所述步骤102,包括:
按下式确定预设时段内Android应用的威胁行为序列V:
V={T1…Ti…TN,(S1,K1)…(Sj,Kj)…(SM,KM)}
式中,Ti为预设时段内Android应用的第i种环境异常行为,i∈(1~N),N为预设时段内Android应用的环境异常行为的种类,Sj为预设时段内Android应用的第j种敏感行为,Kj为预设时段内Android应用的第j种敏感行为的操作次数,j∈(1~M),M预设时段内Android应用敏感行为的种类。
具体的,所述步骤103,包括:
步骤103-1,将预设时段内Android应用的威胁行为序列与安全规则列表进行匹配;
步骤103-2,若安全规则列表中存在与预设时段内Android应用的威胁行为序列匹配的威胁行为序列,则读取安全规则列表中记录的该威胁行为序列的风险等级,并对Android应用执行该风险等级对应的威胁处置;
否则,不操作;
其中,所述安全规则列表包括预先设定的威胁行为序列及其对应的风险等级和威胁处置。
在本发明的最佳实施例中,安全规则列表以加密形式保存在sqlite数据库中,且该数据库内置与安全监测探针中。
另外,安全规则列表中的安全规则是基于专家经验设定时,服务端也可以根据威胁情报变更动态下发安全规则。
进一步的,所述风险等级包括低风险等级、中风险等级和高风险等级;
低风险等级对应的威胁处置为忽略;
中风险等级对应的威胁处置为弹窗提醒;
高风险等级对应的威胁处置包括应用退出和/或联动断网。
再进一步的,所述应用退出和/或联动断网根据用户需求进行预先设置;
当对Android应用执行的威胁处置包括联动断网时,向电力安全接入网关发送断网指令,使电力安全接入网关关闭Android应用网络侧的网络连接。
在本发明的最佳实施例中,该方法是一种非侵入式的威胁处置方法,除了研发过程中需要集成SDK,用户使用过程无感知,不改变待监测应用的用户使用流程和体验。
本发明提供的技术方案,安全监测探针内置的安全规则能够进行动态的更新,其能适应移动互联网场景下不断变化的攻击工具和行为。
本发明提供的技术方案,安全监测探针以轻量型SDK方式供被监测应用集成,是一种非侵入的安全组件,支持Android4.4到Android10以及主流厂商的手机机型,兼容性高。
实施例2:
本发明提供一种Android应用的安全监测探针,如图2所示,所述探针包括:
监测模块,用于在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
安全事件判定模块,用于基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
威胁处置模块,用于基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
优选的,所述探针还包括:
交互接口,用于当威胁处置模块对Android应用执行的威胁处置包括联动断网时,威胁处置模块通过交互接口向电力安全接入网关发送断网指令。
优选的,所述监测模块包括:异常环境监测单元和HOOK监听单元;
所述异常环境监测单元,用于在预设时段内不间断的对Android应用进行异常环境监测,得到预设时段内Android应用的环境异常行为;
所述HOOK监听单元,用于在预设时段内利用HOOK监听技术对Android应用各个敏感行为调用接口进行监听,得到预设时段内Android应用的敏感行为及其操作次数;
其中,所述异常环境监测包括如下一种或多种:
ROOT监测、模拟器监测、敏感配置监测、HTTP/HTTPS劫持监测和攻击框架监测;
所述敏感行为包括如下一种或多种:截屏、复制、粘贴、文件读写、数据库读写和自定义关键函数调用。
在本发明的最佳实施例中,HOOK监听单元通过对被监测应用的敏感行为调用API和调用频度,以便威胁处置模块根据一定的安全规则,判断被监测应用是否有诸如截屏、复制粘贴、文件读写、数据库读写以及应用自定义关键函数等敏感行为的异常调用,并对于异常调用行为进行及时阻止,防止应用敏感信息泄露,保证应用安全。
HOOK监听单元由于不需要到调用敏感行为API处进行埋点,是一种非侵入方式,对集成开发和使用具有高度友好性。
本发明采用基于epic实现一种Method AOP的Java层HOOK监听技术,该HOOK监听技术在Dexposed项目的基础上实现ART虚拟机的HOOK,通过dynamic callee-side rewriting技术,修改原Java方法对应ArtMethod对象代码入口地址的指向,可以使得原Java方法被调用过程中取入口地址的时候拿到的是目标方法的入口地址,进而直接跳转到目标方法的代码段,从而达到Hook的目的,该HOOK监听技术支持Android4.4到Android10版本。
渗透攻击者一般是利用HOOK攻击框架来改变代码执行逻辑,执行构造的恶意脚本函数,本发明使用HOOK监听技术不改变代码执行逻辑,只是在代码调用处HOOK执行探针里的监控函数sandMonitor(),实现对敏感行为调用时间、调用频率等信息进行监测统计,以便进行安全判定和处置。HOOK攻击框架和监测探针执行逻辑对比如图3所示。
优选的,所述安全事件判定模块,用于:
按下式确定预设时段内Android应用的威胁行为序列V:
V={T1…Ti…TN,(S1,K1)…(Sj,Kj)…(SM,KM)}
式中,Ti为预设时段内Android应用的第i种环境异常行为,i∈(1~N),N为预设时段内Android应用的环境异常行为的种类,Sj为预设时段内Android应用的第j种敏感行为,Kj为预设时段内Android应用的第j种敏感行为的操作次数,j∈(1~M),M预设时段内Android应用敏感行为的种类。
在本发明的最佳实施例中,安全事件判定模块在被监测应用进程的一个生命周期里,根据环境监测单元和HOOK监听单元监测的威胁行为,生成对被监测应用构成安全风险的威胁行为序列,以便威胁处置模块结合安全规则,对被监测应用进行实时分析,一旦判定有安全风险,即由威胁处置模块执行处置操作,并将监测告警日志报送到监测服务端。
优选的,所述威胁处置模块,包括:
匹配单元,用于将预设时段内Android应用的威胁行为序列与安全规则列表进行匹配;
威胁处置单元,用于若安全规则列表中存在与预设时段内Android应用的威胁行为序列匹配的威胁行为序列,则读取安全规则列表中记录的该威胁行为序列的风险等级,并对Android应用执行该风险等级对应的威胁处置;否则,不操作;
其中,所述安全规则列表由预先设定的威胁行为序列及其对应的风险等级构成。
在本发明的最佳实施例中,安全规则列表威胁行为序列、风险等级、处置方式三元素构成。不同风险等级对应不同处置方法,对于低风险等级,进行忽略处置,对于中风险等级,使用弹窗提醒进行处置,对于高风险等级,根据用户需求选择,可以选择应用退出和联动断网两种处置方式,或者同时执行两种处置方法,提高威胁处置效果。
安全规则列表以加密形式保存在sqlite数据库,每一条规则由攻击渗透专家经验生成。探针内置默认安全规则,服务端也可以根据威胁情报变更动态下发安全策略。
安全规则列表存储威胁行为和处置方法,安全规则列表中威胁行为序列可以由单条威胁行为构成,也可以由多条威胁行为组合构成,安全规则列表可以为表1所示的形式:
表1
Figure BDA0002954153870000081
进一步的,所述风险等级包括低风险等级、中风险等级和高风险等级;
低风险等级对应的威胁处置为忽略;
中风险等级对应的威胁处置为弹窗提醒;
高风险等级对应的威胁处置包括应用退出和/或联动断网。
进一步的,当对Android应用执行的威胁处置包括联动断网时,向电力安全接入网关发送断网指令,使电力安全接入网关关闭Android应用网络侧的网络连接。
安全监测探针内置的威胁处置包括忽略、弹窗提醒、应用退出和联动断网四种方式。
忽略是指检查当前应用运行环境为低风险告警行为时,在不影响业务应用正常使用情况下,对告警进行忽略处置。
弹窗提醒用于告知用户当前运行环境异常,起到警示作用,防止用户在不知情的情况下,在异常环境运行使用业务应用。
强制退出是在检查当前应用运行环境存在高风险行为时,安全监测探针主动结束当前应用进程,中断威胁行为。
弹窗提醒、强制退出是由安全监测探针自身实现,但是由于这些处置方法都是在客户端执行,具有代码注入绕过处置的可能性。因此,对于高风险威胁行为,可以利用联动断网处置方式,直接由电力安全接入网关在网络侧关闭应用网络连接,实现端云联合处置,提高安全处置能力。
其中,电力安全接入网关是一款高度定制的SSL-VPN产品,能够为移动业务应用的网络接入提供安全认证和加密传输服务,是电力行业应用广泛的安全防护装置。
实施例3:
为验证本发明提供的技术方案的有效性,分别利用本发明提供的方法对某Android应用进行威胁处置和利用传统方法对某Android应用进行威胁处置,并获取两者的威胁处置效果;
所述利用本发明提供的方法对某Android应用进行威胁处置,其流程如图4所示,包括:
初始化生命周期开始时刻,并令各类敏感行为的触发次数均为0;
步骤1:异常环境监测单元监测环境异常行为,如果触发,则记录相应环境异常行为;
步骤2:HOOK监听单元监听被监测应用的敏感行为,如果触发,则记录相应敏感行为并将敏感行为的执行次数加1;
步骤3:根据步骤1和步骤2内结果,生成威胁行为序列;
步骤4:威胁行为序列与安全规列表中的安全规则进行匹配,判断是否有安全事件告警,如果有,则执行步骤5,如果没有,则重复执行1;
步骤5:根据规则库列表中安全规则的风险等级和对应的处置方法,执行威胁处置操作;
步骤6:上报告警监测信息到监测服务端,以便服务端进行进一步关联分析。
其中,异常环境监测单元利用实时监测机制,对应用运行的设备环境进行实时监测,及时发现可疑的配置、应用、进程和调试操作等威胁行为,以便进行进一步的攻击阻止。
异常环境监测单元监测内容如下:
1)ROOT/模拟器环境监测。
ROOT监测是通过是否能执行su命令或者能访问/system等目录权限来判断,另外,为了防止重写定制Android系统,增加对系统版本进行型号,比如判断是否使用测试版本。
模拟器监测通过判断IMSI、cpu信息、蓝牙和光传感器等设备关键特征进行判断,但是现在很多模拟器为了逃避监测,会对一些特征值进行修改,因此模拟器监测会结合多种特征进行综合评判,为了减少误报,通常需要两种及以上特征联合监测来判断,能够监测出Genymotion、Bluestacks和夜神等主流模拟器。
2)设备敏感配置监测。Android设备敏感配置包括开发者模式、USB调试模式、位置模拟设置和hosts文件等,探针通过监测相关配置的修改,并结合其他监测点进行综合分析处置。
3)HTTP/HTTPS劫持监测。HTTPS劫持监测是指利用应用抓包工具实现网络通信劫持,应用抓包工具主要有BurpSuite、Flidder和HttpWatch等工具,为了实现对Android应用的抓包,需要设备设置网络代理模式,去连接抓包工具运行环境开放的WIFI热点,因此首先需要监测设备是否开启服务器代理模式。对于HTTPS连接,为了绕过证书验证,需要在手机中导入抓包工具授权的数字证书,也可以同步监测手机上的根证书文件是否有修改和替换。
4)攻击框架监测。为了对抗攻击框架躲避监测功能,需要使用多种监测方式,防止监测遗漏,提高攻击难度。
攻击框架监测步骤如下:
4)-1:监测已安装应用。通过Android开放的服务管理类和方法PackageManager.getInstalledPackages()查询当前设备已安装应用列表,然后根据应用包名关键词判断是否有安装相应攻击APP,例如Xposed、VirtualXposed等攻击框架。
4)-2:监测进程信息。进程信息监测是通过ps命令遍历当前设备所有进程名,检查是否存在frida_server、android_server、gdbserver等攻击框架二进制服务进程名,这些服务无法通过已安装应用列表来监测。
被监测应用进程信息监测首先获取被监测应用进程pid,然后根据pid值,检索/proc/pid/status、/proc/pid/cmdline、/proc/pid/stat、/proc/pid/wchan、/proc/pid/maps等文件描述中是否有hack|inject|hook|call|gdb|ptrace_stop|tracing等被动态调试的关键词,判断是否动态加载调试代码,实现对应用进程的细粒度监测。
4)-3:监测端口。部分攻击框架需要结合PC机进行命令行调试,通过在手机上启动具有固定端口的socket server服务,在PC机上利用adb forward命令创建PC机端口到手机端口的数据监听转发,因此可以通过监测手机本地启用的TCP端口号特征实现对攻击框架类型的识别,例如Frida的端口27042、IDA的端口23946、drozer的端口31415等。
比较两种方式的处置效果,可以发现本发明提供的技术方案能更好的对Android应用进行安全防护。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (14)

1.一种Android应用的威胁处置方法,其特征在于,所述方法包括:
在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
2.如权利要求1所述的方法,其特征在于,在预设时段内对Android应用进行异常环境监测,得到预设时段内Android应用的环境异常行为,包括:
在预设时段内不间断的对Android应用进行异常环境监测,得到预设时段内Android应用的环境异常行为;
其中,所述异常环境监测包括如下一种或多种:
ROOT监测、模拟器监测、敏感配置监测、HTTP/HTTPS劫持监测和攻击框架监测。
3.如权利要求1所述的方法,其特征在于,在预设时段内对Android应用进行HOOK监听,得到预设时段内Android应用的敏感行为,包括:
在预设时段内利用HOOK监听技术对Android应用各个敏感行为调用接口进行监听,得到预设时段内Android应用的敏感行为及其操作次数;
其中,所述敏感行为包括如下一种或多种:截屏、复制、粘贴、文件读写、数据库读写和自定义关键函数调用。
4.如权利要求1所述的方法,其特征在于,所述基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列,包括:
按下式确定预设时段内Android应用的威胁行为序列V:
V={T1…Ti…TN,(S1,K1)…(Sj,Kj)…(SM,KM)}
式中,Ti为预设时段内Android应用的第i种环境异常行为,i∈(1~N),N为预设时段内Android应用的环境异常行为的种类,Sj为预设时段内Android应用的第j种敏感行为,Kj为预设时段内Android应用的第j种敏感行为的操作次数,j∈(1~M),M预设时段内Android应用敏感行为的种类。
5.如权利要求1所述的方法,其特征在于,所述基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置,包括:
将预设时段内Android应用的威胁行为序列与安全规则列表进行匹配;
若安全规则列表中存在与预设时段内Android应用的威胁行为序列匹配的威胁行为序列,则读取安全规则列表中记录的该威胁行为序列的风险等级,并对Android应用执行该风险等级对应的威胁处置;
否则,不操作;
其中,所述安全规则列表包括预先设定的威胁行为序列及其对应的风险等级和威胁处置。
6.如权利要求5所述的方法,其特征在于,所述风险等级包括低风险等级、中风险等级和高风险等级;
低风险等级对应的威胁处置为忽略;
中风险等级对应的威胁处置为弹窗提醒;
高风险等级对应的威胁处置包括应用退出和/或联动断网。
7.如权利要求6所述的方法,其特征在于,所述应用退出和/或联动断网根据用户需求进行预先设置;
当对Android应用执行的威胁处置包括联动断网时,向电力安全接入网关发送断网指令,使电力安全接入网关关闭Android应用网络侧的网络连接。
8.一种Android应用的安全监测探针,其特征在于,所述探针包括:
监测模块,用于在预设时段内对Android应用进行异常环境监测和HOOK监听,对应得到预设时段内Android应用的环境异常行为和敏感行为;
安全事件判定模块,用于基于预设时段内Android应用的环境异常行为和敏感行为生成预设时段内Android应用的威胁行为序列;
威胁处置模块,用于基于预设时段内Android应用的威胁行为序列,对Android应用进行威胁处置。
9.如权利要求8所述的探针,其特征在于,所述探针还包括:
交互接口,用于当威胁处置模块对Android应用执行的威胁处置包括联动断网时,威胁处置模块通过交互接口向电力安全接入网关发送断网指令。
10.如权利要求8所述的探针,其特征在于,所述监测模块包括:异常环境监测单元和HOOK监听单元;
所述异常环境监测单元,用于在预设时段内不间断的对Android应用进行异常环境监测,得到预设时段内Android应用的环境异常行为;
所述HOOK监听单元,用于在预设时段内利用HOOK监听技术对Android应用各个敏感行为调用接口进行监听,得到预设时段内Android应用的敏感行为及其操作次数;
其中,所述异常环境监测包括如下一种或多种:
ROOT监测、模拟器监测、敏感配置监测、HTTP/HTTPS劫持监测和攻击框架监测;
所述敏感行为包括如下一种或多种:截屏、复制、粘贴、文件读写、数据库读写和自定义关键函数调用。
11.如权利要求8所述的探针,其特征在于,所述安全事件判定模块,用于:
按下式确定预设时段内Android应用的威胁行为序列V:
V={T1…Ti…TN,(S1,K1)…(Sj,Kj)…(SM,KM)}
式中,Ti为预设时段内Android应用的第i种环境异常行为,i∈(1~N),N为预设时段内Android应用的环境异常行为的种类,Sj为预设时段内Android应用的第j种敏感行为,Kj为预设时段内Android应用的第j种敏感行为的操作次数,j∈(1~M),M预设时段内Android应用敏感行为的种类。
12.如权利要求8所述的探针,其特征在于,所述威胁处置模块,包括:
匹配单元,用于将预设时段内Android应用的威胁行为序列与安全规则列表进行匹配;
威胁处置单元,用于若安全规则列表中存在与预设时段内Android应用的威胁行为序列匹配的威胁行为序列,则读取安全规则列表中记录的该威胁行为序列的风险等级,并对Android应用执行该风险等级对应的威胁处置;
否则,不操作;
其中,所述安全规则列表由预先设定的威胁行为序列及其对应的风险等级构成。
13.如权利要求12所述的探针,其特征在于,所述风险等级包括低风险等级、中风险等级和高风险等级;
低风险等级对应的威胁处置为忽略;
中风险等级对应的威胁处置为弹窗提醒;
高风险等级对应的威胁处置包括应用退出和/或联动断网。
14.如权利要求13所述的探针,其特征在于,当对Android应用执行的威胁处置包括联动断网时,向电力安全接入网关发送断网指令,使电力安全接入网关关闭Android应用网络侧的网络连接。
CN202110219611.5A 2021-02-26 2021-02-26 一种Android应用的威胁处置方法和安全监测探针 Pending CN113111347A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110219611.5A CN113111347A (zh) 2021-02-26 2021-02-26 一种Android应用的威胁处置方法和安全监测探针

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110219611.5A CN113111347A (zh) 2021-02-26 2021-02-26 一种Android应用的威胁处置方法和安全监测探针

Publications (1)

Publication Number Publication Date
CN113111347A true CN113111347A (zh) 2021-07-13

Family

ID=76709501

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110219611.5A Pending CN113111347A (zh) 2021-02-26 2021-02-26 一种Android应用的威胁处置方法和安全监测探针

Country Status (1)

Country Link
CN (1) CN113111347A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113779578A (zh) * 2021-09-13 2021-12-10 支付宝(杭州)信息技术有限公司 移动端应用的智能混淆方法和系统
CN116107912A (zh) * 2023-04-07 2023-05-12 石家庄学院 一种基于应用软件的安全检测方法及系统
CN116126427A (zh) * 2023-04-14 2023-05-16 杭州比智科技有限公司 基于面向切面编程的无侵入sdk辅助集成插件的实现方法
CN116760646A (zh) * 2023-08-22 2023-09-15 中信消费金融有限公司 登录处理方法、装置、服务器及可读存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113779578A (zh) * 2021-09-13 2021-12-10 支付宝(杭州)信息技术有限公司 移动端应用的智能混淆方法和系统
CN113779578B (zh) * 2021-09-13 2024-01-19 支付宝(杭州)信息技术有限公司 移动端应用的智能混淆方法和系统
CN116107912A (zh) * 2023-04-07 2023-05-12 石家庄学院 一种基于应用软件的安全检测方法及系统
CN116126427A (zh) * 2023-04-14 2023-05-16 杭州比智科技有限公司 基于面向切面编程的无侵入sdk辅助集成插件的实现方法
CN116126427B (zh) * 2023-04-14 2023-07-18 杭州比智科技有限公司 基于面向切面编程的无侵入sdk辅助集成插件的实现方法
CN116760646A (zh) * 2023-08-22 2023-09-15 中信消费金融有限公司 登录处理方法、装置、服务器及可读存储介质
CN116760646B (zh) * 2023-08-22 2023-10-31 中信消费金融有限公司 登录处理方法、装置、服务器及可读存储介质

Similar Documents

Publication Publication Date Title
Milajerdi et al. Holmes: real-time apt detection through correlation of suspicious information flows
US10623440B2 (en) Method and system for protecting web applications against web attacks
CN113111347A (zh) 一种Android应用的威胁处置方法和安全监测探针
Shabtai et al. Intrusion detection for mobile devices using the knowledge-based, temporal abstraction method
CN112685737A (zh) 一种app的检测方法、装置、设备及存储介质
US11411965B2 (en) Method and system of attack detection and protection in computer systems
Berthome et al. Repackaging android applications for auditing access to private data
CN112787992A (zh) 一种敏感数据的检测与防护的方法、装置、设备和介质
Xu et al. Delay-CJ: A novel cryptojacking covert attack method based on delayed strategy and its detection
CN113177205B (zh) 一种恶意应用检测系统及方法
Mylonas et al. On the feasibility of malware attacks in smartphone platforms
Schmidt Detection of smartphone malware
Skovoroda et al. Securing mobile devices: malware mitigation methods.
Gheorghe et al. Smart malware detection on Android
Saad et al. Android spyware disease and medication
Kandukuru et al. Android malicious application detection using permission vector and network traffic analysis
CN115640572A (zh) 一种iPhone端沙盒应用的安全检测与加固方法
Zhang et al. How your phone camera can be used to stealthily spy on you: Transplantation attacks against android camera service
Vigna et al. Host-based intrusion detection
Becher et al. Towards dynamic malware analysis to increase mobile device security
Jeong et al. SafeGuard: a behavior based real-time malware detection scheme for mobile multimedia applications in android platform
TWI711939B (zh) 用於惡意程式碼檢測之系統及方法
Chang et al. Vulnerable service invocation and countermeasures
Patel et al. Malware Detection Using Yara Rules in SIEM
Tiwari et al. Detection and deterrence from data collecting applications in Android

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