throbber
( 12 ) United States Patent
`Liao
`
`HOWMNALULONNAI
`
`US009800609B2
`
`( 10 ) Patent No . :
`( 45 ) Date of Patent :
`
`US 9 , 800 , 609 B2
`Oct . 24 , 2017
`
`( * ) Notice :
`
`( 54 ) METHOD , DEVICE AND SYSTEM FOR
`DETECTING MALWARE IN
`A MOBILE
`TERMINAL
`( 71 ) Applicant : Tencent Technology ( Shenzhen ) Co . ,
`Ltd . , Shenzhen , Guangdong ( CN )
`( 72 ) Inventor : Chongliang Liao , Guangdong ( CN )
`( 73 ) Assignee : Tencent Technology ( Shenzhen )
`@
`Company Limited , Shenzhen , P . R .
`( CN )
`Subject to any disclaimer , the term of this
`patent is extended or adjusted under 35
`U . S . C . 154 ( b ) by 8 days .
`@ ( 21 ) Appl . No . : 14 / 622 , 074
`( 22 ) Filed :
`Feb . 13 , 2015
`Prior Publication Data
`( 65 )
`US 2015 / 0163232 A1
`Jun . 11 , 2015
`Related U . S . Application Data
`( 63 ) Continuation
`of
`application
`PCT / CN2014 / 080793 , filed on Jun . 26 , 2014 .
`Foreign Application Priority Data
`( 30 )
`Jul . 30 , 2013
`( CN ) . . . . . . . . . . . . . . . . . . . . . 2013 1 03261916
`( 51 )
`Int . CI .
`( 2006 . 01 )
`H04L 29 / 06
`( 2013 . 01 )
`G06F 21 / 56
`G06F 9 / 445
`( 2006 . 01 )
`( 52 ) U . S . CI .
`CPC . . . . . . . . . . . . . . H04L 63 / 145 ( 2013 . 01 ) ; G06F 8 / 61
`( 2013 . 01 ) ; G06F 21 / 563 ( 2013 . 01 ) ; G06F
`21 / 567 ( 2013 . 01 ) ; G06F 2221 / 2115 ( 2013 . 01 )
`( 58 ) Field of Classification Search
`CPC . . . . . . . . . . G06F 8 / 61 ; G06F 21 / 56 - 21 / 568 ; GO6F
`2221 / 2115 ; H04L 63 / 1416 ; H04L
`63 / 1441 - 63 / 145
`See application file for complete search history .
`
`No .
`
`CN
`CN
`
`( 56 )
`
`References Cited
`U . S . PATENT DOCUMENTS
`8 , 281 , 399 B1 10 / 2012 Chen et al .
`2009 / 0282483 A1 * 11 / 2009 Bennett . . . . . . . . . . . . . . . H04L 63 / 1416
`726 / 23
`( Continued )
`FOREIGN PATENT DOCUMENTS
`102123396 A
`7 / 2011
`102663281 A
`9 / 2012
`( Continued )
`OTHER PUBLICATIONS
`Yajin Zhou , Zhi Wang , Wu Zhou , and Xuxian Jiang ( Zhou et al . )
`“ Hey , You , Get Off of My Market : Detecting Malicious Apps in
`Official and Alternative Android Markets ” , 19th Annual Symposium
`on Network and Distributed System Security ( NDSS Symposium
`2012 ) .
`< http : / / www . internetsociety . org / sites / default / files / 07 _ 5 .
`pdf > . Published : Feb . 7 , 2012 . *
`( Continued )
`Primary Examiner — Kevin Bechtel
`( 74 ) Attorney , Agent , or Firm — Brinks Gilson & Lione
`( 57 )
`ABSTRACT
`A method , device and system for detecting malware in a
`mobile terminal are disclosed . The method includes at least
`the following operations : obtaining an installation package
`of a software which is to be checked ; decompressing the
`installation package to obtain a decompressed installation
`package ; detecting the decompressed installation package to
`obtain a first detection result ; sending the decompressed
`installation package to a cloud system ; receiving a second
`detection result returned from the cloud system based upon
`the cloud performing a malware check on the decompressed
`installation package ; determining that the software being
`checked is a malware , if one or both of the following is
`found : the first detection result and the second detection
`result each indicates that the decompressed installation
`package is abnormal .
`15 Claims , 4 Drawing Sheets
`
`obtaining an islaulation package of a soflware
`which is to be checked
`
`decompressing the installation package to obtain a
`decompressed installation package
`
`101
`
`- 102
`
`detecting ihe decongressed installation package to L
`obtain a firs : detection result
`
`sonding the deconipreseed installation package to a
`cloud system
`
`he
`
`
`
`that t
`
`receiving a second detection result returned front
`the cloud systern based upon the cloud oorlooning
`a malware check on the decompressed
`installation package
`
`determining that the software being checked is a
`malware , if one or both of the faitowing is found : the
`first detection result and the second detection result
`each indicates that the decompressed installation
`package is abnormal
`
`105
`
`106
`
`ironSource Exhibit 1014
`
`

`

`US 9 , 800 , 609 B2
`Page 2
`
`( 56 )
`
`References Cited
`U . S . PATENT DOCUMENTS
`2010 / 0333203 A1 * 12 / 2010 Tsviatkou . . . . . . . . . . . . . GO6F 21 / 566
`726 / 23
`2011 / 0145920 A1
`6 / 2011 Mahaffey et al .
`2012 / 0330801 A1 * 12 / 2012 McDougal . . . . . . . . . . . . GO6F 21 / 577
`705 / 32
`2013 / 0263266 A1 * 10 / 2013 Bojaxhi
`. . . . . H04L 63 / 145
`726 / 23
`
`FOREIGN PATENT DOCUMENTS
`102663286 A
`9 / 2012
`102779257 A
`11 / 2012
`103400076 A
`11 / 2013
`
`CN
`CN
`CN
`
`OTHER PUBLICATIONS
`International Preliminary Report on Patentability and Written Opin
`ion received in PCT Application No . PCT / CN2014 / 080793 dated
`Feb . 2 , 2016 .
`International Search Report received in PCT Application No . PCT /
`CN2014 / 080793 dated Sep . 26 , 2014 .
`Fang , " Malware Implementation and Detection on Android , ” Thesis
`Submitted to Nanjing University of Posts and Telecommunications
`for the Degree of Master of Engineering , Jun . 15 , 2013 .
`Wenjun et al . , “ A Detection Method and System Implementation for
`Android Malware , ” Journal of Xi ' an Jiaotong University , vol .
`47 : 10 , Oct . 2013 .
`First Office Action received
`in
`Chinese Application No .
`201310326191 . 6 dated Jul . 1 , 2015 .
`* cited by examiner
`
`

`

`U . S . Patent
`
`Oct . 24 , 2017
`
`Sheet 1 of 4
`
`US 9 , 800 , 609 B2
`
`obtaining an installation package of a software
`which is to be checked
`
`decompressing the installation package to obtain a
`decompressed installation package
`
`detecting the decompressed installation package to
`obtain a first detection result
`
`sending the decompressed installation package to a
`cloud system
`
`receiving a second detection result returned from 1
`the cloud system based upon the cloud performing
`a malware check on the decompressed
`installation package
`
`determining that the software being checked is a
`malware , if one or both of the following is found : the
`first detection result and the second detection result
`each indicates that the decompressed installation
`package is abnormal
`
`Figure 1
`
`102
`
`- 103
`
`104
`
`105
`
`106
`
`

`

`U . S . Patent
`
`Oct . 24 , 2017
`
`Sheet 2 of 4
`
`US 9 , 800 , 609 B2
`
`Server 2222
`
`Sever
`
`200
`
`0224
`
`Etarnak
`
`0
`
`Server
`
`Server
`
`Base station
`226
`
`Mobile Terminal
`
`O
`
`Moblje terminal
`
`Mobile terminal
`
`Ce se
`
`Figure 2a
`
`End system
`( mobile terminat side
`
`224
`
`Cloud system
`
`222
`
`Decompressing
`
`
`
`Heuristic scanning
`
`
`
`Suuues leurs
`
`
`
`
`
`file scanning Authority Limits
`
`
`
`of xmi Secondary analysis
`
`
`
`Similarity comparison
`
`
`
`dex fle analysis
`
`
`
`Dynamic execution
`
`2241
`
`7742
`
`2243
`
`2244
`
`2221
`
`2221
`
`2222
`2222
`
`2223
`2223
`
`2224
`2224
`
`Figure 2b
`
`

`

`atent
`
`Oct . 24 , 2017
`
`Sheet 3 of 4
`
`US 9 , 800 , 609 B2
`
`The mobile terminal obtains an APK to be checked y
`
`- 201
`
`The mobile terminal decompresses the obtained
`APK , and obtains a decompressed APK
`
`202
`
`The mobile terminal checks the obtained
`decompressed APK and obtains a
`first check result
`
`The mobile terminal sends the decompressed
`APK to the cloud system
`
`203
`
`204
`
`The cloud system performs a malware
`check on the decompressed APK and
`obtains a second check result
`
`5205 205
`
`The mobile terminal retums a second
`check result returned by the cloud system
`
`206
`
`The mobile terminal determines that the software
`to be checked is malware if the first check result
`and / or the second check result indicates that the
`decompressed installation package is abnormal
`
`- 107
`
`Figure 2c
`
`

`

`atent
`
`Oct . 24 , 2017
`
`Sheet 4 of 4
`
`US 9 , 800 , 609 B2
`
`Acquisition Unit
`301
`
`Decompressing
`Unit 302
`
`Detecting Unit
`303
`
`robe sent trainingen en anderen van
`
`Sending Unit 304
`
`Memory 308
`
`Receiving Unit
`305
`
`Determining Unit
`306
`
`Device 300
`
`401
`409
`
`Processor Circuitry
`307
`
`Figure 3
`
`Mobile Terminal
`400
`
`Ret dreauty
`
`# # # #
`
`# # # #
`
`RF circuit
`
`wit modo f6407
`
`WiFi module
`
`menn 407
`
`406
`
`408
`
`Power supply
`
`Memory
`
`43 403
`
`meu
`
`Input unit
`
`Processor
`
`Figure 4
`
`Audio circuit
`
`Sensor
`
`405
`
`Display unit
`
`404
`
`

`

`US 9 , 800 , 609 B2
`
`15
`
`METHOD , DEVICE AND SYSTEM FOR
`DETECTING MALWARE IN A MOBILE
`TERMINAL
`
`found : the first detection result and the second detection
`result each indicates that the decompressed installation
`package is abnormal .
`In another embodiment , a device for detecting malware in
`5 a mobile terminal is disclosed . The device operates in
`CROSS - REFERENCE TO RELATED
`conjunction with at least a processor with circuitry and at
`APPLICATIONS
`least a memory which stores instruction codes operable as
`plurality of units , wherein the plurality of units include : an
`The application is a continuation of PCT Application No .
`acquisition unit , which obtains an installation package of a
`PCT / CN2014 / 080793 , filed on Jun . 26 , 2014 , which claims
`software which is to be checked ; a decompressing unit ,
`priority to Chinese Patent Application No . 2013103261916 , "
`which decompresses the installation package to obtain a
`filed on Jul . 30 , 2013 , which may be incorporated by
`reference in their entireties .
`decompressed installation package ; a detecting unit , which
`detects the decompressed installation package to obtain a
`FIELD OF THE TECHNOLOGY
`first detection result ; a sending unit , which sends the decom
`pressed installation package to a cloud system ; a receiving
`unit , which receives a second detection result returned from
`The present disclosure relates to a method , device and
`the cloud system based upon the cloud performing a mal
`system for detecting malware in a mobile terminal in the
`field of communication technology .
`ware check on the decompressed installation package ; a
`20 determining unit , which determines that the software being
`BACKGROUND
`checked is a malware , if one or both of the following is
`found : the first detection result and the second detection
`result each indicates that the decompressed installation
`With rapid development of communication technologies ,
`package is abnormal .
`mobile terminals such as smartphones and tablet PCs are
`In another embodiment , a communication system is dis
`increasingly popular . It seems that mobile terminals have 25
`closed . The communication system may include at least a
`become an integral part of people ' s daily life . While enrich -
`device for detecting malware in a mobile terminal , wherein
`ing people ' s life and bringing great conveniences to people ,
`the mobile device may be in communication with another
`such hi - tech products increasingly need to confront infor -
`mation security problems .
`communication device and a cloud server through a net
`For example , providers of illegal software may spread 30 work , wherein the device operates in conjunction with at
`malware over the Internet to infect mobile devices and
`least a processor with circuitry and at least a memory which
`computers . If a user browses certain malicious websites or
`stores instruction codes operable as plurality of units . The
`plurality of units may include : an acquisition unit , which
`downloads certain information , such malware may run in the
`obtains an installation package of a software which is to be
`cas
`us
`ses mal . 35 checked ; a decompressing unit , which decompresses the
`may harass people personally , in more serious cases , mal - 33
`installation package to obtain a decompressed installation
`ware may hunt for and transmit people ' s personal data ( for
`package ; a detecting unit , which detects the decompressed
`example , account passwords ) to the malware providers , thus
`P installation package to obtain a first detection result ; a
`compromising people ' s privacy and financial security .
`sending unit , which sends the decompressed installation
`Therefore , dealing with and detecting malware effectively is 1840 package to a cloud system ; a receiving unit , which receives
`an urgent issue .
`a second detection result returned from the cloud system
`Due to limited processing capacity of a mobile terminal ' s
`based upon the cloud performing a malware check on the
`decompressed installation package ; a determining unit ,
`CPU , mobile terminal usually adopts simple malware detec -
`which determines that the software being checked is a
`tion methods , such as performing simple binary scanning
`only on feature codes of software application in order to 45 malware , if one or both of the following is found : the first
`determine whether certain software application is indeed a
`detection result and the second detection result each indi
`malware . However , malware usually encrypts its sensitive
`cates that the decompressed installation package is abnor
`fields , thus rendering existing malware detection method
`mal .
`inadequate in accurately directly detecting malware .
`Yet in another embodiment , a non - transitory computer
`50 readable storage medium , wherein the computer readable
`SUMMARY
`storage medium stores a program which comprises codes or
`instructions to cause a processor circuitry to execute opera
`The embodiments of the present disclosure provide a
`tions for detecting malware in
`a mobile terminal . The
`method , device and system for detecting malware in
`a
`operations may include : decompressing the installation
`mobile terminal accurately .
`55 package to obtain a decompressed installation package ;
`In an embodiment , a method for detecting malware in a
`detecting the decompressed installation package to obtain a
`mobile terminal is disclosed . The method includes at least
`first detection result ; sending the decompressed installation
`the following operations : obtaining an installation package
`package to
`a cloud system ; receiving a second detection
`of a software which is to be checked ; decompressing the
`result returned from the cloud system based upon the cloud
`installation package to obtain a decompressed installation 60 performing a malware check on the decompressed installa
`package ; detecting the decompressed installation package to
`tion package ; determining that the software being checked is
`obtain a first detection result ; sending the decompressed
`a malware , if one or both of the following is found : the first
`installation package to a cloud system ; receiving a second
`detection result and the second detection result each indi
`detection result returned from the cloud system based upon
`cates that the decompressed installation package is abnor
`the cloud performing a malware check on the decompressed 65 mal .
`installation package ; determining that the software being
`The various embodiments of the present disclosure
`checked is a malware , if one or both of the following is
`enables the mobile terminal not only detecting malware
`
`

