CN104200155A - 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法 - Google Patents

基于苹果手机操作系统iOS保护用户隐私的监测装置和方法 Download PDF

Info

Publication number
CN104200155A
CN104200155A CN201410393460.5A CN201410393460A CN104200155A CN 104200155 A CN104200155 A CN 104200155A CN 201410393460 A CN201410393460 A CN 201410393460A CN 104200155 A CN104200155 A CN 104200155A
Authority
CN
China
Prior art keywords
app
module
user
privacy
software
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
CN201410393460.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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201410393460.5A priority Critical patent/CN104200155A/zh
Publication of CN104200155A publication Critical patent/CN104200155A/zh
Pending legal-status Critical Current

Links

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/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • 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

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)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

一种基于苹果手机操作系统iOS保护用户隐私的监测装置和方法,本发明监测装置设有:应用采集单元、应用分析检测单元和信息管理单元三个组成部件,能够用于对应用程序软件APP是否可能泄漏用户的隐私(包括:联系人信息,手机电话号码及其位置,短信,用户账号,密码、通话记录、照片、书签及历史记录、电子邮箱帐号及其内容等)进行监测与预警,提示用户软件潜在的风险,并将监测结果进行存储并分析,然后根据软件安全等级研究算法为该应用程序进行软件安全级别的评定。该装置结构简单、设计巧妙、且操作步骤便利、易学,容易掌握,使用安全,是一项具有推广应用前景的手机安全监测装置。

Description

基于苹果手机操作系统iOS保护用户隐私的监测装置和方法
技术领域
本发明涉及一种基于苹果手机操作系统的用户隐私监测装置和监测方法,确切地说,涉及一种自动对苹果手机操作系统iOS(iPhone Operating System)应用程序进行用户隐私检测的装置和方法,用于实时监控可能泄漏用户隐私的iOS应用软件,属于移动应用安全监测的技术领域。
背景技术
随着移动智能设备的普及和硬件性能的不断提升,移动智能终端越来越多地被用来处理各种重要的数据信息。然而,随之而来的是与移动智能终端紧密相连的大量新型的安全问题。这些安全问题包括隐私泄漏、手机木马病毒等等。在2011年,出现了iPhone记录位置信息,英国“窃听门”等智能终端安全事件,因此手机的安全直接影响到个人的隐私和财产等诸多方面。
为了保证用户安全,苹果iOS设计了自己的一套安全机制:
1)可信引导:系统的启动是从引导程序开始,载入固件,再由固件启动系统。固件通过RSA(Rivest-Shamir-Adleman)签名,只有通过验证才能执行下一步操作,系统还经过固件验证。这样,系统以引导程序为根建立一条信任链。
2)程序签名:iOS中应用程序的二进制文件格式为Mach-O(Mach-Object)格式文件,这种文件格式支持加密与签名,目录结构通过SHA-1哈希存储在内存中,目录和应用商店(App Store)中的软件都需要经过数字签名。
3)沙盒(SandBox):苹果手机iPhone用SandBox来隔离应用程序,并限制进程对文件系统的访问。每个应用程序都有自己的存储空间,iOS应用程序只能在为该程序创建的文件系统中读取文件,不可以访问其它地方。应用程序请求的数据都要通过权限检测,假如不符合条件的话,就不会被放行。
4)内存地址布局随机化ASLR(Address space layout randomization):这是一种针对缓冲区溢出的安全保护技术,通过对堆栈、共享存储区、共享库映射等线性区域布局的随机化,通过增加攻击者预测地址的难度,防止攻击者直接定位攻击代码位置,达到阻止攻击的目的。
5)密钥链与数据保护:用密码、证书、密钥通过轻量级数据库(Sqlite)存储,数据再通过这些密钥加密存储,使得数据库具有严格的访问控制。
但是,尽管iOS处于上述多种安全体制的保护,仍然存在很多安全隐患。例如:
(1)手机隐私泄露:苹果公司主要依靠自己的软件审查机制来保证iOS平台上软件的安全性,只有通过审查的应用程序才能够发布到App Store上,严格的检查将恶意程序阻止在系统之外。但是,由于苹果的审查过程和方法并不对外公开,用户无法完全信任苹果的这套机制是否能够确保用户数据的安全。加之数以百万计的越狱手机并不只是从App Store下载应用程序,而非苹果官方的应用商店几乎不会对上面的应用做任何严格细致的检查,甚至有些公司通过窃取用户隐私信息来为自己谋利。这样隐私泄露就成为移动应用领域的普遍现象,严重威胁了用户的数据安全。
(2)手机数据安全泄露:iOS应用对用户隐私数据进行加密的情况非常少见,而地理位置跟踪与用户私密信息访问又是如此的普遍。也就是说,恶意软件可以轻松地获取用户的隐私数据(包括通信记录,用户账号和密码等),并将其发送到指定服务器。因此,要想保证用户数据的安全将变得非常困难,这对iPhone手机用户的隐私与个人信息安全造成了严重威胁。目前,iOS系统及其应用的安全研究工作非常匮乏,对iOS平台恶意软件的检测方法与安全评估系统至今仍然为空白。
最近几年,人们才开始对iOS平台软件的安全性进行集中研究。相关的研究课题主要分为以下几类:
第一类是分析系统安全机制:在2010年HITB安全会议上,Cedric Halbronn分析iPhone的安全模型及其存在的缺陷,指出iPhone的安全机制主要包括引导过程、应用程序的签名和用秘钥链保护数据。他还给出了对引导代码的攻击方案及浏览器攻击方案。
第二类是分析和研究智能手机上的应用程序安全性:其中最令人瞩目的是在2011年发表于网络与分布式系统安全研讨会NDSS(Network&DistributedSystem Security Symposium)的关于iOS应用程序隐私泄露问题的研究工作。他们提出了一个对iOS上应用程序的分析工具,用来从面向对象C(Objective-C)二进制代码重建控制流图的方法,以克服静态分析Objective-C无法正确还原消息传递部分逻辑的困难。但是,该方法存在很高的误判率,并未得到广泛使用。
第三类是在智能手机上做电子取证。然而,由于iOS的系统信息很少公开,并且系统本身不断的升级更新,其取证难度也不断增大。
由此看出,目前国内外在iOS平台软件的安全性研究还不够充分,都存在提升和改进的空间。同时,国内对iOS平台安全性的研究基本上属于空白,也没有看到关于对iOS软件安全性分析的研究与相关产品。
发明内容
有鉴于此,本发明的目的是提供一种基于苹果手机操作系统iOS保护用户隐私的监测装置和方法,本发明监测装置对应用程序软件是否可能泄漏用户的隐私(如联系人信息,电话号码,短信,用户账号,密码等)进行监测与预警,提示用户软件潜在的风险,并将监测结果进行存储并分析,然后根据软件安全等级研究算法为该应用程序进行软件安全级别的评定。
为了达到上述目的,本发明提供了一种基于苹果手机操作系统iOS保护用户隐私的监测方法,其特征在于,该装置设有:应用采集单元、应用分析检测单元和信息管理单元三个组成部件,其中:
应用采集单元,用于自动下载iPhone操作系统iOS软件源中的最新或常用的应用软件APP(APPlication),或者接收检测机构或个人送来的待检测的APP,并将其送入软件获取模块,然后将下载或接收的APP存储于数据库,设有软件获取模块和数据库两个组成模块;
应用分析检测单元,用于对来自应用采集单元的待检测的iOS应用软件APP进行解密与分析,并将包括静态和动态的两种分析结果分别存储到分析结果存储模块;设有二进制文件解密模块、静态分析模块、动态分析模块和分析结果存储模块共四个组成模块;
信息管理单元,用于对分析后的iOS应用软件APP进行管理:将分析后的APP进行分类入库,对入库的iOS应用软件APP评定其安全级别;设有iOS软件管理模块和安全级别分析记录模块两个组成模块;
为了达到上述目的,本发明还提供了一种采用本发明基于苹果手机操作系统iOS保护用户隐私的监测装置的监测方法,其特征在于,所述方法包括下列操作步骤:
步骤1,应用采集单元中的软件获取模块从自动下载的iPhone操作系统iOS软件源中获取最新或常用的应用软件APP作为待检测软件APP,或者接收来自检测机构或个人送来的待检测应用软件的APP,并将其存在数据库模块中,再传送给应用分析检测单元;
步骤2,应用分析检测单元中的二进制文件解密模块接收待检测应用软件APP后,对该APP进行二进制文件解密操作:先确定iOS应用程序可执行文件Mach-O的加密段在内存中的位置及其大小后,再利用程序调试工具gdb导出加密段,并替换为原二进制文件,最后重新打包为苹果手机的应用程序ipa文件;
步骤3,静态分析模块利用扫描工具对解密后的二进制文件进行扫描,对该二进制文件进行静态分析,分析其是否调用可疑的API;若调用,则执行后续步骤4;否则,结束该监测流程;
步骤4,静态分析模块对获取的可能泄漏用户隐私的API与本地可疑的API库进行比对,查找是否有泄露的客户隐私信息;若没有泄露用户隐私,则跳转执行步骤6,即由分析结果存储模块保存检测结果;若存在泄露的用户隐私,则调用该泄露用户隐私的API后,顺序执行步骤5;
步骤5,动态分析模块对来自静态分析模块中调用该泄露用户隐私的API进行动态分析:先调用该泄露用户隐私的APP加载到iOS真实设备上并运行APP,利用苹果应用程序调试框架MobileSubstrate跟踪该可疑的API,并对泄露的用户隐私信息打上标签Tag,使得传播过程中,用户隐私信息连同该标签一起在程序内部传播,当用户隐私信息通过互联网internet或其他途径发送出去时,能够被检测与查找到;
步骤6,信息管理单元负责存储动态分析模块和静态分析模块的分析结果,并对该分析后的iOS应用软件APP进行管理,以及记录泄露的用户隐私信息检测结果;然后,安全级别分析记录模块对分析后的APP进行分类入库,并对入库的应用软件APP评定其安全等级。
本发明创新优点是:作为一种自动对苹果手机操作系统iOS进行用户隐私监测的装置,不仅能对应用程序软件APP自动进行静态分析,同时还能对其进行动态分析,并且对分析的结果分类入库,评定每个应用软件APP的安全等级。
该监测装置的结构简单、设计巧妙、成本低廉,而且,其操作步骤简便易学,容易掌握,且使用安全,是一项具有推广应用前景的手机安全监测装置。
附图说明
图1是本发明基于苹果手机iPhone操作系统iOS保护用户隐私的监测装置组成结构示意图。
图2是本发明基于苹果手机iPhone操作系统iOS保护用户隐私的监测装置的检测方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
参照图1,介绍本发明基于苹果手机操作系统iOS保护用户隐私的监测装置的组成结构:设有应用采集单元、应用分析检测单元和信息管理单元共三个部件。其中:
(A)应用采集单元:用于自动下载iPhone操作系统iOS软件源中的最新或常用的应用软件APP(APPlication),或者接收检测机构或个人送来的待检测的APP,并将其送入软件获取模块,然后将下载或接收的APP存储于数据库,设有软件获取模块和数据库两个组成模块。这两个组成模块的功能如下:
软件获取模块,负责获取苹果手机iPhone操作系统iOS软件源中的应用APP,以供后续模块对其进行检测:既能自动下载iPhone操作系统iOS软件源中的最新或常用的APP,也能接收检测机构或个人送来的待检测的APP;只是对下载的APP先要解密,而对其它来源的APP无需解密,然后将获取到的APP发送给数据库模块。
数据库模块,用来存储来自软件获取模块的待检测的APP,并将准备检测的APP传送给应用分析检测单元中的二进制文件解密模块。
(B)应用分析检测单元:用于对来自应用采集单元的待检测的iOS应用软件APP进行解密与分析,并将包括静态和动态的两种分析结果分别存储到分析结果存储模块;设有二进制文件解密模块、静态分析模块、动态分析模块和分析结果存储模块共四个组成模块。该单元的四个组成模块的功能如下:
二进制文件解密模块,负责接收待检测的iOS应用软件,并把其中待检测的iOS应用程序可执行文件加载到内存,确定加密段的大小和位置,利用一种程序调试工具gdb(GNU Debuger)完成解密操作:先导出该加密段,并替换为原二进制文件后,重新打包为苹果手机的应用程序ipa文件(iPhoneApplication);然后将已解密的二进制文件传送给静态分析模块。
静态分析模块,负责利用扫描工具扫描已解密的二进制binary文件,分析该binary文件的程序应用APP是否调用了能够获取用户隐私的应用程序编程接口API(Application Programming Interface),并将其调用的API与本地可疑的API库进行比对,以确定该APP是否泄漏用户隐私;再将该静态分析模块完成静态分析后,所调用的携带有用户隐私的binary文件发送给动态分析模块,同时给分析结果存储模块发送其分析结果。
动态分析模块,负责接收并存储来自静态分析模块的、携带有用户隐私的binary文件,再在iOS真实设备上运行被检测的APP并实时跟踪其运行,然后将该被检测的APP泄漏内容与已存储的、带有用户隐私的binary文件进行比对,若两者吻合,说明存在用户隐私泄漏,则记录相应信息并存储于数据库中;否则,说明没有泄漏用户隐私;最后,将检测分析结果发送给分析结果存储模块。
分析结果存储模块,负责存储来自两个分析模块对待检测的iOS应用软件APP进行静态分析和动态分析的结果,再把该分析结果传送给信息管理单元中的iOS软件管理模块。
(C)信息管理单元:用于对分析后的iOS应用软件APP进行管理:将分析后的APP进行分类入库,对入库的iOS应用软件APP评定其安全级别;设有iOS软件管理模块和安全级别分析记录模块两个组成模块。该信息管理单元的两个组成模块的功能如下:
iOS软件管理模块,负责对分析后的iOS应用软件APP进行管理,并对泄露的用户隐私进行分类,将分类后的用户隐私传递给安全级别分析记录模块进行处理;
安全级别分析记录模块,负责对传送来的用户隐私采用设定的评分算法分析其泄露的严重程度,该评分算法将每个目标应用程序按照用户隐私泄露的严重程度分为多个等级,并计算其总分值作为该应用软件APP的安全性评估值;然后将分析结果进行存储,以供用户读取。
参见图2,介绍本发明基于苹果手机操作系统iOS保护用户隐私的监测装置的监测方法的具体操作步骤:
步骤1,应用采集单元中的软件获取模块从自动下载的iPhone操作系统iOS软件源中获取最新或常用的应用软件APP作为待检测软件APP,或者接收来自检测机构或个人送来的待检测应用软件的APP,并将该两者存在数据库模块中,再传送给应用分析检测单元。
该步骤1中,软件获取模块自动下载的iPhone操作系统iOS软件源是苹果官方软件源app store,其拥有数量最多并经由苹果签名认证的APP。而检测机构或个人送来的待检测应用软件APP包括存在于越狱手机中的苹果蠹cydia,其包括有BigBoss、Dev Team、ZodTTd和MacCiti的多个默认软件源,以及由91、搜狗或其他移动软件公司或组织推出的软件源。
步骤2,应用分析检测单元中的二进制文件解密模块接收待检测应用软件APP后,对该APP进行二进制文件解密操作:先确定iOS应用程序可执行文件Mach-O的加密段在内存中的位置及其大小后,再利用程序调试工具gdb导出加密段,并替换为原二进制文件,最后重新打包为苹果手机的应用程序ipa文件。该步骤2包括下列操作内容:
(21)使用程序调试工具otool查看该iPhone官方文件的文件分配表FAT(File Allocation Table)信息:因iPhone移动终端的中央处理器CPU(CentralProcessing Unit)有两种架构:ARMv6和ARMv7,不同体系结构的CPU所对应的Mach-O文件格式不同,故先要确定其类型,才能选择相应的检测方法。
(22)提取加密信息:首先提取该官方文件的代码,通过查看代码和查看代码段的加密信息,定位代码段text段的起始地址与加载地址,然后加载binary解密,用于替换该加密代码段,最后修改加密标志位。
步骤3,静态分析模块利用扫描工具对解密后的二进制文件进行扫描,对该二进制文件进行静态分析,分析其是否调用可疑的API;若调用,则执行后续步骤4;否则,结束该监测流程。该步骤3包括下列操作内容:
(31)静态分析模块使用二进制扫描工具对解密的二进制文件代码进行扫描,查看Mach-O文件结构中的三个区域:头部、载入命令区和原始段数据。其中,头部和载入命令区用于描述文件功能、布局和其他特性;原始段数据包含由载入命令引用的字节序列,用于查看头部的包括CPU类型cputype和CPU子类型cpusubtype等信息,从而能够获知可疑的API和调用栈。
(32)判断该二进制文件是否调用可疑的API,若调用,则执行后续步骤(33);否则,将检测结果送至分析结果存储模块,结束该监测流程。
(33)利用该可疑的API对原始段数据进行扫描,查看是否存在包括联系人、手机号码及其位置、短信、通话记录、照片、书签及历史记录、电子邮箱帐号及其内容、设备唯一标识符UDID(Unique Device Identifier)、国际移动用户识别码IMSI(International Mobile Subscriber Identification Number)、包括QQ、MSN和微信的即时通讯信息和社交信息的各种用户隐私信息;再将检测结果送至分析结果存储模块处理。
步骤4,静态分析模块对获取的可能泄漏用户隐私的API与本地可疑的API库进行比对,查找是否有泄露的客户隐私信息;若没有泄露用户隐私,则跳转执行步骤6,即由分析结果存储模块保存检测结果;若存在泄露的用户隐私,则调用该泄露用户隐私的API后,顺序执行步骤5;
步骤5,动态分析模块对来自静态分析模块中调用该泄露用户隐私的API进行动态分析:先调用该泄露用户隐私的APP加载到iOS真实设备上并运行APP,利用苹果应用程序调试框架MobileSubstrate跟踪该可疑的API,并对泄露的用户隐私信息打上标签Tag,使得传播过程中,用户隐私信息连同该标签一起在程序内部传播,当用户隐私信息通过互联网internet或其他途径发送出去时,能够被检测与查找到。该步骤5包括下列操作内容:
(51)动态分析模块将调用用户隐私信息的APP加载到iOS真实设备并运行之:利用苹果开发环境的自动化Automation工具执行下述操作:APP控件自动触发和用JavaScript驱动在程序应用上模拟用户;其触发方式为下述一种或多种:
(a)随机触发:设定触发间隔时间(如每秒间隔触发一次),随机生成触控消息;
(b)控件遍历:遍历视图上的所有控件、捕获界面元素树elementTree和触发elementTree中所有控件的;
(c)手工触发:由于自动化触发存在某些软件需要注册或需要输入账号密码、登录设定服务器的app的不同缺陷、因而只能采用人工触发。
(52)利用苹果应用程序调试框架MobileSubstrate对该可疑的API实现动态跟踪:因MobileSubstrate框架允许第三方开发者在操作系统运行过程中,增添一个或多个补丁和扩展方法来替换内存中调用的库和代码。
MobileSubstrate框架包括三个组成部件:移动挂钩器MobileHooker、移动加载器MobileLoader和安全模safe mode,故动态分析模块利用该MobileHooker执行跟踪操作,用于替换并覆盖该可疑的API。此时跟踪操作的具体过程如下:
(52A)在跟踪静态分析时关注的、能获取用户隐私的可疑的API时,对用户隐私信息打上设定标签Tag,以使该用户隐私信息在传播过程中,连同该标签一起在程序内部传播,从而当用户隐私信息通过internet或其他途径发送出去时,就能够被识别出来。
(52B)对包括open、socket和mkdir的关键的c函数系统调用进行跟踪,以便进一步在底层监控应用程序的操作行为。
藉由上述两个跟踪操作,能够将应用软件APP的全部操作行为都记录备案。
步骤6,信息管理单元负责存储动态分析模块和静态分析模块的分析结果,并对该分析后的iOS应用软件APP进行管理,以及记录泄露的用户隐私信息检测结果;然后,安全级别分析记录模块对分析后的APP进行分类入库,并对入库的应用软件APP评定其安全等级。该步骤6中的软件安全等级评定是采用评分算法评定每个软件的安全等级:先将每个目标应用程序按照泄露的用户隐私信息严重程度分为多个等级,再对每个软件APP计算其总分值来判断该APP的安全性能及其所归属的等级。
本发明已经进行了多次实施试验,试验的结果是成功的,实现了发明目的。

Claims (10)

1.一种基于苹果手机操作系统iOS保护用户隐私的监测装置,其特征在于,该装置设有:应用采集单元、应用分析检测单元和信息管理单元三个组成部件,其中:
应用采集单元,用于自动下载iPhone操作系统iOS软件源中的最新或常用的应用软件APP(APPlication),或者接收检测机构或个人送来的待检测的APP,并将其送入软件获取模块,然后将下载或接收的APP存储于数据库,设有软件获取模块和数据库两个组成模块;
应用分析检测单元,用于对来自应用采集单元的待检测的iOS应用软件APP进行解密与分析,并将包括静态和动态的两种分析结果分别存储到分析结果存储模块;设有二进制文件解密模块、静态分析模块、动态分析模块和分析结果存储模块共四个组成模块;
信息管理单元,用于对分析后的iOS应用软件APP进行管理:将分析后的APP进行分类入库,对入库的iOS应用软件APP评定其安全级别;设有iOS软件管理模块和安全级别分析记录模块两个组成模块。
2.根据权利要求1所述的装置,其特征在于:所述应用采集单元两个组成模块的功能如下:
软件获取模块,负责获取苹果手机iPhone操作系统iOS软件源中的APP,以供后续模块对其进行检测:既能自动下载iPhone操作系统iOS软件源中的最新或常用的APP,也能接收检测机构或个人送来的待检测的APP;只是对下载的APP先要解密,而对其它来源的APP无需解密,然后将获取到的APP发送给数据库模块;
数据库模块,用来存储来自软件获取模块的待检测的APP,并将准备检测的APP传送给应用分析检测单元中的二进制文件解密模块。
3.根据权利要求1所述的装置,其特征在于:所述应用分析检测单元四个组成模块的功能如下:
二进制文件解密模块,负责接收待检测的iOS应用软件,并把其中待检测的iOS应用程序可执行文件加载到内存,确定加密段的大小和位置,利用程序调试工具gdb(GNU Debuger)完成解密操作:先导出该加密段,并替换为原二进制文件后,重新打包为苹果手机的应用程序ipa文件(iPhone Application);然后将已解密的二进制文件传送给静态分析模块;
静态分析模块,负责利用扫描工具扫描已解密的二进制binary文件,分析该binary文件的程序应用APP是否调用了能够获取用户隐私的应用程序编程接口API(Application Programming Interface),并将其调用的API与本地可疑的API库进行比对,以确定该APP是否泄漏用户隐私;再将该静态分析模块完成静态分析后,所调用的携带有用户隐私的binary文件发送给动态分析模块,同时给分析结果存储模块发送其分析结果;
动态分析模块,负责接收并存储来自静态分析模块的、携带有用户隐私的binary文件,再在iOS真实设备上运行被检测的APP并实时跟踪其运行,然后将该被检测的APP泄漏内容与已存储的、带有用户隐私的binary文件进行比对,若两者吻合,说明存在用户隐私泄漏,则记录相应信息并存储于数据库中;否则,说明没有泄漏用户隐私;最后,将检测分析结果发送给分析结果存储模块;
分析结果存储模块,负责存储来自两个分析模块对待检测的iOS应用软件APP进行静态分析和动态分析的结果,再把该分析结果传送给信息管理单元中的iOS软件管理模块。
4.根据权利要求1所述的装置,其特征在于:所述信息管理单元两个组成模块的功能如下:
iOS软件管理模块,负责对分析后的iOS应用软件APP进行管理,并对泄露的用户隐私进行分类,将分类后的用户隐私传递给安全级别分析记录模块进行处理;
安全级别分析记录模块,负责对传送来的用户隐私采用设定的评分算法分析其泄露的严重程度,该评分算法将每个目标应用程序按照用户隐私泄露的严重程度分为多个等级,并计算其总分值作为该应用软件APP的安全性评估值;然后将分析结果进行存储,以供用户读取。
5.一种采用权利要求1所述的基于苹果手机操作系统iOS保护用户隐私的监测装置的监测方法,其特征在于,所述方法包括下列操作步骤:
步骤1,应用采集单元中的软件获取模块从自动下载的iPhone操作系统iOS软件源中获取最新或常用的应用软件APP作为待检测软件APP,或者接收来自检测机构或个人送来的待检测应用软件的APP,并将其存在数据库模块中,再传送给应用分析检测单元;
步骤2,应用分析检测单元中的二进制文件解密模块接收待检测应用软件APP后,对该APP进行二进制文件解密操作:先确定iOS应用程序可执行文件Mach-O的加密段在内存中的位置及其大小后,再利用程序调试工具gdb导出加密段,并替换为原二进制文件,最后重新打包为苹果手机的应用程序ipa文件;
步骤3,静态分析模块利用扫描工具对解密后的二进制文件进行扫描,对该二进制文件进行静态分析,分析其是否调用可疑的API;若调用,则执行后续步骤4;否则,结束该监测流程;
步骤4,静态分析模块对获取的可能泄漏用户隐私的API与本地可疑的API库进行比对,查找是否有泄露的客户隐私信息;若没有泄露用户隐私,则跳转执行步骤6,即由分析结果存储模块保存检测结果;若存在泄露的用户隐私,则调用该泄露用户隐私的API后,顺序执行步骤5;
步骤5,动态分析模块对来自静态分析模块中调用该泄露用户隐私的API进行动态分析:先调用该泄露用户隐私的APP加载到iOS真实设备上并运行APP,利用苹果应用程序调试框架MobileSubstrate跟踪该可疑的API,并对泄露的用户隐私信息打上标签Tag,使得传播过程中,用户隐私信息连同该标签一起在程序内部传播,当用户隐私信息通过互联网internet或其他途径发送出去时,能够被检测与查找到;
步骤6,信息管理单元负责存储动态分析模块和静态分析模块的分析结果,并对该分析后的iOS应用软件APP进行管理,以及记录泄露的用户隐私信息检测结果;然后,安全级别分析记录模块对分析后的APP进行分类入库,并对入库的应用软件APP评定其安全等级。
6.根据权利要求5所述的方法,其特征在于:所述步骤1中,软件获取模块自动下载的iPhone操作系统iOS软件源是苹果官方软件源app store,其拥有数量最多并经由苹果签名认证的APP,所述检测机构或个人送来的待检测应用软件APP包括存在于越狱手机中的苹果蠹cydia,其包括有BigBoss、Dev Team、ZodTTd和MacCiti的多个默认软件源,以及由91、搜狗或其他移动软件公司或组织推出的软件源。
7.根据权利要求5所述的方法,其特征在于:所述步骤2包括下列操作内容:
(21)使用程序调试工具otool查看该iPhone官方文件的文件分配表FAT(File Allocation Table)信息:因iPhone移动终端的中央处理器CPU(CentralProcessing Unit)有两种架构:ARMv6和ARMv7,不同体系结构的CPU所对应的Mach-O文件格式不同,故先要确定其类型,才能选择相应的检测方法;
(22)提取加密信息:首先提取该官方文件的代码,通过查看代码和查看代码段的加密信息,定位代码段text段的起始地址与加载地址,然后加载binary解密,用于替换该加密代码段,最后修改加密标志位。
8.根据权利要求5所述的方法,其特征在于:所述步骤3包括下列操作内容:
(31)静态分析模块使用二进制扫描工具对解密的二进制文件代码进行扫描,查看Mach-O文件结构中的三个区域:头部、载入命令区和原始段数据;其中,头部和载入命令区用于描述文件功能、布局和其他特性;原始段数据包含由载入命令引用的字节序列,用于查看头部的包括CPU类型cputype和CPU子类型cpusubtype的信息,从而能够获知可疑的API和调用栈;
(32)判断该二进制文件是否调用可疑的API,若调用,则执行后续步骤(33);否则,将检测结果送至分析结果存储模块,结束该监测流程;
(33)利用该可疑的API对原始段数据进行扫描,查看是否存在包括联系人、手机号码及其位置、短信、通话记录、照片、书签及历史记录、电子邮箱帐号及其内容、设备唯一标识符UDID(Unique Device Identifier)、国际移动用户识别码IMSI(International Mobile Subscriber Identification Number)、包括QQ、MSN和微信的即时通讯信息和社交信息的各种用户隐私信息;再将检测结果送至分析结果存储模块处理。
9.根据权利要求5所述的方法,其特征在于:所述步骤5包括下列操作内容:
(51)动态分析模块将调用用户隐私信息的APP加载到iOS真实设备并运行之:利用苹果开发环境的自动化Automation工具执行下述操作:APP控件自动触发和用JavaScript驱动在程序应用上模拟用户;其触发方式为下述一种或多种:
设定触发间隔时间,随机生成触控消息的随机触发;
遍历视图上的所有控件、捕获界面元素树elementTree和触发elementTree中所有控件的控件遍历;
由于自动化触发存在某些软件需要注册或需要输入账号密码、登录设定服务器的app的不同缺陷、因而只能采用人工触发的手工触发;
(52)利用苹果应用程序调试框架MobileSubstrate对该可疑的API实现动态跟踪:因MobileSubstrate框架允许第三方开发者在操作系统运行过程中,增添一个或多个补丁和扩展方法来替换内存中调用的库和代码;
所述MobileSubstrate框架包括三个组成部件:移动挂钩器MobileHooker、移动加载器MobileLoader和安全模safe mode,故动态分析模块利用该MobileHooker执行跟踪操作,用于替换并覆盖该可疑的API;该跟踪操作的具体过程如下:
(52A)在跟踪静态分析时关注的、能获取用户隐私的可疑的API时,对用户隐私信息打上设定标签Tag,以使该用户隐私信息在传播过程中,连同该标签一起在程序内部传播,从而当用户隐私信息通过internet或其他途径发送出去时,就能够被识别出来;
(52B)对包括open、socket和mkdir的关键的c函数系统调用进行跟踪,以便进一步在底层监控应用程序的操作行为;
藉由上述两个跟踪操作,能够将应用软件APP的全部操作行为都记录备案。
10.根据权利要求5所述的方法,其特征在于:所述步骤6中的软件安全等级评定是采用评分算法评定每个软件的安全等级:先将每个目标应用程序按照泄露的用户隐私信息严重程度分为多个等级,再对每个软件APP计算其总分值来判断该APP的安全性能及其所归属的等级。
CN201410393460.5A 2014-08-12 2014-08-12 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法 Pending CN104200155A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410393460.5A CN104200155A (zh) 2014-08-12 2014-08-12 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410393460.5A CN104200155A (zh) 2014-08-12 2014-08-12 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法

Publications (1)

Publication Number Publication Date
CN104200155A true CN104200155A (zh) 2014-12-10

Family

ID=52085446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410393460.5A Pending CN104200155A (zh) 2014-08-12 2014-08-12 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法

Country Status (1)

Country Link
CN (1) CN104200155A (zh)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462973A (zh) * 2014-12-18 2015-03-25 上海斐讯数据通信技术有限公司 移动终端中应用程序的动态恶意行为检测系统及方法
CN104715196A (zh) * 2015-03-27 2015-06-17 北京奇虎科技有限公司 智能手机应用程序的静态分析方法及系统
CN104866354A (zh) * 2015-05-28 2015-08-26 成都中科创达软件有限公司 一种基于安卓平台的数据保障系统
CN104966031A (zh) * 2015-07-01 2015-10-07 复旦大学 安卓应用程序中非权限相关隐私数据的识别方法
CN105740715A (zh) * 2016-01-29 2016-07-06 广东欧珀移动通信有限公司 一种安全评估方法及终端设备
CN105760758A (zh) * 2015-01-05 2016-07-13 润钜股份有限公司 静态检测应用程序的检测系统及方法、及计算机程序产品
CN105828322A (zh) * 2015-01-04 2016-08-03 中国移动通信集团辽宁有限公司 一种用户登录的方法、移动终端及安全中心
CN105897807A (zh) * 2015-01-14 2016-08-24 江苏博智软件科技有限公司 一种基于行为特征的移动智能终端异常代码云检测方法
CN106156611A (zh) * 2015-03-25 2016-11-23 北京奇虎科技有限公司 智能手机应用程序的动态分析方法及系统
CN106452967A (zh) * 2016-11-02 2017-02-22 四川秘无痕信息安全技术有限责任公司 一种针对飞信网络数据进行监控的方法
CN106599688A (zh) * 2016-12-08 2017-04-26 西安电子科技大学 一种基于应用类别的安卓恶意软件检测方法
CN106815527A (zh) * 2016-12-01 2017-06-09 全球能源互联网研究院 一种ios应用数据安全的检测方法和装置
CN107124400A (zh) * 2017-04-01 2017-09-01 中国科学院信息工程研究所 基于安全策略的入侵防御装置及方法
CN107330329A (zh) * 2017-06-30 2017-11-07 北京金山安全管理系统技术有限公司 应用文件的鉴定方法及装置
CN107577946A (zh) * 2017-10-17 2018-01-12 江苏通付盾信息安全技术有限公司 iOS应用程序的分析方法、装置、系统及PC设备
CN108604330A (zh) * 2015-10-06 2018-09-28 内特弗利克斯股份有限公司 用于应用的安全和风险评估及测试的系统和方法
CN108694324A (zh) * 2017-04-06 2018-10-23 腾讯科技(深圳)有限公司 一种信息泄露监控方法以及装置
CN108959919A (zh) * 2018-05-25 2018-12-07 合肥利元杰信息科技有限公司 一种技术服务程序下载系统
CN109471804A (zh) * 2018-11-14 2019-03-15 苏州科达科技股份有限公司 iOS中的应用检测方法、装置及存储介质
CN109656809A (zh) * 2018-11-07 2019-04-19 北京奇艺世纪科技有限公司 一种应用程序接口检测方法、装置及计算机可读存储介质
CN109726602A (zh) * 2018-11-22 2019-05-07 合肥联宝信息技术有限公司 一种数据分析方法及电子设备
CN109815650A (zh) * 2019-01-18 2019-05-28 北京智游网安科技有限公司 基于iOS调用framework的方法、装置及介质
CN110276209A (zh) * 2019-06-28 2019-09-24 维沃移动通信有限公司 一种告警方法及移动终端
CN110505348A (zh) * 2019-08-27 2019-11-26 烟台中科网络技术研究所 一种app收集用户个人敏感信息的风险评估方法
CN110532165A (zh) * 2019-07-05 2019-12-03 中国平安财产保险股份有限公司 应用程序安装包特性检测方法、装置、设备及存储介质
CN110874303A (zh) * 2018-09-03 2020-03-10 阿里巴巴集团控股有限公司 数据采集方法、装置以及设备
WO2020192179A1 (zh) * 2019-03-28 2020-10-01 江苏通付盾信息安全技术有限公司 一种基于iOS应用的安全检测方法、装置及系统
CN112784264A (zh) * 2021-01-18 2021-05-11 北京洛塔信息技术有限公司 越狱状态检测方法、装置、设备及存储介质
CN113378231A (zh) * 2021-07-08 2021-09-10 杭州煋辰数智科技有限公司 一种大数据应用开放平台的隐私计算方法及应用
CN113672919A (zh) * 2021-08-05 2021-11-19 支付宝(杭州)信息技术有限公司 基于小程序动静态分析的风险检测方法、装置以及设备
CN113836585A (zh) * 2021-11-25 2021-12-24 南京大学 一种针对用户数据的全自动数据隐私保护系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831338A (zh) * 2012-06-28 2012-12-19 北京奇虎科技有限公司 一种Android应用程序的安全检测方法及系统
CN103186740A (zh) * 2011-12-27 2013-07-03 北京大学 一种Android恶意软件的自动化检测方法
US20130205415A1 (en) * 2011-02-11 2013-08-08 Mocana Corporation Network linker for secure execution of unsecured apps on a device
CN103716313A (zh) * 2013-12-24 2014-04-09 中国科学院信息工程研究所 一种用户隐私信息保护方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130205415A1 (en) * 2011-02-11 2013-08-08 Mocana Corporation Network linker for secure execution of unsecured apps on a device
CN103186740A (zh) * 2011-12-27 2013-07-03 北京大学 一种Android恶意软件的自动化检测方法
CN102831338A (zh) * 2012-06-28 2012-12-19 北京奇虎科技有限公司 一种Android应用程序的安全检测方法及系统
CN103716313A (zh) * 2013-12-24 2014-04-09 中国科学院信息工程研究所 一种用户隐私信息保护方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
严炜等: ""一种基于黑盒评估的iOS平台应用安全评测方法研究"", 《2013年中国信息通信研究新进展论文集》 *

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462973A (zh) * 2014-12-18 2015-03-25 上海斐讯数据通信技术有限公司 移动终端中应用程序的动态恶意行为检测系统及方法
CN104462973B (zh) * 2014-12-18 2017-11-14 上海斐讯数据通信技术有限公司 移动终端中应用程序的动态恶意行为检测系统及方法
CN105828322B (zh) * 2015-01-04 2019-09-17 中国移动通信集团辽宁有限公司 一种用户登录的方法、移动终端及安全中心
CN105828322A (zh) * 2015-01-04 2016-08-03 中国移动通信集团辽宁有限公司 一种用户登录的方法、移动终端及安全中心
CN105760758A (zh) * 2015-01-05 2016-07-13 润钜股份有限公司 静态检测应用程序的检测系统及方法、及计算机程序产品
CN105897807A (zh) * 2015-01-14 2016-08-24 江苏博智软件科技有限公司 一种基于行为特征的移动智能终端异常代码云检测方法
CN106156611A (zh) * 2015-03-25 2016-11-23 北京奇虎科技有限公司 智能手机应用程序的动态分析方法及系统
CN104715196A (zh) * 2015-03-27 2015-06-17 北京奇虎科技有限公司 智能手机应用程序的静态分析方法及系统
CN104866354B (zh) * 2015-05-28 2018-01-05 成都中科创达软件有限公司 一种基于安卓平台的数据保障系统
CN104866354A (zh) * 2015-05-28 2015-08-26 成都中科创达软件有限公司 一种基于安卓平台的数据保障系统
CN104966031B (zh) * 2015-07-01 2018-02-27 复旦大学 安卓应用程序中非权限相关隐私数据的识别方法
CN104966031A (zh) * 2015-07-01 2015-10-07 复旦大学 安卓应用程序中非权限相关隐私数据的识别方法
CN108604330A (zh) * 2015-10-06 2018-09-28 内特弗利克斯股份有限公司 用于应用的安全和风险评估及测试的系统和方法
CN105740715A (zh) * 2016-01-29 2016-07-06 广东欧珀移动通信有限公司 一种安全评估方法及终端设备
CN106452967B (zh) * 2016-11-02 2019-09-10 四川秘无痕科技有限责任公司 一种针对飞信网络数据进行监控的方法
CN106452967A (zh) * 2016-11-02 2017-02-22 四川秘无痕信息安全技术有限责任公司 一种针对飞信网络数据进行监控的方法
CN106815527A (zh) * 2016-12-01 2017-06-09 全球能源互联网研究院 一种ios应用数据安全的检测方法和装置
CN106599688B (zh) * 2016-12-08 2019-07-12 西安电子科技大学 一种基于应用类别的安卓恶意软件检测方法
CN106599688A (zh) * 2016-12-08 2017-04-26 西安电子科技大学 一种基于应用类别的安卓恶意软件检测方法
CN107124400A (zh) * 2017-04-01 2017-09-01 中国科学院信息工程研究所 基于安全策略的入侵防御装置及方法
CN108694324A (zh) * 2017-04-06 2018-10-23 腾讯科技(深圳)有限公司 一种信息泄露监控方法以及装置
CN107330329A (zh) * 2017-06-30 2017-11-07 北京金山安全管理系统技术有限公司 应用文件的鉴定方法及装置
CN107577946A (zh) * 2017-10-17 2018-01-12 江苏通付盾信息安全技术有限公司 iOS应用程序的分析方法、装置、系统及PC设备
CN108959919A (zh) * 2018-05-25 2018-12-07 合肥利元杰信息科技有限公司 一种技术服务程序下载系统
CN110874303B (zh) * 2018-09-03 2023-05-26 阿里巴巴集团控股有限公司 数据采集方法、装置以及设备
CN110874303A (zh) * 2018-09-03 2020-03-10 阿里巴巴集团控股有限公司 数据采集方法、装置以及设备
CN109656809A (zh) * 2018-11-07 2019-04-19 北京奇艺世纪科技有限公司 一种应用程序接口检测方法、装置及计算机可读存储介质
CN109471804A (zh) * 2018-11-14 2019-03-15 苏州科达科技股份有限公司 iOS中的应用检测方法、装置及存储介质
CN109726602A (zh) * 2018-11-22 2019-05-07 合肥联宝信息技术有限公司 一种数据分析方法及电子设备
CN109815650A (zh) * 2019-01-18 2019-05-28 北京智游网安科技有限公司 基于iOS调用framework的方法、装置及介质
CN109815650B (zh) * 2019-01-18 2022-06-24 深圳智游网安科技有限公司 基于iOS调用framework的方法、装置及介质
WO2020192179A1 (zh) * 2019-03-28 2020-10-01 江苏通付盾信息安全技术有限公司 一种基于iOS应用的安全检测方法、装置及系统
CN110276209A (zh) * 2019-06-28 2019-09-24 维沃移动通信有限公司 一种告警方法及移动终端
CN110532165A (zh) * 2019-07-05 2019-12-03 中国平安财产保险股份有限公司 应用程序安装包特性检测方法、装置、设备及存储介质
CN110532165B (zh) * 2019-07-05 2024-06-28 中国平安财产保险股份有限公司 应用程序安装包特性检测方法、装置、设备及存储介质
CN110505348B (zh) * 2019-08-27 2020-10-09 烟台中科网络技术研究所 一种app收集用户个人敏感信息的风险评估方法
CN112073584A (zh) * 2019-08-27 2020-12-11 烟台中科网络技术研究所 一种App收集用户个人敏感信息的风险评估方法
CN110505348A (zh) * 2019-08-27 2019-11-26 烟台中科网络技术研究所 一种app收集用户个人敏感信息的风险评估方法
CN112784264A (zh) * 2021-01-18 2021-05-11 北京洛塔信息技术有限公司 越狱状态检测方法、装置、设备及存储介质
CN112784264B (zh) * 2021-01-18 2024-04-02 北京洛塔信息技术有限公司 越狱状态检测方法、装置、设备及存储介质
CN113378231A (zh) * 2021-07-08 2021-09-10 杭州煋辰数智科技有限公司 一种大数据应用开放平台的隐私计算方法及应用
CN113672919A (zh) * 2021-08-05 2021-11-19 支付宝(杭州)信息技术有限公司 基于小程序动静态分析的风险检测方法、装置以及设备
CN113836585A (zh) * 2021-11-25 2021-12-24 南京大学 一种针对用户数据的全自动数据隐私保护系统

Similar Documents

Publication Publication Date Title
CN104200155A (zh) 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法
US20230029376A1 (en) Methods for locating an antenna within an electronic device
CN104125216B (zh) 一种提升可信执行环境安全性的方法、系统及终端
Li et al. Detecting malware for android platform: An svm-based approach
US9917817B1 (en) Selective encryption of outgoing data
CN112217835B (zh) 报文数据的处理方法、装置、服务器和终端设备
CN103716785B (zh) 一种移动互联网安全服务系统
CN103116722A (zh) 一种通知栏消息的处理方法、装置和系统
WO2014012500A1 (en) Method and device for processing messages
CN105653947B (zh) 一种评估应用数据安全风险的方法及装置
CN107040540B (zh) 一种云隐私数据显示方法和装置、服务器及移动终端
CN107133498A (zh) 一种隐私应用管理方法和装置及移动终端
CN104008346A (zh) 启动数据处理设备的隐私模式的方法和装置
CN106713618A (zh) 一种验证码的处理方法及移动终端
CN113177205B (zh) 一种恶意应用检测系统及方法
CN104063788A (zh) 一种移动平台可信支付系统及方法
CN105975867A (zh) 一种数据处理方法
CN104182681A (zh) 基于hook的iOS系统关键行为检测装置和方法
CN104217162A (zh) 一种智能终端恶意软件的检测方法及系统
US10402586B2 (en) Patient privacy de-identification in firewall switches forming VLAN segregation
CN115544558A (zh) 敏感信息检测方法、装置、计算机设备及存储介质
CN103729604B (zh) 一种用户访问区域的方法和装置
CN108540591B (zh) 通讯录管理方法、通讯录管理装置及电子设备
CN110087238A (zh) 一种移动电子设备信息安全保护系统
CN107169354A (zh) 多层级Android系统恶意行为监控方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20141210