CN107517245A - 一种基于静态分析的移动安全沙箱设计 - Google Patents
一种基于静态分析的移动安全沙箱设计 Download PDFInfo
- Publication number
- CN107517245A CN107517245A CN201710563492.9A CN201710563492A CN107517245A CN 107517245 A CN107517245 A CN 107517245A CN 201710563492 A CN201710563492 A CN 201710563492A CN 107517245 A CN107517245 A CN 107517245A
- Authority
- CN
- China
- Prior art keywords
- android
- user
- security
- application
- server
- 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
- 244000035744 Hura crepitans Species 0.000 title claims abstract description 9
- 238000004458 analytical method Methods 0.000 title claims description 6
- 230000003068 static effect Effects 0.000 title claims description 6
- 238000001514 detection method Methods 0.000 claims abstract description 19
- 238000000034 method Methods 0.000 claims abstract description 18
- 230000006854 communication Effects 0.000 claims abstract description 17
- 238000004891 communication Methods 0.000 claims abstract description 16
- 230000006870 function Effects 0.000 claims abstract description 15
- 238000012502 risk assessment Methods 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 238000011161 development Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000011230 binding agent Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72406—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种移动安全沙箱的设计方法,核心在于通过服务器检测应用程序的安全性来保护用户的移动端。本系统将在Android操作系统下,设计出移动端的安全沙箱,主要功能是设计出安全沙箱通过应用程序安全检测可以使得用户了解应用程序的安全程度,并且使得用户可以远程卸载应用、抹除数据来保护用户隐私,除此之外,还有进程通信模块,用于实现andorid应用程序之间的数据传递方式。项目整体采用MVC框架,综合了很多android开发的知识点包括安卓的四大组件,安全体系和通信体系。在Android平台上设计出能实现上述各种功能的移动安全沙箱。
Description
技术领域
本发明属于移动设备安全检测领域
技术背景
近年来随着随着信息产业的发展,智能手机生产成本的下降,越来越多的用户使用智能手机在日常生活中保存数据,处理各种信息。现今的智能手机能够基于操作系统平台安装其他第三方开发者开发的应用程序,同时由于各个手机操作系统如Android,IOS,Windows Phone给广大应用开发者提供了良好的平台和开阔的开发空间,使得很多优秀的应用程序进入了应用商店供用户下载使用,显然应用程序丰富了用户的生活,使其更方便的使用和处理数据,但与此同时,在用户的个人隐私数据大部分都存储于移动设备的情况下,越来越多的用户关注点不单单是应用程序是否能够便利自己的生活,还想知道移动设备能否安全地存储自己的隐私信息。
Android手机广大的用户群体以及Android平台开源的特性吸引了越来越多的开发者进入安卓开发的行业中来,但同时如此庞大的用户基数使得恶意软件的开发者也把目光投向了安卓市场。智能手机里用户的个人隐私信息,网上支付手段所包含的巨大经济利益,以及用户可以从网络中不明渠道下载软件以实现各种所需功能,都驱使不法分子开发恶意软件从而从中获取利益。这些恶意软件在用户手机中不知不觉的窃取用户的隐私数据,通过网络连接访问不可靠网站,获取系统权限从而限制用户行为等,都损害了移动手机用户的利益。为了实现越来越复杂的功能,更多的应用软件进入应用商店,不可避免的在安全方面会有隐患,恶意软件的数量和种类都在不断增加,对于没有辨别能力而只想使用功能的用户来讲,自身的隐私数据面临很大的威胁。
综上所述,Android系统在用户中的普及所带来的移动安全领域的形势不容乐观,一方面用户对Android手机的安全使用不规范,比如直接在网上而不是应用商店中安装apk文件,另一方面国内对于Android应用程序的安全检测技术仍处于起步阶段,手机恶意软件不仅仅会对用户信息安全产生巨大威胁,由于如此庞大的用户群体,甚至可能对国家部门的重要信息带来重大的安全隐患。因此基于Android移动端安全沙箱的研究对于个人来讲可以提供更有效的防范措施保护个人数据,对于社会方面可以奠定更为坚实的平台基础,使得今后移动互联网产业链在好的基础上更快,更健康的发展。
发明内容
本发明包含的一项内容:基于静态分析的应用安全检测模块。
该软件的目的旨在保护移动终端用户的应用程序安全。特色通过结合检测服务器与移动端的上传文件程序,实现返回用户检测结果应用程序的风险大小。
本软件包含以下几个功能:
(1)文件上传功能;用户上传文件,提交需要检测的文件给服务器(在本课题中是APK文件,也可以传输其他的文件类型)。
(2)安全检测程序:核心使用androguard软件进行静态分析。使用androrisk.py将apk实例化,反编译进行检测。其中使用了APK类和RISK类,进行文件的资源化和静态分析。
(3)远程操作手机功能:远程操作手机是为了实现远程数据抹除以及应用程序卸载的功能,在移动端和PC端,使得两台设备建立连接,此时主体端将有权限远程控制手机,如果发现在移动端有不安全的操作,特别是对于个人或者企业敏感信息的泄露,就可以及时进行相应的措施。
(4)广播通信:实质上它就是一种组件间的通信方式,如果是两个组件位于不同的进程当中,那么可以用Binder机制来实现,如果两个组件是在同一个进程中,那么它们之间可以用来通信的方式就更多了,这样看来,广播机制似乎是多余的。然而,广播机制却是不可替代的,它和Binder机制不一样的地方在于,广播的发送者和接收者事先是不需要知道对方的存在的,这样带来的好处便是,系统的各个组件可以松耦合地组织在一起,这样系统就具有高度的可扩展性,容易与其它系统进行集成。
(5)通知栏通信:状态通知栏主要涉及到2个类:Notification和NotificationManager。。Notification为通知信息类,它里面对应了通知栏的各个属性NotificationManager:是状态栏通知的管理类,负责发通知、清除通知等操作。NotificationManager是一个系统Service,所以必须通过getSystemService(NOTIFICATION_SERVICE)方法来获取。
(6)AIDL通信:服务端首先要创建一个Service用来监听客户端的连接请求,然后创建一个AIDL文件,将暴露给客户端的接口在这个AIDL文件中声明,最后在Service中实现这个AIDL接口即可。
客户端所要做事情就稍微简单一些,首先需要绑定服务端的Service,绑定成功后,将服务端返回的Binder对象转成AIDL接口所属的类型,接着就可以调用AIDL中的方法了。
应用程序安全检测方法包含以下几个步骤:
(1)首先启动上传文件的server服务器(运行于tomcat环境下)
(2)Android客户端用户启动upload.apk上传文件。
(3)用户成功上传文件,将保存文件到服务器的特定路径。
(4)在服务器端,我们可以使用androrisk.py文件检测应用程序的风险估计值。
(5)androrisk.py调用APK类对apk文件进行实例资源化。
(6)androrisk.py调用RedFlag类对apk进行权限风险分析。
(7)通过执行脚本将在服务器端完成自动化分析的过程并将结果保存在tomcat的特定目录下。
(8)用户通过web目录访问即可查看检测结果。
附图说明
1.图1是本软件的功能结构图;
2.图2是本软件-应用程序安全检测模块的流程图;
3.图3是本软件-上传文件的界面图;
4.图4是本软件-服务器端检测应用程序的界面图;
5.图5是本软件-用户查看检测结果的界面图;
6.图6是远程操作手机模块的流程图。
7.图7是本软件-远程操作手机以及建立连接功能的界面图;
8.图8是远程卸载应用功能的界面图;
9.图9是进程通信的流程图。
10.图10是通知栏通信的界面图。
11.图11是广播通信的界面图。
12.图12是AIDL通信的流程图
13.图13是AIDL的绑定服务端界面。
14.图14是AIDL成功通信数据界面。
具体实施方式
下面结合附图,对本发明中的应用程序安全检测模块进行讲解。
图1展示的是本软件的功能结构图,各功能的大体描述如发明内容中所述。
图2是流程图。首先用户要在Android手机上有一个上传文件的upload应用,用于传递需要检测的apk文件。当然这个apk文件需要在手机上,upload应用在存储器中找到apk文件并通过http请求将文件发送给服务器端。然后在服务器端接收到apk文件之后,交给androguard静态处理,androguard处理之后将结果返回给服务器,用户通过访问服务器存储处理结果的网址来获取这个应用程序的风险评估,从而确定是否要让这个应用程序运行在自己的手机上。
图3是Android上传文件的客户端,用户提交需要检测的APK文件。
图4是本软件的检测服务器的检测过程。具体流程大概为获取apk文件--通过APK类资源化文件--获取文件的反编译代码--分析权限--通过RISK文件中的RedFlag类加权计算风险估计值,将计算结果交给用户。
在APK类中首先初始化参数,class实例——>遍历获取AndroidManifest.xml——>AXMLPrinter实例——>AXMLParser实例解析这就是对一个apk从axml到资源再到操作码的解析的过程。
判断APK是否有效:is_valid_APK()
获取APK文件名:get_filename()
获取APK中的文件列表:get_files()
获取APK中所有activity名称列表:get_activities()
获取APK中所有service名称列表:get_services()
获取APK权限相关信息:get_permissions()
之后,RedFlag中进行加权估计值的计算,得出估计结果。
图5是用户通过超链接web浏览器访问服务器网址,就可以查看风险估计值了。
Claims (2)
1.本次发明的基于静态分析的移动安全沙箱,包括以下功能:
(1)应用程序安全检测功能:用户可以通过上传应用程序给检测服务器,安全沙箱能够告诉用户某个应用程序可能对Android手机的威胁程度(通过给出一个风险估计值),即检测apk文件的安全性,风险估计值越大代表该程序越不安全。
(2)远程操控手机功能:通过调用远程操作软件,给予用户远程操控手机的方法,即用户在远程也能访问到自己的手机。
(3)进程通信功能:在通信机制上,安全沙箱可以给用户展示Android应用程序之间的各种通信过程。主要有三种方法,通知栏机制通信、广播通信、AIDL(Android InterfaceDefinition Language,Android接口定义语言)方式通信。
2.本次发明的一种新型的应用程序检测方法,包含以下步骤:
(1)Android网络请求框架AsyncHttpClient异步传输方式在Android端上传文件。
(2)通过servlet和fileupload.jar包实现服务器端的文件接收,并保存到部署的tomcat服务器目录下。
(3)检测服务器通过开源软件Androguard进行安全检测,使用androidsk.py给出风险评估值,并返回结果给服务器。
(4)Android端用户通过浏览器访问服务器目录查看结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710563492.9A CN107517245A (zh) | 2017-07-10 | 2017-07-10 | 一种基于静态分析的移动安全沙箱设计 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710563492.9A CN107517245A (zh) | 2017-07-10 | 2017-07-10 | 一种基于静态分析的移动安全沙箱设计 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107517245A true CN107517245A (zh) | 2017-12-26 |
Family
ID=60722510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710563492.9A Pending CN107517245A (zh) | 2017-07-10 | 2017-07-10 | 一种基于静态分析的移动安全沙箱设计 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107517245A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112073584A (zh) * | 2019-08-27 | 2020-12-11 | 烟台中科网络技术研究所 | 一种App收集用户个人敏感信息的风险评估方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102955915A (zh) * | 2011-08-23 | 2013-03-06 | 中国移动通信集团公司 | 一种Java应用安全访问控制方法及其装置 |
CN103685251A (zh) * | 2013-12-04 | 2014-03-26 | 电子科技大学 | 一种面向移动互联网的Android恶意软件检测平台 |
US20140195584A1 (en) * | 2013-01-07 | 2014-07-10 | David Harrison | Communication dongle physically coupled with a media device to automatically discover and launch an application on the media device and to enable switching of a primary output display from a first display of a mobile device to a second display of the media device through an operating system of the mobile device sharing a local area network with the communication dongle |
CN104517054A (zh) * | 2014-12-25 | 2015-04-15 | 北京奇虎科技有限公司 | 一种检测恶意apk的方法、装置、客户端和服务器 |
CN105357256A (zh) * | 2015-09-28 | 2016-02-24 | 深信服网络科技(深圳)有限公司 | 管理移动设备的方法及服务器 |
CN106384045A (zh) * | 2016-09-12 | 2017-02-08 | 电子科技大学 | 基于应用程序虚拟化的安卓存储应用沙箱及通信方法 |
CN106708643A (zh) * | 2016-11-14 | 2017-05-24 | 武汉斗鱼网络科技有限公司 | 异常信息处理方法及装置 |
-
2017
- 2017-07-10 CN CN201710563492.9A patent/CN107517245A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102955915A (zh) * | 2011-08-23 | 2013-03-06 | 中国移动通信集团公司 | 一种Java应用安全访问控制方法及其装置 |
US20140195584A1 (en) * | 2013-01-07 | 2014-07-10 | David Harrison | Communication dongle physically coupled with a media device to automatically discover and launch an application on the media device and to enable switching of a primary output display from a first display of a mobile device to a second display of the media device through an operating system of the mobile device sharing a local area network with the communication dongle |
CN103685251A (zh) * | 2013-12-04 | 2014-03-26 | 电子科技大学 | 一种面向移动互联网的Android恶意软件检测平台 |
CN104517054A (zh) * | 2014-12-25 | 2015-04-15 | 北京奇虎科技有限公司 | 一种检测恶意apk的方法、装置、客户端和服务器 |
CN105357256A (zh) * | 2015-09-28 | 2016-02-24 | 深信服网络科技(深圳)有限公司 | 管理移动设备的方法及服务器 |
CN106384045A (zh) * | 2016-09-12 | 2017-02-08 | 电子科技大学 | 基于应用程序虚拟化的安卓存储应用沙箱及通信方法 |
CN106708643A (zh) * | 2016-11-14 | 2017-05-24 | 武汉斗鱼网络科技有限公司 | 异常信息处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
蒯海龙: ""Android恶意软件检测平台研究与设计"", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112073584A (zh) * | 2019-08-27 | 2020-12-11 | 烟台中科网络技术研究所 | 一种App收集用户个人敏感信息的风险评估方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10867041B2 (en) | Static and dynamic security analysis of apps for mobile devices | |
Zhang et al. | Identity confusion in {WebView-based} mobile app-in-app ecosystems | |
US9894079B2 (en) | Data loss prevention for mobile computing devices | |
CN106471466B (zh) | 短暂应用 | |
Bhavani | Cross-site scripting attacks on android webview | |
EP3991389B1 (en) | File upload control for client-side applications in proxy solutions | |
KR101507469B1 (ko) | 소스 코드 분석 서비스 제공 방법 | |
US20210306375A1 (en) | Live forensic browsing of urls | |
WO2017198740A1 (en) | Server and method for providing secure access to web-based services | |
CN111400722A (zh) | 扫描小程序的方法、装置、计算机设备和存储介质 | |
KR20110128632A (ko) | 스마트폰 응용프로그램의 악성행위 탐지 방법 및 장치 | |
CN104580203A (zh) | 网站恶意程序检测方法及装置 | |
US20130074160A1 (en) | Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus | |
Bao et al. | Cross-site scripting attacks on android hybrid applications | |
CN106022128A (zh) | 用于检测进程访问权限的方法、装置及移动终端 | |
US11516279B2 (en) | Systems and methods for accessing multiple resources via one identifier | |
Hale et al. | A testbed and process for analyzing attack vectors and vulnerabilities in hybrid mobile apps connected to restful web services | |
Meshram et al. | A survey paper on vulnerabilities in android OS and security of android devices | |
US12008105B2 (en) | Protected QR code scanner using operational system override | |
CN111666567A (zh) | 恶意修改应用程序的检测方法、装置、计算机程序和介质 | |
US8474013B2 (en) | Securely managing password access to a computer system | |
CN107517245A (zh) | 一种基于静态分析的移动安全沙箱设计 | |
KR101493820B1 (ko) | 모바일 보안 시스템 | |
Hidhaya et al. | Supplementary event-listener injection attack in smart phones | |
Espada et al. | Mobile web-based system for remote-controlled electronic devices and smart objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20171226 |