`

`US 9 , 800 , 609 B2
`
`locally , but also detected more accurately by a powerful
`example , a decompressed APK ) , and obtaining a first scan
`cloud system with more processing resources .
`ning result , ( 2 ) performing a binary scanning to feature
`codes contained in the decompressed installation package to
`BRIEF DESCRIPTION OF THE DRAWINGS
`obtain a second scanning result ; ( 3 ) performing a authority
`5 limits file scanning on the decompressed installation pack
`FIG . 1 shows a flowchart which illustrates an exemplary
`age to obtain a third scanning result ; and ( 4 ) indicating in the
`method for detecting malware in a mobile terminal , accord
`first detection result that the decompressed installation pack
`ing to an embodiment of the disclosure .
`age is abnormal , if anyone of the following is found : the first
`FIG . 2a illustrates an exemplary system diagram imple
`scanning result , the second scanning result , and the third
`menting a method for detecting malware in a mobile termi - 10 scanning result each indicates that the decompressed instal
`nal , according to an embodiment of the disclosure .
`lation package is abnormal .
`FIG . 2b is an exemplary system diagram depicting an end
`The heuristic scanning to obtain the first scanning result
`system and a cloud system , according to an embodiment of
`may include scanning ( A ) an installation root directory , ( B )
`the disclosure .
`is resource files , and ( C ) basic dependent library of the decom
`FIG . 2c shows another flowchart which illustrates an 150
`pressed installation package ( such as a decompressed APK )
`exemplary method for detecting malware in a mobile ter
`respectively . More specifically , each of the scanning in step
`minal , according to another embodiment of the disclosure .
`103 may further be described as follows :
`FIG . 3 shows a simplified structure diagram of a mobile
`terminal which detects malware , according to an embodi -
`( A ) The performing of the scanning of each of the
`20 installation root directory , resource files and basic dependent
`ment of the disclosure .
`FIG . 4 shows an exemplary functional structure diagram
`library of the decompressed installation package , respec
`of a mobile terminal which detects malware , according to an
`tively , to obtain the first detection result may include scan
`ning the installation root directory of the decompressed
`embodiment of the disclosure .
`installation package and indicating in the first scanning
`DETAILED DESCRIPTION OF THE
`25 result that the decompressed installation package is abnor
`mal , if anyone of the following takes place : a preset con
`EMBODIMENTS
`ventional file is not found under the installation root direc
`The various embodiments of the present disclosure are
`tory or an abnormal file is found under the installation root
`further described in details in combination with attached
`directory and wherein the abnormal file is an executable
`drawings and embodiments below . It should be understood 30 ( portable ) file , i . e . , the abnormal file is not an Executable and
`that the specific embodiments described here are used only
`Linkable Format ( ELF ) file or Shell file .
`to explain the present disclosure , and are not used to limit the
`The preset conventional file may be set according to
`present disclosure . In addition , for the sake of keeping
`actual needs , for example , the preset conventional file may
`description brief and concise , the newly added features , or
`be an assets file , a res file , a layout file , a dex file , or an
`features that are different from those previously described in
`35 Extensible Markup Language ( xml ) file .
`each new embodiment will be described in details . Similar
`( B ) The scanning resource files contained in the decom
`features may be referenced back to the prior descriptions in
`pressed installation package , and indicating in the first
`a prior numbered drawing or referenced ahead to a higher
`scanning result that the decompressed installation package is
`numbered drawing .
`abnormal , if other types of files exist in addition to the preset
`The embodiments of the present disclosure provide a 40 file type . The preset file type may be set according to actual
`needs , for example , resource files may include XML files ,
`method , a device and a system for detecting malware in a
`mobile terminal , which may be applied to an Android
`PNG files , and MP3 files , so the first scanning result may
`system . Each of the following embodiments illustrates an
`indicate that the decompressed installation package is abnor
`exemplary implementation .
`mal if other types of files exist .
`Embodiment 1 relates to a device which may be inte - 45
`( C ) Scanning the basic dependent library ( for example , a
`lib file ) contained in the decompressed installation package ,
`grated into a mobile terminal for detecting malware in the
`mobile terminal . The mobile terminal may be a smartphone ,
`and indicating in the first scanning result that the decom
`a tablet PC , an e - book reader , a MP3 ( Moving Picture
`pressed installation package is abnormal , if there exist other
`Experts Group Audio Layer III ) player , a MP4 ( Moving
`types of files in addition to the preset file type or if a file
`Picture Experts Group Audio Layer IV ) player , a laptop 50 format does not comply with the preset rules .
`computer , a desktop computer or any electronic device
`In other words , the first scanning result indicates that the
`which runs applications and is capable of connecting to a
`decompressed installation package is abnormal , if anyone or
`network .
`more of the above circumstances exists , wherein the preset
`FIG . 1 shows a flowchart which illustrates an exemplary
`file type and preset rules may be set according to actual
`method for detecting malware in a mobile terminal , accord - 55 needs . An example of the basic dependent library may be a
`ing to an embodiment of the disclosure . The exemplary
`lib folder , a lib folder generally may contain three file
`operations may include at least the following steps :
`directories including armeabi , armeabiv7 , and x86 , and the
`Step 101 : Obtaining an installation package of software
`file format must comply with the ELF rules ; the first
`which is to be checked . For example , the installation pack -
`scanning result indicates that the decompressed installation
`age of the software may be an Android Package ( APK ) .
`60 package is abnormal if there exist other types of files .
`Step 102 : Decompressing the installation package of
`The performing of binary scanning on feature codes
`software to obtain a decompressed installation package ,
`contained in the decompressed installation package ( for
`example , a decompressed APK ) may obtain a second scan
`such as a decompressed APK in the above example .
`Step 103 : Detecting the decompressed installation pack -
`ning result . For example , performing a binary scanning on
`age to obtain a first detection result . The operation may 65 feature codes ( for example , phone numbers and C & C web
`further include the following : ( 1 ) performing a heuristic
`sites ) contained in the decompressed installation package ,
`scanning of the decompressed installation package ( for
`and the second scanning result may indicate that the decom
`
`

`

`US 9 , 800 , 609 B2
`
`mal , if anyone of the following takes place : the analysis
`pressed installation package is abnormal , if there exist
`result , the first comparison result and the second comparison
`feature codes similar to a preset virus sample .
`result each indicates that the decompressed installation
`The performing of an authority limits file scanning on the
`package is abnormal .
`decompressed installation package ( for example , a decom
`Accordingly , the cloud system may indicate in the second
`pressed APK ) may obtain a third scanning result . The 5
`detection result that the decompressed installation package
`performing of the authority limits file scanning on the
`is abnormal , if anyone or more of the following takes place :
`decompressed installation package may indicate in the third
`the analysis result , the first comparison result and the second
`scanning result that the decompressed installation package is
`comparison result each indicates that the decompressed
`abnormal , if there exists a dangerous authority limits com
`bination . The authority limits file may specifically be an 10 installation package is abnormal .
`Android Manifest . xml file , which may contain such infor -
`Furthermore , the cloud system may recompile the Dalvik
`mation as the package name , Activity and Service names ,
`VMware ( a Java VMware ) in the Android 2 . 2 source codes ,
`monitored broadcast type , receiver name , and required
`log the parameters of some APIs in the sensitive framework
`layer by using the Hook technology , and run the target
`authorities .
`The first detection result may indicate that the decom - 15 decompressed installation package ( an APK ) by using the
`pressed installation package is abnormal , if anyone of the
`recompiled Dalvik VMware to obtain related information ,
`following is found : the first scanning result , second scanning
`so as to determine whether the decompressed installation
`result , and / or third scanning result each indicates that the
`package is abnormal .
`Step 105 : Receiving the second detection result returned
`decompressed installation package is abnormal .
`In other words , the first detection result may indicate that 20 from the cloud system based upon the cloud performing a
`the decompressed installation package is abnormal , if any -
`malware check on the decompressed installation package .
`one or more of the following takes place : the first scanning
`Step 106 : Determining that the software being checked is
`result , second scanning result , and third scanning result each
`a malware , if one or both of the following is found : the first
`indicates that the decompressed installation package is
`detection result and the second detection result each indicate
`abnormal .
`25 that the decompressed installation package is abnormal .
`Step 104 : Sending the decompressed installation package
`Otherwise , determining that the software to be checked is
`( for example , a decompressed APK ) to a cloud system ,
`not malware if neither the first detection result nor the
`based upon the cloud system performing a malware detec -
`second detection result indicates that the decompressed
`tion on the decompressed installation package , and for the
`installation package is abnormal .
`convenience of description , the result obtained by the cloud 30
`FIG . 2a illustrates an exemplary system diagram ( 200 )
`system after performing malware detection is called the
`implementing a method for detecting malware in a mobile
`terminal ( 224 ) , according to an embodiment of the disclo
`second detection result .
`Step 104 may further include the following operations :
`sure . In an embodiment , the device may be integrated into
`( 1 ) The cloud system analyzing the authority limits file
`the mobile terminal ( 224 ) , wherein the mobile terminal may
`contained in the decompressed installation package , and 35 run on an Android system , and the software installation
`obtains an analysis result . For example , the cloud system
`package may be an APK .
`may indicate in the analysis result that the decompressed
`As shown in FIG . 2a , the mobile terminal may transfer a
`installation package may be abnormal , if a name of a data
`decompressed installation package to a cloud system ( 222 )
`package in the authority limits file contained in the decom -
`via a base station ( 226 ) . The cloud system ( 222 ) may include
`pressed installation package is the same as or similar to a 40 multiple servers ( 222a to 222d ) , which communicate with
`name of a virus package in a preset database . The cloud
`each other via an Ethernet and process the decompressed
`system may indicate in the analysis result that the decom -
`installation package cooperatively . In other words , malware
`pressed installation package is abnormal , if a combination of
`detection may include at least two parts : one part may be
`authority limits quantity requested by the decompressed
`implemented within the mobile terminal ( 224 ) ( also known
`installation package exceeds the combination of authority 45 as an end system ) , and the other part is implemented in a
`limits quantity provided by the type of software which is to
`cloud system ( 200 ) .
`be checked . The cloud system may indicate in the analysis
`FIG . 2b is an exemplary system diagram depicting an end
`result that the decompressed installation package is abnor -
`system and a cloud system , according to an embodiment of
`mal , if a signature in the authority limits file contained in the
`the disclosure . As shown in FIG . 2b , the end system ( 224 )
`decompressed installation package is the same as or similar 50 ( i . e . , the mobile terminal ) may perform mainly functions
`to a signature of a virus in a preset database .
`such as : decompression ( 2241 ) , heuristic scanning ( 2242 ) ,
`( 2 ) The cloud system cloud system performing similarity
`binary scanning ( 2243 ) , and authority limits file scanning
`comparison between the codes in executable files contained
`( 2244 ) . The cloud system ( 200 ) may mainly perform func
`in the decompressed installation package and codes in a
`tions such as : secondary analysis ( 2221 ) of an authority
`preset sample file , in order to obtain a first comparison 55 limits file ( for example , a xml file ) , similarity comparison
`result . For example , opening a reverse classes . dex file ,
`( 2222 ) of the codes contained in the executable files , and an
`clustering and eliminating similar codes , and comparing the
`analysis of the dex file ( 2223 ) , and dynamic execution
`similarity between the codes in
`a sample and the target
`( 2224 ) .
`codes , wherein the similarity may specifically be indicated
`FIG . 2c shows another flowchart which illustrates an
`by a value in a range from 0 to 1 .
`60 exemplary method for detecting malware in a mobile ter
`( 3 ) The cloud system cloud system performing similarity
`minal ( 224 ) , according to another embodiment of the dis
`comparison between the Application Programming Interface
`closure . The method may include at least the following
`( API ) call a tree of executable files contained in the decom -
`operations :
`pressed installation package and the API call tree in a preset
`Step 201 : The mobile terminal ( 224 ) may obtain an APK
`sample file , in order to obtain a second comparison result . 65 to be checked .
`( 4 ) The cloud system indicating in the second detection
`Step 202 : The mobile terminal decompresses the obtained
`result , that the decompressed installation package is abnor -
`APK to obtain a decompressed APK . For example , the
`
`

`

`US 9 , 800 , 609 B2
`
`broadcast types , receiver name , and required authorities , to
`mobile terminal ( 224 ) may decompress the APK in a ZIP
`name a few . On the mobile terminal side , the scanning may
`format and this step therefore may not consume excessive
`mainly be checking whether the AndroidManifest . xml file
`CPU resources because the APK installation process is only
`a decompression process .
`may contain any dangerous authority limits combination ,
`Step 203 : The mobile terminal checks the decompressed 5 such as virus sample learning , which shows that some
`viruses may monitor short messages and network status . In
`APK to obtain a first detection result . For example , step 203
`may further include the following scanning operations :
`this regard , the analysis of the Android Manifest . xml file may
`( 1 ) Performing a heuristic scanning ( 2242 ) of the decom -
`be mainly to check the combination of short message and
`pressed APK and obtaining a first scanning result , such as
`network authorities . If detected a dangerous authority limits
`scanning the installation root directory , resource files , and 10 combination , indicates in the third scanning result that the
`basic dependent library of the decompressed APK respec -
`decompressed installation package may be abnormal .
`tively , and obtaining a first scanning result .
`( 4 ) The detecting and checking of the decompressed files
`More specifically , scanning the APK root directory con -
`may also include indicating in the first detection result that
`tained in the decompressed APK may detect whether there
`the decompressed APK may be abnormal , if anyone of the
`exists any conventional files ( including assets files , res files , 15 following takes places : the first scanning result , second
`layout files , dex files , and xml files ) under the APK root
`scanning result , and third scanning result each indicates that
`directory . If yes , indicate in the first scanning result that the
`the decompressed installation package is abnormal .
`decompressed installation package is abnormal ; if there exist
`A
`ccordingly , the first detection result may indicate that
`some abnormal files ( files other than the conventional files )
`the decompressed APK is abnormal if anyone or more of the
`under the APK root directory , determining or judging 20 following takes place : the first scanning result , second
`whether the abnormal files are executable files ( portable ) , for
`scanning result , and third scanning result each indicates that
`example , determining whether the abnormal files are ELF
`the decompressed APK is abnormal .
`files or Shell files , and afterwards , indicate in the first
`Step 204 : The mobile terminal ( 224 ) sends the decom
`scanning result that the decompressed installation package
`pressed APK to the cloud system ( 222 ) .
`may be abnormal if the abnormal files are executable files . 25
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket