WO2015124017A1 - 基于智能终端设备安装应用程序的方法与装置 - Google Patents

基于智能终端设备安装应用程序的方法与装置 Download PDF

Info

Publication number
WO2015124017A1
WO2015124017A1 PCT/CN2014/093595 CN2014093595W WO2015124017A1 WO 2015124017 A1 WO2015124017 A1 WO 2015124017A1 CN 2014093595 W CN2014093595 W CN 2014093595W WO 2015124017 A1 WO2015124017 A1 WO 2015124017A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
authorization
permission
interface
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.)
Ceased
Application number
PCT/CN2014/093595
Other languages
English (en)
French (fr)
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
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
Priority claimed from CN201410060681.0A external-priority patent/CN103839000B/zh
Priority claimed from CN201410060683.XA external-priority patent/CN103761471A/zh
Priority claimed from CN201410060381.2A external-priority patent/CN103870306A/zh
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to US15/120,378 priority Critical patent/US20170068810A1/en
Publication of WO2015124017A1 publication Critical patent/WO2015124017A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/52Monitoring 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/53Monitoring 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Definitions

  • the present invention relates to a mobile intelligent terminal operating system platform technology, and in particular to a method and apparatus for installing an application based on a smart terminal device.
  • the Android platform is a Linux-based open source mobile operating system platform consisting of an operating system, user interface and applications, and is completely open to third-party applications. Due to the openness of the Android platform, application developers have more freedom in developing applications, which has attracted many application developers. Application developers have also developed and provided a large number of Android-based Android. The application, the installation package of this application is released in the form of an APK (Android Package), and the application is run by installing the Android installation package, so that more and more applications can be hosted on Android. on the platform. As the world's most popular mobile operating system platform, the Android platform has covered billions of mobile terminals and numerous applications.
  • the Android platform designed a security access policy based on granting behavior rights.
  • the application involves the operation of user security, for example, the operation of reading the user's private information, or Operations that result in a loss of user fees require the user to authorize the application.
  • the application needs to perform operations such as sending a text message, accessing contact data, reading memory card data, etc., reading user privacy information after installation, and using a network connection to increase user fees, it is necessary to install Applying the corresponding behavior permission to the user, that is, in the application installation process, the behavior permission statement requiring the user authorization is displayed to the user through the mobile terminal, so that the user decides whether to grant the application access authority for performing the user security operation.
  • the user can only grant the behavior permission of the application application as a whole, that is, the intelligent terminal device operating system grants the behavior authority as a whole. Therefore, when the application is installed, after the user is presented with the behavior permission service requested by the application, the user accepts all the behavior permission services requested by the application to continue to install the application, or can only cancel the installation and exit the application.
  • the app is installed. For example, when a user installs a KC VoIP application, the Android platform displays security-related behaviors requiring user authorization on the display interface of the mobile terminal according to the behavior-based security access policy.
  • Permissions for example, reading mobile terminal status and ID, intercepting outgoing calls, directly calling phone numbers, editing SMS or MMS, sending text messages, recordings, and precise GPS location information, etc., if the user authorizes the KC VoIP application to perform all of the above For safe operation, you can continue to install by clicking the next control on the display interface. After installing the KC VoIP application, the KC VoIP application will have access to user security information such as user recording information and accurate GPS location information. If the user does not authorize the KC VoIP application to perform all of the above security operations, you can quit the current KC VoIP application installation by clicking the Cancel Control on the display interface.
  • the use of the Android platform can only grant the behavior permission to the application as a whole, and the malicious application for the Android platform is greatly increased.
  • the malicious application adds multiple influences on the user's security. Behavior rights, for example, sending text messages, reading contacts, networking, recording, reading user precise GPS location information, etc., binding to the behavioral permissions required for the malicious application to run normally, and plausible The name, function, and application attract users to install.
  • the added behavioral authority that affects the user's security is placed in a place that the user does not pay much attention to.
  • the existing Android platform provides a security application to provide active defense and behavior rights management functions, that is, by running a security application, users can select applications that need to be disabled.
  • the behavioral rights of the program that is, by running the security application, the user's super administrator privileges (ie root privileges) can be provided, so that the user can use the super administrator rights to modify and update the behavior rights of each application, thereby enabling
  • the application is running, it no longer enjoys the behavior permissions granted by the user during the installation of the application, so that in subsequent applications, the application can be prevented from posing a threat to user security.
  • this method cannot effectively avoid the security risks that the user brings to the user during the time period before the application is disabled by the security application, and the user's security information is in the time period. Within, it may still be stolen or leaked, causing losses to the user, resulting in reduced user security. Further, some applications do have a good experience point, but since the user is worried that the behavior of the application application may lead to the disclosure of personal privacy information, the application is not selected, which not only reduces the user's The business experience also brings great economic losses to application developers.
  • the present invention has been made in order to provide an overcoming of the above problems or at least partially A method and apparatus for installing an application based on a smart terminal device, a computer program, and a computer readable medium, which solve the above problems.
  • a method for installing an application based on a smart terminal device comprising:
  • the application authorization permission list interface is provided for modification.
  • the interface of the application authorization permission list includes one or more behavior rights that the user selectively authorizes the application to be installed, and records the modification of the application authorization permission list;
  • the application's behavior permissions are updated according to the modified record of the list of authorized permissions for the application.
  • an apparatus for installing an application based on a smart terminal device includes: a monitoring module, a loading module, and a rights configuration module, wherein
  • a monitoring module configured to notify the loading module after the application needs to read the configuration information file during the installation process of the application
  • a loading module configured to load, according to the received notification, an application authorization permission list interface set for the to-be-installed application, where the application authorization permission list interface provides an interface for modifying an application authorization permission list, including a user Recording changes to the list of authorized permissions for the application for one or more behavior rights that are selectively authorized for the application to be installed;
  • the permission configuration module is used to update the behavior permission of the application according to the modification record of the application authorization permission list after the application is installed.
  • a method for installing an application based on a smart terminal device comprising:
  • the application authorization permission list interface is provided for modifying the application authorization An interface of the permission list, including one or more behavior rights that the user selectively authorizes for the application to be installed;
  • an apparatus for installing an application based on a smart terminal device includes: a monitoring module, a loading module, and a rights configuration module, wherein
  • a monitoring module configured to perform an application installation, and notify the loading module after monitoring that the application needs to read the configuration information file
  • an authorization authorization list interface for loading an application set for the application to be installed according to the received notification
  • An authorization authorization list interface where the application authorization permission list interface provides an interface for modifying an application authorization permission list, and includes one or more behavior rights that are selectively authorized by the user for the to-be-installed application;
  • the permission configuration module is configured to configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list interface, and complete the installation of the application.
  • a method for installing an application based on a smart terminal device comprising:
  • an apparatus for installing an application based on a smart terminal device includes: a monitoring module, a loading module, and a rights configuration module, wherein
  • a monitoring module configured to perform an application installation, and notify the loading module after monitoring that the application needs to read the configuration information file
  • a loading module configured to load, according to the received notification, a list of application authorization rights preset by the user for the to-be-installed application, where the application authorization permission list includes a user selectively authorized for the to-be-installed application Or multiple behavior rights;
  • the permission configuration module is configured to configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list, and complete the installation of the application.
  • a computer program comprising computer readable code, which when executed by an electronic device causes the method based on the smart terminal device to install an application to be executed.
  • a computer readable medium storing a computer program as described above is provided.
  • the method and apparatus for installing an application based on the smart terminal device according to the present invention can be re-selected and determined by the installation application installation, and the authority that can be granted to the application and the permission granted are prohibited, so that the update application is targeted during the installation process.
  • the behavior authority granted by the smart terminal device operating system, or the method and apparatus for installing an application based on the smart terminal device according to the present invention can select and determine the behavior authority that can be granted to the application and the behavior for prohibiting the grant before installing the application.
  • Permissions when the application is installed, configure the user's authorization rights for the application in advance, thereby solving the problem of prohibiting the application from obtaining the user's sensitive behavior before installing the application.
  • the limited authorization enables the application to use the user's pre-set authorization authority to access the corresponding technical problems, and obtains the beneficial effects that can ensure the normal use of the business functions provided by the application and effectively protect the user's security.
  • FIG. 1 is a flowchart of a method for installing an application based on a smart terminal device according to an embodiment of the present invention.
  • FIG. 2 shows another method flow of installing an application based on an intelligent terminal device according to an embodiment of the present invention
  • FIG. 3 is a flowchart of still another method for installing an application based on an intelligent terminal device according to an embodiment of the present invention
  • FIG. 4 is a diagram showing the structure of an apparatus for installing an application based on an intelligent terminal device according to an embodiment of the present invention
  • Figure 5 shows a block diagram of an electronic device for performing the method of the present invention
  • Figure 6 shows a schematic diagram of a memory unit for holding or carrying program code implementing the method according to the invention.
  • the behavior authority applied to the user and the configuration information of the application are carried in the configuration information file of the application. Since the configuration information file is generated by the application developer by signature, the configuration information file cannot be parsed. And modify the parsed configuration information file to change the behavior permission of the application application.
  • a method for installing an application based on an intelligent terminal device is proposed. The behavior permission applied by each application is obtained in advance, and the behavior authority of the application application is selectively authorized by the user before the application is installed. In order to enable users to select and authorize the behavior rights requested by the application according to their own functional requirements and security considerations, generate a list of application authorization rights, and trigger the application during the application installation process.
  • the generated list of application authorization permissions is used as the behavior permission after the application is installed, so that the user can normally use the business functions provided by the application, and can effectively protect the user security, or update the application through the application authorization permission list.
  • the behavior permission granted to the operating system of the smart terminal device during the installation process so that the application will generate the list of application authorization rights as the behavior permission of the application after installation, thereby ensuring that the user can use the application normally.
  • FIG. 1 is a flowchart of a method for installing an application based on an intelligent terminal device according to an embodiment of the present invention.
  • the operating platform of the smart terminal device includes but is not limited to an Android platform. Referring to Figure 1, the process includes:
  • Step 101 During the process of installing the application, after monitoring that the application needs to read the configuration information file, loading an application authorization permission list interface set for the to-be-installed application, where the application authorization permission list interface is provided An interface for modifying a list of application authorization rights, including one or more behavior rights that are selectively authorized by the user for the application to be installed, and recording a modification of the application authorization permission list;
  • loading the application authorization permission list interface set for the to-be-installed application includes:
  • A11 parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • some applications correspond to There is a list of application authorization permissions, and the list of application authorization permissions is tagged with the application ID.
  • the behavior authority authorized by the user for the application is stored. If there is no behavior permission corresponding to the application in the list, there is no specific permission suggestion, but the user can still authorize or prohibit all permissions.
  • the preset application authorization permission list library can be obtained by the following method:
  • the application package can be obtained through the official application download site, or the application package provided by the regular application provider can be obtained from other channels. For example, get an application package from the application carrier website.
  • the application package can be uploaded by the application developer, uploaded by the application operator, or a genuine application package uploaded through other channels, as long as the genuine application file can be obtained. Pack it.
  • obtaining the application file package through the formal way can ensure the legality and rationality of the application application permission, and avoid illegally modifying the application file package by other methods, so that the illegally modified application maliciously applies more. Behavioral permissions that involve user security.
  • the behavior permission of the application for the smart terminal device operating system can be obtained.
  • the application file package is an APK file
  • each APK file includes binary code information, resource information, configuration information files, and the like of the application.
  • the configuration information file is the AndroidManifest.xml file in the APK file, which must be defined and included in each application. It describes the name, version, permissions, and referenced library files of the application.
  • parsing the configuration information file in the application file package includes: decompressing an application file based on the Android platform, and obtaining a configuration information file of the encrypted global variable description, that is, an AndroidManifest.xml file, from the decompressed application file, and Decrypt the encrypted configuration information file to obtain the decrypted original configuration information file: AndroiManifest.xml file; scan the permission description part in the AndroidManifest.xml file to obtain the behavior permission list applied by the application, and the behavior permission list includes The behavior permission is the behavior permission applied by the application.
  • the application's behavior permissions are declared in the AndroidManifest.xml file as follows:
  • the Extensible Markup Language (XML) file parser in Java may be used to parse the permission description part in the AndroidManifest.xml file to obtain the application application behavior. List of permissions.
  • XML Extensible Markup Language
  • B12 Generate an application authorization permission list stored in the application authorization permission list library according to the authorized behavior permission selected by the user from the acquired behavior permission of the application.
  • the user requests the behavior rights of each application, according to its own business requirements and security considerations, as an optional embodiment, in the application installation process, the configuration information file read by the application corresponds to The installation interface separately authorizes each application, and the intelligent terminal device operating system generates a list of authorization rights of the application corresponding to the application according to the authorization behavior permission selected for each application, that is, the record user selects in the installation interface. And the authorized behavior permission for the subsequent loading application, wherein the configuration information file contains the behavior permission granted by the intelligent terminal device operating system to the application.
  • Each application corresponds to an application authorization permission list, and the application authorization permission list is marked with the application identification.
  • a plurality of application authorization permission lists constitute an application authorization permission list library, and the application authorization permission list includes not only one or more behavior rights authorized by the user for the application, but also the user is an application.
  • the program prohibits one or more behavior rights of the authorization, and the subsequent behavior rights for updating the application conform to the display of the application authorization permission list interface.
  • the behavior authority in the application authorization permission list is attributed to authorization or prohibition of authorization, and the authorization behavior permission included in the application authorization permission list is part of the behavior authority granted by the intelligent terminal device operating system, if The behavior permission of the application is in the application authorization permission list, and its attribute is authorization, which allows the application to perform the application permission access; if the applied behavior permission is in the application authorization permission list, the attribute is prohibition authorization, then the application is rejected.
  • the program performs permission to access the application.
  • the method may further include: before selecting the authorization authority according to the behavior authority applied by the user from the acquired application, the method further includes:
  • the behavior permission of the obtained application application is displayed.
  • the user may also be provided with an authorization setting interface (application authorization permission list interface), and the behavior permission of the application application is displayed on the authorization setting interface, and the user authorizes the displayed behavior authority on the authorization setting interface.
  • an authorization setting interface application authorization permission list interface
  • the behavior permission of the application application is displayed on the authorization setting interface, and the user authorizes the displayed behavior authority on the authorization setting interface.
  • the method may further include:
  • the obtained behavior rights are classified into privacy rights and other rights.
  • the privacy rights the user needs to be reminded to pay attention to the privacy of the user, and for other rights, the user may According to the application of the application, you don't need to pay too much attention and grant permission.
  • the privacy rights include but are not limited to the following information: sending a short message
  • Each privacy right corresponds to a function.
  • the corresponding function is SmsManager.sendTextMessage, SmsManager.sendDataMessage, SmsManager.sendMultipartTextMessage, and the like.
  • the required permission is the behavior permission authorized by the user to run the application. If the authorization permission is absent, the application cannot run normally. If the user needs to install the application, the necessary permission must be applied to the application. Make all authorizations, otherwise you will not be able to install them.
  • Non-essential permissions are behavioral rights that are authorized by the user for the application, but are optional and do not affect the operation of the application. If the behavior is not authorized by the user, it does not affect the installation and operation of the application.
  • the required rights may include: writing an address book, making a call, etc.
  • the non-essential rights may include: reading location information, accessing the Internet, reading recorded information, and the like.
  • the prompt information of the non-essential rights is further displayed to the user in the authorization setting interface.
  • the prompt information can be: non-required permission to cancel, or the permission is optional. Please authorize according to its own security policy. That is, users are advised to carefully select the behavior rights granted to the application based on their privacy and security considerations when authorizing non-essential rights.
  • verification can also be performed to determine whether all the necessary permissions are necessary for the application to run, that is, the legality and rationality of the necessary permissions applied by the application are verified.
  • Validation methods can be utilized including isolation sandboxes, and/or static Code analysis, and/or automatic code feature scanning, etc., to determine whether each behavioral permission in the required permissions is an essential behavioral permission required for the application to run, and if not, the behavioral permissions are Removed from the required permissions and presented to the user as non-essential permissions.
  • the application of static code analysis can quickly and accurately find and locate the security risks and vulnerabilities of the necessary permissions applied by each application.
  • the quarantine sandbox uses virtual machine technology to clone a partition or all partitions of the hard disk in the Android platform through a virtual machine and form a shadow, which is called a shadow mode.
  • the shadow mode has the same architecture and functions as the Android platform system. Users can run applications in shadow mode and perform any operations on the application, such as deleting files, installing and testing various applications (including rogue applications, virus applications). They are all wrapped in quarantine sandboxes.
  • the interception of user privacy information by malicious applications is restricted to the quarantine sandbox. As long as the quarantine sandbox is closed, the operation that harms the Android platform can be eliminated.
  • the necessary permission of the application application involves permission abuse, that is, whether the application applies to the user for the purpose of not applying for the purpose for various purposes. Behavioral authority. If the application requests additional behavior rights through the necessary permissions, the user's private information may be leaked. Therefore, the behavior permission of the additional application needs to be removed from the required permissions. For example, if a stand-alone game application applies for permission to read a user's phone book, the read user's phone book may belong to the behavioral rights that the stand-alone game application should not apply for, thereby improving the security of the user's privacy.
  • the use of quarantine sandboxes, static code analysis, automatic code feature scanning, etc. to verify the legality and rationality of the necessary permissions for application applications is a well-known technique, which is omitted here.
  • the user pays attention to the privacy rights involved, thereby considering whether the rights need to be granted to the application, thereby ensuring the privacy of the user; further,
  • the privacy rights are divided into required rights and non-essential rights, so that users can avoid unauthorized authorization for non-essential rights based on their own security policies, thereby improving user privacy security; and, for necessary rights, legitimacy and rationality
  • the verification can remove the behavior permission of the malicious application for additional application, and maximize the security of the user.
  • A13 loading the obtained application authorization permission list in the installation interface, and generating the application authorization permission list interface.
  • the installed application authorization permission list interface is used to replace the installation interface provided by the intelligent terminal device operating system during the installation process.
  • Loading the application authorization permission list interface set for the to-be-installed application includes: hooking the installation interface provided by the smart terminal device operating system to the application authorization permission list interface through the hook, and confirming or completing the application authorization After the permission list is modified, the jump to the installation interface provided by the operating system of the smart terminal device is ended.
  • the application can be found in the source code of the Android platform framework layer.
  • the class and interface that need to be inserted into the hook during installation and execution. These classes and interfaces are classes and interfaces that involve user privacy information.
  • the class of the hook inserted when the configuration information file needs to be read is made.
  • the interface points to the application authorization permission list preset in the embodiment of the present invention, instead of pointing to the configuration information file in the application file package, running the preset program code segment, loading the application authorization permission list to the current installation interface, and generating
  • the application authorizes the permission list interface, and after completing the application authorization permission list interface, points to the operation after reading the configuration information file of the application, so that the operation and the current after completing the application authorization permission list interface The operation is the same after reading the configuration information file of the application.
  • the next control is set to correspond to the class and interface of the insertion hook, and the pointing is read with the application.
  • the next control displayed after the behavior permission configuration of the application needs to be the same as the pointer of the class inserted into the hook.
  • the original application installer of the Android platform is replaced by modifying the source code, so as to implement the application authorization permission list loading in the embodiment of the present invention, wherein the method for replacing the original installer of the Android platform includes but is not limited to the following Several:
  • the new installer is selected by the user as the default installer of the Android platform. If the mobile terminal is over the root, the original application installation scheme of the Android platform can be directly replaced, and the original Android platform is replaced in the ROM of the mobile terminal.
  • Application installation scenario is possible to be used to the original application installation scheme of the Android platform.
  • Step 102 After the application completes the installation, update the behavior permission of the application according to the modification record of the application authorization permission list.
  • the subsequent installation process is a well-known technology, which is omitted here.
  • the application authorization permission list interface displayed to the user may be displayed in a line, and each line is sequentially as follows: the application applies for 11 permissions, is the application installed? (first line); 3 privacy rights (non-essential permission, recommended cancellation) (second line); read location information (third line, set optional box control before reading location information); send SMS (first Four lines, there is an optional box control before sending SMS; call (the fifth line, set the optional box control before dialing the phone); 8 other permissions (sixth line), etc.; at the bottom of the interface, set There are cancel controls and installation controls.
  • the application program can be installed according to the overall authorization policy of the Android platform.
  • the difference is that the application authorization permission list is the authorization authority and the prohibition permission set by the user for the application in advance.
  • the permissions of the application in the configuration information file carried by the application file package are not such that the configured behavior rights of the application conform to the display of the application authorization permission list interface.
  • the method may further include:
  • Step 103 Run a preset security application to update the authorization authority of the application, so that the application performs corresponding access according to the updated authorization authority when the application is subsequently run.
  • the user can run the security application in the update interface corresponding to the security application.
  • the Android platform determines the access API according to the record in the application authorization permission list set by the user for the application. Whether the permission of the API is disabled, if the permission to access the API is disabled, the application can prompt the user to select the modification through the human interface; if the user chooses to modify the permission, the Android platform allows the application to access the API, otherwise, the Android platform Notify the application to quit access.
  • API application program interface
  • the application file package to be installed may be security scanned before the application file package corresponding to the application is installed, to ensure the security of the application file package to be installed, and the installation maliciousness is reduced.
  • the probability of the application further comprises:
  • deep security scanning is performed on the application file package before installing the application file package, including but not limited to Trojan virus scanning, ad plug-in scanning, and vulnerability scanning.
  • Trojan virus scanning you can match the application file package with the features stored in the pre-stored malicious library.
  • the application file package matches the features in the malicious library, the application file package is prompted. Malicious programs and users are advised to ban installation of the application. This allows for a deep security scan of the application package to be installed before the application is installed, which can identify malicious applications and greatly reduce the probability of users installing malicious applications by mistake.
  • the application is installed according to the class and interface of the hook provided by the operating system of the smart terminal device, that is, the application is installed according to the existing installation process, and the smart terminal provided by the embodiment of the present invention is provided.
  • the third-party software of the device installation application after the installation of the application is completed, causes the installation interface of the existing application not to display the prompt information including the completion of the installation of the application, and triggers the loading of the application authorized by the user for the application.
  • the permission list interface enables the intelligent terminal device operating system to update the application according to the authorized behavior permission included in the loaded application authorization permission list interface, and is updated for the intelligent terminal device operating system during the installation process.
  • the behavior permission and further, after monitoring the update of the behavior permission granted by the application to the smart terminal device operating system during the installation process, triggering the display interface to display the prompt information including the installation completion of the application.
  • the user after installing the application, the user triggers selection and determines the behavior permission that can be granted to the application and the behavior permission that is prohibited from being granted.
  • the user after installing the application, the user updates the application by utilizing the authorization behavior rights contained in the application authorization permission list interface set in advance for the application.
  • the behavior permission granted by the program to the operating system of the smart terminal device during the installation process can prohibit the application from obtaining the authorization of the user for the sensitive behavior authority.
  • the embodiment of the present invention has a rights management mechanism before installation, that is, before the application is installed, the user can grant the selected behavior permission to the application to be installed; and, after the installation, the rights management mechanism, that is, in the application After the installation is completed, the user is allowed to modify the permission permission granted by the installed application, and the modified authorization authority is stored, so that the application program accesses according to the modified permission at runtime.
  • FIG. 4 shows an apparatus structure for installing an application based on an intelligent terminal device according to an embodiment of the present invention.
  • the device includes: a monitoring module, a loading module, and a rights configuration module, where
  • a monitoring module configured to notify the loading module after the application needs to read the configuration information file during the installation process of the application
  • the monitoring module does not display the prompt information including the installation completion of the application in the installation interface of the existing application, and notifies the loading module, and monitors the update when the application is installed.
  • the prompt information indicating that the installation of the application is completed is triggered on the installation interface.
  • the monitoring module may be further configured to: after monitoring the application accessing the application interface that requires the behavior permission, the Android platform determines the access application according to the record in the application authorization permission list set by the user for the application. Whether the permission of the program interface is disabled, if the permission to access the application interface is disabled, the user interface is prompted to select whether to modify; if the user chooses to modify the permission, the Android platform allows the application to access the application interface, otherwise, The Android platform notifies the application to exit.
  • a loading module configured to load, according to the received notification, an application authorization permission list interface set for the to-be-installed application, where the application authorization permission list interface provides an interface for modifying an application authorization permission list, including a user One for selective authorization of the application to be installed Or multiple behavior permissions, recording changes to the list of application authorization permissions;
  • the permission configuration module is used to update the behavior permission of the application according to the modification record of the application authorization permission list after the application is installed.
  • the loading module includes: a parsing unit, a query unit, and a loading unit (not shown), wherein
  • Parsing unit parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • obtaining the behavior permission of the application application includes: obtaining an application file package by using an official download website of the application; parsing the configuration information file in the application file package, and obtaining the behavior permission that the application needs to apply.
  • the parsing the configuration information file in the application file package includes: decompressing the application file based on the smart terminal device, obtaining the configuration information file of the encrypted global variable description from the decompressed application file, and performing the encrypted configuration information file Decrypt, obtain the decrypted original configuration information file, and scan the permission description part in the decrypted original configuration information file by using the extensible markup language file parser in Java.
  • the query unit is configured to query a preset application authorization permission list library according to the obtained application identifier, and obtain a list of application authorization rights corresponding to the application identifier;
  • setting the application authorization permission list library includes: collecting and obtaining the behavior permission of the application application for each application; and selecting and authorizing the behavior authority according to the behavior authority applied by the user from the acquired application, Generates a list of application authorization permissions stored in the application authorization permission list library.
  • Each of the applications corresponds to one of the application authorization permission lists, and the plurality of application authorization permission lists constitute an application authorization permission list library.
  • the loading unit is configured to load the obtained application authorization permission list in the installation interface, and generate the application authorization permission list interface.
  • the loading module may further include:
  • the first classification unit is configured to classify the obtained behavior permission of the application application as a privacy right for reminding the user to focus on and other rights for applying for direct authorization according to the application.
  • the loading module may further include:
  • the second classification unit is configured to divide the privacy rights into necessary rights necessary for running the application and optional non-essential rights to run the application, and present the prompt information of the non-essential rights to the user in the authorization setting interface.
  • the loading module may further include:
  • a verification unit for verifying the legality and rationality of the required authority of the application application by using an isolation sandbox, and/or static code analysis, and/or an automatic code feature scanning method to determine necessary permissions Is every behavior permission in the application necessary for the application to run? Less behavioral permissions, if not, remove the behavioral permissions from the required permissions and present them to the user as non-essential permissions.
  • the loading unit includes: a query subunit, a reconfiguration subunit, and an interface generation subunit, where
  • the query subunit is configured to find a class and an interface in the configuration information file of the application that needs to insert a hook in the source code of the platform component layer of the smart terminal device, where the class and the interface are classes and interfaces related to the user privacy permission. ;
  • a reconfiguration subunit for analyzing and modifying source code of the class and interface such that the class and interface of the hook inserted when the configuration information file needs to be read point to an application authorization authority set in advance for the application to be installed List
  • the interface generates a sub-unit, runs a preset program code segment, loads an application authorization permission list to the current installation interface, and generates the application authorization permission list interface.
  • the apparatus may further include:
  • a display module for presenting the behavior rights of the obtained application application.
  • the apparatus may further include:
  • the permission update module is configured to run a preset security application, and update the authorization behavior permission of the application, so that the application accesses according to the updated authorization behavior authority when the application is subsequently run.
  • the apparatus may further include:
  • the security scanning module is configured to perform security scanning on the application file package to be installed. If the application file package to be installed passes the security scan, the process of installing the application file package is executed; otherwise, the process ends.
  • the security scan includes, but is not limited to, Trojan virus scanning, advertisement plug-in scanning, and vulnerability scanning.
  • FIG. 2 is a flowchart showing a method for installing an application based on an intelligent terminal device according to an embodiment of the present invention. Referring to Figure 2, the process includes:
  • Step 201 Perform an application installation, and after monitoring that the application needs to read the configuration information file, load an application authorization permission list interface set for the to-be-installed application, where the application authorization permission list interface is provided for modification.
  • An interface for an application authorization permission list including one or more behavior rights that the user selectively authorizes for the application to be installed;
  • loading the application authorization permission list interface set for the to-be-installed application includes:
  • A211 parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • A212 Query a preset application authorization permission list library according to the obtained application identifier, and obtain a list of application authorization rights corresponding to the application identifier.
  • some applications correspond to an application authorization permission list, and the application authorization permission list is marked by the application identifier.
  • the behavior authority authorized by the user for the application is stored. If there is no behavior permission corresponding to the application in the list, there is no specific permission suggestion, but the user can still authorize or prohibit all permissions.
  • the preset application authorization permission list library can be obtained by the following method:
  • the application package can be obtained through the official application download site, or the application package provided by the regular application provider can be obtained from other channels. For example, get an application package from the application carrier website.
  • the application package can be uploaded by the application developer, uploaded by the application operator, or a genuine application package uploaded through other channels, as long as the genuine application file can be obtained. Pack it.
  • obtaining the application file package through the formal way can ensure the legality and rationality of the application application permission, and avoid illegally modifying the application file package by other methods, so that the illegally modified application maliciously applies more. Behavioral permissions that involve user security.
  • the application file package is an APK file
  • each APK file includes binary code information, resource information, configuration information files, and the like of the application.
  • the configuration information file is the AndroidManifest.xml file in the APK file, which must be defined and included in each application. It describes the name, version, permissions, and referenced library files of the application.
  • parsing the configuration information file in the application file package includes: decompressing an application file based on the Android platform, and obtaining a configuration information file of the encrypted global variable description, that is, an AndroidManifest.xml file, from the decompressed application file, and Decrypt the encrypted configuration information file to obtain the decrypted original configuration information file: AndroiManifest.xml file; scan the permission description part in the AndroidManifest.xml file to obtain the behavior permission list applied by the application, and the behavior permission list includes Behavioral rights are the behavioral rights of the application limit.
  • the application's behavior permissions are declared in the AndroidManifest.xml file as follows:
  • the Extensible Markup Language (XML) file parser in Java may be used to parse the permission description part in the AndroidManifest.xml file to obtain the application application behavior. List of permissions.
  • XML Extensible Markup Language
  • the user authorizes each application according to its own business requirements and security considerations according to its own business requirements and security considerations, and generates a pair according to the authorization behavior permissions selected for each application.
  • Each application corresponds to an application authorization permission list, and the application authorization permission list is marked with the application identification.
  • a plurality of application authorization permission lists constitute an application authorization permission list library, and the application authorization permission list includes not only one or more behavior rights authorized by the user for the application, but also the user is an application.
  • the program prohibits one or more behavior rights of the authorization, that is, the behavior authority in the application authorization permission list, whose attribute is authorization or prohibition authorization. If the application behavior authority is in the application authorization permission list, its attribute is authorization. , to allow the application to access the behavior of the application; if the application's behavior permission is in the application authorization permission list, and its attribute is to prohibit authorization, the application is denied access to the application.
  • the method may further include: before selecting the authorization authority according to the behavior authority applied by the user from the acquired application, the method further includes:
  • the behavior permission of the obtained application application is displayed.
  • the user is provided with an authorization setting interface (application authorization permission list interface), and the behavior permission of the application application is displayed on the authorization setting interface, and the user authorizes the displayed behavior authority on the authorization setting interface.
  • an authorization setting interface application authorization permission list interface
  • the behavior permission of the application application is displayed on the authorization setting interface, and the user authorizes the displayed behavior authority on the authorization setting interface.
  • the user can conveniently select the required behavior authority for authorization by means of the visual authorization setting interface.
  • the method may further include:
  • the obtained behavior rights are classified into privacy rights and other rights.
  • the privacy rights the user needs to be reminded to pay attention to the privacy of the user, and for other rights, the user may According to the application of the application, you don't need to pay too much attention and grant permission.
  • the privacy rights include but are not limited to the following information: sending a short message
  • Each privacy right corresponds to a function.
  • the corresponding function is SmsManager.sendTextMessage, SmsManager.sendDataMessage, SmsManager.sendMultipartTextMessage, and the like.
  • the required permission is the behavior permission authorized by the user to run the application. If the authorization permission is absent, the application cannot run normally. If the user needs to install the application, the necessary permission must be applied to the application. Make all authorizations, otherwise you will not be able to install them.
  • Non-essential permissions are behavioral rights that are authorized by the user for the application, but are optional and do not affect the operation of the application. If the behavior is not authorized by the user, it does not affect the installation and operation of the application.
  • the required rights may include: writing an address book, making a call, etc.
  • the non-essential rights may include: reading location information, accessing the Internet, reading recorded information, and the like.
  • the prompt information of the non-essential rights is further displayed to the user in the authorization setting interface.
  • the prompt information can be: non-required permission to cancel, or the permission is optional. Please authorize according to its own security policy. That is, users are advised to carefully select the behavior rights granted to the application based on their privacy and security considerations when authorizing non-essential rights.
  • verification can also be performed to determine whether all the necessary permissions are necessary for the application to run, that is, the legality and rationality of the necessary permissions applied by the application are verified.
  • the method of verification can utilize methods including isolation sandboxing, and/or static code analysis, and/or automatic code feature scanning to determine whether each behavioral permission in the required permissions is required for the application to run. Indispensable behavioral rights, if not, remove the behavioral rights from the required permissions and present them to the user as non-essential permissions.
  • the application is static Code analysis, which can quickly and accurately find and locate the security risks and vulnerabilities of the required permissions for each application.
  • the quarantine sandbox uses virtual machine technology to clone a partition or all partitions of the hard disk in the Android platform through a virtual machine and form a shadow, which is called a shadow mode.
  • the shadow mode has the same architecture and functions as the Android platform system. Users can run applications in shadow mode and perform any operations on the application, such as deleting files, installing and testing various applications (including rogue applications, virus applications). They are all wrapped in quarantine sandboxes.
  • the interception of user privacy information by malicious applications is restricted to the quarantine sandbox. As long as the quarantine sandbox is closed, the operation that harms the Android platform can be eliminated.
  • the necessary permission of the application application involves permission abuse, that is, whether the application applies to the user for the purpose of not applying for the purpose for various purposes. Behavioral authority. If the application requests additional behavior rights through the necessary permissions, the user's private information may be leaked. Therefore, the behavior permission of the additional application needs to be removed from the required permissions. For example, if a stand-alone game application applies for permission to read a user's phone book, the read user's phone book may belong to the behavioral rights that the stand-alone game application should not apply for, thereby improving the security of the user's privacy.
  • the use of quarantine sandboxes, static code analysis, automatic code feature scanning, etc. to verify the legality and rationality of the necessary permissions for application applications is a well-known technique, which is omitted here.
  • the user pays attention to the privacy rights involved, thereby considering whether the rights need to be granted to the application, thereby ensuring the privacy of the user; further,
  • the privacy rights are divided into required rights and non-essential rights, so that users can avoid unauthorized authorization for non-essential rights based on their own security policies, thereby improving user privacy security; and, for necessary rights, legitimacy and rationality
  • the verification can remove the behavior permission of the malicious application for additional application, and maximize the security of the user.
  • A213 loading the obtained application authorization permission list in the installation interface, and generating the application authorization permission list interface.
  • the installed application authorization permission list interface is used to replace the installation interface provided by the intelligent terminal device operating system during the application installation process.
  • Loading the application authorization permission list interface set for the to-be-installed application includes: hooking the installation interface provided by the smart terminal device operating system to the application authorization permission list interface through the hook, and confirming or completing the application authorization After the permission list is modified, the jump to the installation interface provided by the operating system of the smart terminal device is ended.
  • the classes and interfaces that need to be inserted in the application installation execution can be found in the source code of the Android platform framework layer. These classes and interfaces are classes and interfaces related to user privacy information, and analyze and modify the classes and interfaces.
  • the source code such that the class and interface of the hook inserted when the configuration information file needs to be read point to the list of application authorization rights preset in the embodiment of the present invention, and Non-pointing to the configuration information file in the application package, running a preset program code segment, loading the application authorization permission list to the current installation interface, generating the application authorization permission list interface, and completing the application authorization permission After the list interface, the operation after reading the configuration information file of the application makes the operation after completing the application authorization permission list interface the same as the operation after reading the configuration information file of the existing application.
  • the next control is set to correspond to the class and interface of the insertion hook, and the pointing is read with the application.
  • the next control displayed after the behavior permission configuration of the application needs to be the same as the pointer of the class inserted into the hook.
  • the original application installer of the Android platform is replaced by modifying the source code, so as to implement the application authorization permission list loading in the embodiment of the present invention, wherein the method for replacing the original installer of the Android platform includes but is not limited to the following Several:
  • the new installer is selected by the user as the default installer of the Android platform. If the mobile terminal is over the root, the original application installation scheme of the Android platform can be directly replaced, and the original Android platform is replaced in the ROM of the mobile terminal.
  • Application installation scenario is possible to be used to the original application installation scheme of the Android platform.
  • Step 202 Configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list interface, and complete the installation of the application.
  • the subsequent installation process is a well-known technology, which is omitted here.
  • the application authorization permission list interface displayed to the user may be displayed in a line, and each line is sequentially as follows: the application applies for 11 permissions, is the application installed? (first line); 3 privacy rights (non-essential permission, recommended cancellation) (second line); read location information (third line, set optional box control before reading location information); send SMS (first Four lines, there is an optional box control before sending SMS; call (the fifth line, set the optional box control before dialing the phone); 8 other permissions (sixth line), etc.; at the bottom of the interface, set There are cancel controls and installation controls.
  • the application program can be installed according to the overall authorization policy of the Android platform.
  • the difference is that the application authorization permission list is the authorization authority and the prohibition permission set by the user for the application in advance.
  • the permissions of the application in the configuration information file carried by the application file package are not such that the configured behavior rights of the application conform to the display of the application authorization permission list interface.
  • the method may further include:
  • Step 203 Run a pre-set security application to update the authorization permission of the application, so that the application performs corresponding access according to the updated authorization authority when the application is subsequently run.
  • the user can run the security application in the update interface corresponding to the security application.
  • the Android platform determines the access API according to the record in the application authorization permission list set by the user for the application. Whether the permission of the API is disabled, if the permission to access the API is disabled, the application can prompt the user to select the modification through the human interface; if the user chooses to modify the permission, the Android platform allows the application to access the API, otherwise, the Android platform Notify the application to quit access.
  • API application program interface
  • the application file package to be installed may be security scanned before the application file package is installed to ensure the security of the application file package to be installed, and the probability of installing the malicious application is reduced.
  • the method further comprises:
  • deep security scanning is performed on the application file package before installing the application file package, including but not limited to Trojan virus scanning, ad plug-in scanning, and vulnerability scanning.
  • Trojan virus scanning you can match the application file package with the features stored in the pre-stored malicious library.
  • the application file package matches the features in the malicious library, the application file package is prompted. Malicious programs and users are advised to ban installation of the application. This allows for a deep security scan of the application package to be installed before the application is installed, which can identify malicious applications and greatly reduce the probability of users installing malicious applications by mistake.
  • the user before installing the application, the user can select and determine the behavior permission that can be granted to the application and the behavior permission that is prohibited from being granted. In this way, for some sensitive behavior rights, for example, sending text messages, reading contacts, etc., the user can prohibit the application from obtaining the authorization of the user for sensitive behavior rights before installing the application.
  • Application permissions are configured with the authorization rights selected and determined by the user before installing the application. Therefore, even if the user accidentally installs and runs a malicious application, since the corresponding behavior permission has been banned by the user before installation, the security risk loss can be minimized, and the security of the Android platform can be effectively improved.
  • the embodiment of the present invention has a rights management mechanism before installation, that is, before the application is installed, the user can grant the selected behavior permission to the application to be installed; and, after the installation, the rights management mechanism, that is, in the application After the installation is completed, the user is allowed to modify the permission permission granted by the installed application, and the modified authorization authority is stored, so that the application program accesses according to the modified permission at runtime.
  • FIG. 4 shows an apparatus structure for installing an application based on an intelligent terminal device according to an embodiment of the present invention.
  • the device includes: a monitoring module, a loading module, and a rights configuration module, where
  • a monitoring module configured to perform an application installation, and notify the loading module after monitoring that the application needs to read the configuration information file
  • the monitoring module may be further configured to: after monitoring the application program accessing the application program interface that requires the behavior permission, the Android platform determines the access application according to the record in the application authorization permission list set by the user for the application program. Whether the permission of the program interface is disabled, if the permission to access the application interface is disabled, the user interface is prompted to select whether to modify; if the user chooses to modify the permission, the Android platform allows the application to access the application interface, otherwise, The Android platform notifies the application to exit.
  • a loading module configured to load, according to the received notification, an application authorization permission list interface set for the to-be-installed application, where the application authorization permission list interface provides an interface for modifying an application authorization permission list, including a user One or more behavior rights that are selectively authorized for the application to be installed;
  • the permission configuration module is configured to configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list interface, and complete the installation of the application.
  • the loading module includes: a parsing unit, a query unit, and a loading unit (not shown), wherein
  • Parsing unit parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • obtaining the behavior permission of the application application includes: obtaining an application file package by using an official download website of the application; parsing the configuration information file in the application file package, and obtaining the behavior permission that the application needs to apply.
  • the parsing the configuration information file in the application file package includes: decompressing the application file based on the smart terminal device, obtaining the configuration information file of the encrypted global variable description from the decompressed application file, and performing the encrypted configuration information file Decrypt, obtain the decrypted original configuration information file, and scan the permission description part in the decrypted original configuration information file by using the extensible markup language file parser in Java.
  • the query unit is configured to query a preset application authorization permission list library according to the obtained application identifier, and obtain a list of application authorization rights corresponding to the application identifier;
  • setting the application authorization permission list library includes: collecting and obtaining the behavior permission of the application application for each application; and applying according to the application acquired by the user The behavior permission selected and authorized in the permission generates a list of application authorization rights stored in the application authorization permission list library.
  • Each of the applications corresponds to one of the application authorization permission lists, and the plurality of application authorization permission lists constitute an application authorization permission list library.
  • the loading unit is configured to load the obtained application authorization permission list in the installation interface, and generate the application authorization permission list interface.
  • the loading module may further include:
  • the first classification unit is configured to classify the obtained behavior permission of the application application as a privacy right for reminding the user to focus on and other rights for applying for direct authorization according to the application.
  • the loading module may further include:
  • the second classification unit is configured to divide the privacy rights into necessary rights necessary for running the application and optional non-essential rights to run the application, and present the prompt information of the non-essential rights to the user in the authorization setting interface.
  • the loading module may further include:
  • a verification unit for verifying the legality and rationality of the required authority of the application application by using an isolation sandbox, and/or static code analysis, and/or an automatic code feature scanning method to determine necessary permissions
  • Each of the behavioral permissions in the action is an essential behavioral permission required by the application to run, and if not, the behavioral permission is removed from the required permissions and presented to the user as non-essential permissions.
  • the loading unit includes: a query subunit, a reconfiguration subunit, and an interface generation subunit, where
  • the query subunit is configured to find a class and an interface in the configuration information file of the application that needs to insert a hook in the source code of the platform component layer of the smart terminal device, where the class and the interface are classes and interfaces related to the user privacy permission. ;
  • a reconfiguration subunit for analyzing and modifying source code of the class and interface such that the class and interface of the hook inserted when the configuration information file needs to be read point to an application authorization authority set in advance for the application to be installed List
  • the interface generates a sub-unit, runs a preset program code segment, loads an application authorization permission list to the current installation interface, and generates the application authorization permission list interface.
  • the apparatus may further include:
  • a display module for presenting the behavior rights of the obtained application application.
  • the apparatus may further include:
  • the permission update module is configured to run a preset security application, and update the authorization behavior permission of the application, so that the application accesses according to the updated authorization behavior authority when the application is subsequently run.
  • the apparatus may further include:
  • the security scanning module is configured to perform security scanning on the application file package to be installed. If the application file package to be installed passes the security scan, the process of installing the application file package is executed; otherwise, the process ends.
  • the security scan includes, but is not limited to, Trojan virus scanning, advertisement plug-in scanning, and vulnerability scanning.
  • FIG. 3 is a flowchart of a method for installing an application based on an intelligent terminal device according to an embodiment of the present invention. Referring to Figure 3, the process includes:
  • Step 301 Perform an application installation, and after detecting that the application needs to read the configuration information file, load an application authorization permission list set by the user in advance for the to-be-installed application, where the application authorization permission list includes the user The one or more behavior rights of the to-be-installed application selectively authorized;
  • the loading user pre-authorization permission list set for the to-be-installed application includes:
  • A311 parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • A312 according to the obtained application identifier, query a preset application authorization permission list library, and obtain a list of application authorization rights corresponding to the application identifier;
  • some applications correspond to an application authorization permission list, and the application authorization permission list is marked by the application identifier.
  • the behavior authority authorized by the user for the application is stored. If there is no behavior permission corresponding to the application in the list, there is no specific permission suggestion, but the user can still authorize or prohibit all permissions.
  • the preset application authorization permission list library can be obtained by the following method:
  • the application package can be obtained through the official application download site, or the application package provided by the regular application provider can be obtained from other channels.
  • the application package can be uploaded by the application developer, uploaded by the application operator, or a genuine application package uploaded through other channels, as long as the genuine application file can be obtained. Pack it.
  • obtaining the application file package through the formal way can ensure the legality and rationality of the application application permission, and avoid illegally modifying the application file package by other methods, so that the illegally modified application maliciously applies more. Behavioral permissions that involve user security.
  • the application file package is an APK file
  • each APK file includes binary code information, resource information, configuration information files, and the like of the application.
  • the configuration information file is the AndroidManifest.xml file in the APK file, which must be defined and included in each application. It describes the name, version, permissions, and referenced library files of the application.
  • parsing the configuration information file in the application file package includes: decompressing an application file based on the Android platform, and obtaining a configuration information file of the encrypted global variable description, that is, an AndroidManifest.xml file, from the decompressed application file, and Decrypt the encrypted configuration information file to obtain the decrypted original configuration information file: AndroiManifest.xml file; scan the permission description part in the AndroidManifest.xml file to obtain the behavior permission list applied by the application, and the behavior permission list includes The behavior permission is the behavior permission applied by the application.
  • the application's behavior permissions are declared in the AndroidManifest.xml file as follows:
  • the Extensible Markup Language (XML) file parser in Java may be used to parse the permission description part in the AndroidManifest.xml file to obtain the application application behavior. List of permissions.
  • XML Extensible Markup Language
  • B312 Generate an application authorization permission list stored in the application authorization permission list library according to the authorized behavior permission selected by the user from the acquired behavior permission of the application.
  • the user authorizes each application according to its own business requirements and security considerations according to its own business requirements and security considerations, and generates a pair according to the authorization behavior permissions selected for each application.
  • Each application corresponds to an application authorization permission list, and the application authorization permission list is identified by the application. Line marker.
  • a plurality of application authorization permission lists constitute an application authorization permission list library, and the application authorization permission list includes not only one or more behavior rights authorized by the user for the application, but also the user is an application.
  • the program prohibits one or more behavior rights of the authorization, that is, the behavior authority in the application authorization permission list, whose attribute is authorization or prohibition authorization.
  • the application behavior authority is in the application authorization permission list, its attribute is authorization. , to allow the application to access the behavior of the application; if the application's behavior permission is in the application authorization permission list, and its attribute is to prohibit authorization, the application is denied access to the application.
  • the method may further include: before selecting the authorization authority according to the behavior authority applied by the user from the acquired application, the method further includes:
  • the behavior permission of the obtained application application is displayed.
  • the user is provided with an authorization setting interface, and the behavior permission of the application application is displayed on the authorization setting interface, and the user authorizes the displayed behavior authority on the authorization setting interface.
  • the user can conveniently select the required behavior authority for authorization by means of the visual authorization setting interface.
  • the method may further include:
  • the obtained behavior rights are classified into privacy rights and other rights.
  • the privacy rights the user needs to be reminded to pay attention to the privacy of the user, and for other rights, the user may According to the application of the application, you don't need to pay too much attention and grant permission.
  • the privacy rights include but are not limited to the following information: sending a short message
  • Each privacy right corresponds to a function.
  • the corresponding function is SmsManager.sendTextMessage, SmsManager.sendDataMessage, SmsManager.sendMultipartTextMessage, and the like.
  • the necessary rights It is limited to the behavior permission authorized by the user to run the application. If the authorization permission of the authorization is absent, the application cannot run normally. If the user needs to install the application, the user must apply for the necessary permission of the application. Otherwise it cannot be installed.
  • Non-essential permissions are behavioral rights that are authorized by the user for the application, but are optional and do not affect the operation of the application. If the behavior is not authorized by the user, it does not affect the installation and operation of the application.
  • the required rights may include: writing an address book, making a call, etc.
  • the non-essential rights may include: reading location information, accessing the Internet, reading recorded information, and the like.
  • the prompt information of the non-essential rights is further displayed to the user in the authorization setting interface.
  • the prompt information can be: non-required permission to cancel, or the permission is optional. Please authorize according to its own security policy. That is, users are advised to carefully select the behavior rights granted to the application based on their privacy and security considerations when authorizing non-essential rights.
  • verification can also be performed to determine whether all the necessary permissions are necessary for the application to run, that is, the legality and rationality of the necessary permissions applied by the application are verified.
  • the method of verification can utilize methods including isolation sandboxing, and/or static code analysis, and/or automatic code feature scanning to determine whether each behavioral permission in the required permissions is required for the application to run. Indispensable behavioral rights, if not, remove the behavioral rights from the required permissions and present them to the user as non-essential permissions.
  • the application of static code analysis can quickly and accurately find and locate the security risks and vulnerabilities of the necessary permissions applied by each application.
  • the quarantine sandbox uses virtual machine technology to clone a partition or all partitions of the hard disk in the Android platform through a virtual machine and form a shadow, which is called a shadow mode.
  • the shadow mode has the same architecture and functions as the Android platform system. Users can run applications in shadow mode and perform any operations on the application, such as deleting files, installing and testing various applications (including rogue applications, virus applications). They are all wrapped in quarantine sandboxes.
  • the interception of user privacy information by malicious applications is restricted to the quarantine sandbox. As long as the quarantine sandbox is closed, the operation that harms the Android platform can be eliminated.
  • the necessary permission of the application application involves permission abuse, that is, whether the application applies to the user for the purpose of not applying for the purpose for various purposes. Behavioral authority. If the application requests additional behavior rights through the necessary permissions, the user's private information may be leaked. Therefore, the behavior permission of the additional application needs to be removed from the required permissions. For example, if a stand-alone game application applies for permission to read a user's phone book, the read user's phone book may belong to the behavioral rights that the stand-alone game application should not apply for, thereby improving the security of the user's privacy.
  • the use of quarantine sandboxes, static code analysis, automatic code feature scanning, etc. to verify the legality and rationality of the necessary permissions for application applications is a well-known technique, which is omitted here.
  • the user should pay attention to the privacy rights involved in the application, so as to consider whether the application needs to be granted the permission, and the privacy of the user is guaranteed; further, by dividing the privacy right into the necessary permission and the non-essential permission, the user is required to have the unnecessary permission. Based on its own security policy, try to avoid authorization for it, thereby improving user privacy security. Moreover, for the necessary permissions, legality and rationality verification, the behavior permission of the malicious application can be removed. The ground guarantees user security.
  • A313 a list of application authorization permissions obtained by loading the installation interface.
  • the operating system of the smart terminal device is an Android system.
  • Loading the application authorization permission list set by the user in advance for the to-be-installed application includes: hooking the installation interface provided by the intelligent terminal device operating system to the interface corresponding to the application authorization permission list through the hook, and confirming or completing the application After the authorization permission list is modified, the jump to the installation interface provided by the operating system of the smart terminal device is ended.
  • the classes and interfaces that need to be inserted in the application installation execution can be found in the source code of the Android platform framework layer. These classes and interfaces are classes and interfaces related to user privacy information, and analyze and modify the classes and interfaces.
  • the source code causes the class and interface of the hook inserted when the configuration information file needs to be read to point to the application authorization permission list preset in the embodiment of the present invention, instead of pointing to the configuration information file in the application file package, and running the preset program.
  • the code segment loads the application authorization permission list to the current installation interface, and after completing the loading to the current installation interface, points to the operation after reading the configuration information file of the application, so that after completing the application authorization permission list
  • the operation is the same as the operation after reading the configuration information file of the existing application. That is, in the interface after configuring the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list, the next control is set to correspond to the class and interface of the insertion hook, and the pointing is read with the application.
  • the configuration information file is used to configure the behavior of the application.
  • the next control displayed after the configuration is the same as the pointer to the inserted class.
  • Modifications to the implementation of the source code in accordance with the embodiments of the present invention are well known in the art and will not be described in detail herein.
  • the original application installer of the Android platform is replaced by modifying the source code, so as to implement the application authorization permission list loading in the embodiment of the present invention, wherein the method for replacing the original installer of the Android platform includes but is not limited to the following Several:
  • the new installer is selected by the user as the default installer of the Android platform. If the mobile terminal is over the root, the original application installation scheme of the Android platform can be directly replaced, and the original Android platform is replaced in the ROM of the mobile terminal.
  • Application installation scenario is described in accordance with the embodiments of the present invention.
  • Step 302 Configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list, and complete the installation of the application.
  • the subsequent installation process is a well-known technology, which is omitted here.
  • an application displayed to a user The interface corresponding to the authorization permission list can be displayed in separate lines.
  • Each line is as follows: The application applies for 11 permissions, is the application installed? (first line); 3 privacy rights (non-essential permission, recommended cancellation) (second line); read location information (third line, set optional box control before reading location information); send SMS (first Four lines, there is an optional box control before sending SMS; call (the fifth line, set the optional box control before dialing the phone); 8 other permissions (sixth line), etc.; at the bottom of the interface, set There are cancel controls and installation controls.
  • the application program can be installed according to the overall authorization policy of the Android platform.
  • the difference is that the application authorization permission list is the authorization authority and the prohibition permission set by the user for the application in advance.
  • the permissions of the application in the configuration information file carried by the application file package are not such that the configured behavior rights of the application conform to the application authorization permission list.
  • the method may further include:
  • Step 303 Run a preset security application, and update the authorization permission of the application, so that the application performs corresponding access according to the updated authorization authority when the application is subsequently run.
  • the user can run the security application in the update interface corresponding to the security application.
  • the Android platform determines the access API according to the record in the application authorization permission list set by the user for the application. Whether the permission of the API is disabled, if the permission to access the API is disabled, the application can prompt the user to select the modification through the human interface; if the user chooses to modify the permission, the Android platform allows the application to access the API, otherwise, the Android platform Notify the application to quit access.
  • API application program interface
  • the application file package to be installed may be security scanned before the application file package is installed to ensure the security of the application file package to be installed, and the probability of installing the malicious application is reduced.
  • the method further comprises:
  • the application file package corresponding to the installed application is scanned for security. If the application file package to be installed passes the security scan, the process of installing the application file package is executed; otherwise, the process ends.
  • the deep security scan is performed on the application package, including but not limited to Trojan virus scanning, advertisement plug-in scanning, and vulnerability scanning.
  • Trojan virus scanning you can match the application file package with the features stored in the pre-stored malicious library.
  • the application file package matches the features in the malicious library, the application file package is prompted. Malicious programs and users are advised to ban installation of the application. This allows for a deep security scan of the application package to be installed before the application is installed, which can identify malicious applications and greatly reduce the probability of users installing malicious applications by mistake.
  • the user before installing the application, the user can select and determine the behavior permission that can be granted to the application and the behavior permission that is prohibited from being granted. In this way, for some sensitive behavior rights, for example, sending text messages, reading contacts, etc., the user can prohibit the application from obtaining the authorization of the user for sensitive behavior rights before installing the application.
  • Application permissions are configured with the authorization rights selected and determined by the user before installing the application. Therefore, even if the user accidentally installs and runs a malicious application, since the corresponding behavior permission has been banned by the user before installation, the security risk loss can be minimized, and the security of the Android platform can be effectively improved.
  • the embodiment of the present invention has a rights management mechanism before installation, that is, before the application is installed, the user can grant the selected behavior permission to the application to be installed; and, after the installation, the rights management mechanism, that is, in the application After the installation is completed, the user is allowed to modify the permission permission granted by the installed application, and the modified authorization authority is stored, so that the application program accesses according to the modified permission at runtime.
  • FIG. 4 shows an apparatus structure for installing an application based on an intelligent terminal device according to an embodiment of the present invention.
  • the device includes: a monitoring module, a loading module, and a rights configuration module, where
  • a monitoring module configured to perform an application installation, and notify the loading module after monitoring that the application needs to read the configuration information file
  • the monitoring module may be further configured to: after monitoring the application program accessing the application program interface that requires the behavior permission, the Android platform determines the access application according to the record in the application authorization permission list set by the user for the application program. Whether the permission of the program interface is disabled, if the permission to access the application interface is disabled, the user interface is prompted to select whether to modify; if the user chooses to modify the permission, the Android platform allows the application to access the application interface, otherwise, The Android platform notifies the application to exit.
  • a loading module configured to load, according to the received notification, a list of application authorization rights preset by the user for the to-be-installed application, where the application authorization permission list includes a user selectively authorized for the to-be-installed application Or multiple behavior rights;
  • the permission configuration module is configured to configure the behavior permission of the application according to the authorization behavior permission included in the loaded application authorization permission list, and complete the installation of the application.
  • the loading module includes: a parsing unit, a query unit, and a loading unit (figure Not shown), where
  • Parsing unit parsing an application file package for installing an application, and obtaining an application identifier in the application file package
  • obtaining the behavior permission of the application application includes: obtaining an application file package by using an official download website of the application; parsing the configuration information file in the application file package, and obtaining the behavior permission that the application needs to apply.
  • the parsing the configuration information file in the application file package includes: decompressing the application file based on the smart terminal device, obtaining the configuration information file of the encrypted global variable description from the decompressed application file, and performing the encrypted configuration information file Decrypt, obtain the decrypted original configuration information file, and scan the permission description part in the decrypted original configuration information file by using the extensible markup language file parser in Java.
  • the query unit is configured to query a preset application authorization permission list library according to the obtained application identifier, and obtain a list of application authorization rights corresponding to the application identifier;
  • setting the application authorization permission list library includes: collecting and obtaining the behavior permission of the application application for each application; and selecting and authorizing the behavior authority according to the behavior authority applied by the user from the acquired application, Generates a list of application authorization permissions stored in the application authorization permission list library.
  • Each of the applications corresponds to one of the application authorization permission lists, and the plurality of application authorization permission lists constitute an application authorization permission list library.
  • Load unit used to load the list of application authorization permissions obtained in the installation interface.
  • the loading module may further include:
  • the first classification unit is configured to classify the obtained behavior permission of the application application as a privacy right for reminding the user to focus on and other rights for applying for direct authorization according to the application.
  • the loading module may further include:
  • the second classification unit is configured to divide the privacy rights into necessary rights necessary for running the application and optional non-essential rights to run the application, and present the prompt information of the non-essential rights to the user in the authorization setting interface.
  • the loading module may further include:
  • a verification unit for verifying the legality and rationality of the required authority of the application application by using an isolation sandbox, and/or static code analysis, and/or an automatic code feature scanning method to determine necessary permissions
  • Each of the behavioral permissions in the action is an essential behavioral permission required by the application to run, and if not, the behavioral permission is removed from the required permissions and presented to the user as non-essential permissions.
  • the loading unit includes: a query subunit, a reconfiguration subunit, and an interface generation subunit, where
  • Query subunit for finding an application in the source code of the platform component layer of the smart terminal device running platform A class and interface for inserting a hook in a configuration information file of the program, the class and interface being a class and an interface related to user privacy rights;
  • a reconfiguration subunit for analyzing and modifying source code of the class and interface such that the class and interface of the hook inserted when the configuration information file needs to be read point to an application authorization authority set in advance for the application to be installed List
  • the interface generates a sub-unit, runs a preset program code segment, and loads the application authorization permission list to the current installation interface.
  • the apparatus may further include:
  • a display module for presenting the behavior rights of the obtained application application.
  • the apparatus may further include:
  • the permission update module is configured to run a preset security application, and update the authorization behavior permission of the application, so that the application accesses according to the updated authorization behavior authority when the application is subsequently run.
  • the apparatus may further include:
  • the security scanning module is configured to perform security scanning on the application file package corresponding to the application to be installed. If the application file package to be installed passes the security scan, the process of installing the application file package is executed; otherwise, the process ends.
  • the security scan includes, but is not limited to, Trojan virus scanning, advertisement plug-in scanning, and vulnerability scanning.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some of some or all of the components of the smart terminal device-based application-installed device in accordance with embodiments of the present invention or All features.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • FIG. 5 illustrates an electronic device that can implement the method of installing an application based on a smart terminal device of the present invention.
  • the electronic device conventionally includes a processor 1210 and a computer program product or computer readable medium in the form of a memory 1220.
  • the memory 1220 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • Memory 1220 has a memory space 1230 for program code 1231 for performing any of the method steps described above.
  • storage space 1230 for program code may include various program codes 1231 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks. Such computer program products are typically portable or fixed storage units as described with reference to FIG.
  • the storage unit may have a storage segment or storage space similar to the storage 1220 in the electronic device of FIG. Wait.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit comprises a program 1231' for performing the steps of the method according to the invention, ie a code readable by a processor such as 1210, which when executed by the electronic device causes the electronic device to perform the above Each step in the described method.

Landscapes

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

Abstract

提供一种基于智能终端设备安装应用程序的方法与装置,该方法包括:进行应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改(101);在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新(102)。应用所述方法与装置,可以提升用户安全性。

Description

基于智能终端设备安装应用程序的方法与装置 技术领域
本发明涉及移动智能终端操作系统平台技术,具体涉及一种基于智能终端设备安装应用程序的方法与装置。
背景技术
Android平台是基于Linux的开源手机操作系统平台,由操作系统、用户界面和应用程序组成,对第三方应用程序完全开放。由于Android平台的开放性,使得应用程序开发者在开发应用程序时拥有更大的自由度,因而,吸引了很多应用程序开发者,应用程序开发者也开发并提供了大量基于Android平台的安卓的应用程序,这种应用程序的安装包是以一种被称为APK(Android Package)的形式进行发布,通过安装安卓安装包实现应用程序的运行,使得越来越多的应用程序可以承载在Android平台上。Android平台作为世界上最流行的移动操作系统平台,已经覆盖了数以十亿计的移动终端以及众多的应用程序。
Android平台在设计之初设计了基于授予行为权限的安全访问策略,在用户进行应用程序安装时,如果应用程序涉及到对用户安全性的操作,例如,读取用户隐私信息的操作,或是可能导致用户费用损失的操作,都需要用户对应用程序进行行为授权方可进行。举例来说,如果应用程序在安装后需要执行发送短信、访问联系人数据、读取存储卡数据等读取用户隐私信息的操作,以及使用网络连接等增加用户费用的操作时,需要在安装时向用户申请对应的行为权限,也就是在应用程序安装过程中,通过移动终端将需要用户授权的行为权限声明向用户展示,从而由用户决定是否授予该应用程序执行用户安全性操作的访问权限。
在应用程序安装过程中,由于Android平台的安全访问策略,用户在安装应用程序时,只能从整体上授予应用程序申请的行为权限,即智能终端设备操作系统从整体上授予行为权限。因而,在应用程序安装时,向用户展示出应用程序申请的行为权限服务后,用户或者接受应用程序申请的所有行为权限服务以继续安装该应用程序,或者,只能取消安装该应用程序并退出该应用程序安装。举例来说,当用户安装KC网络电话应用程序时,由于需要获取用户安全信息的相关行为权限,Android平台根据基于行为权限的安全访问策略,在移动终端的显示界面展示需要用户授权的安全相关行为权限,例如,读取移动终端状态和ID、拦截呼出、直接呼叫电话号码、编辑SMS或MMS、发送文本信息、录音以及精确GPS位置信息等,如果用户授权KC网络电话应用程序执行上述所有 安全操作,则可以通过点击显示界面的下一步控件继续进行安装,这样,在安装KC网络电话应用程序后,KC网络电话应用程序将有权限获取用户的录音信息以及精确GPS位置信息等用户安全信息;如果用户不授权KC网络电话应用程序执行上述所有安全操作,则可以通过点击显示界面的取消控件,退出当前KC网络电话应用程序安装。
近年来,利用Android平台对应用程序只能从整体上授予行为权限的特点,针对Android平台的恶意应用程序大量增加,恶意应用程序在申请用户授权的行为权限上,增加多个影响用户安全性的行为权限,例如,发送短信、读取联系人、联网、录音、读取用户精确GPS位置信息等行为权限,与该恶意应用程序正常运行所需的行为权限进行绑定,并以各种诱人的名字、功能和应用吸引用户安装,同时,在移动终端的显示界面展示需要用户授权的安全相关行为权限时,将增加的影响用户安全性的行为权限置于用户不太关注的地方,从而通过用户点击显示界面的下一步控件继续进行安装,而一旦安装并运行该恶意应用程序,意味着用户授予了该恶意应用程序申请的所有行为权限,使得用户的安全面临重大风险,而该恶意应用程序通过用户的安装,实现了窃取用户隐私、恶意吸费等目的。进一步地,即使用户对恶意应用程序申请的其中一些行为权限存有疑虑,但除了放弃安装外没有其他选择。
为了降低恶意应用程序给用户带来的安全隐患,现有Android平台提供了安全应用程序,用以提供主动防御以及行为权限管理功能,即通过运行安全应用程序,可以由用户选择需要禁用的各应用程序的行为权限,也就是说,通过运行安全应用程序,可以提供给用户超级管理员的权限(即root权限),使得用户可以利用超级管理员权限修改和更新各应用程序的行为权限,从而使应用程序在运行时,不再享有用户在安装该应用程序过程中授予的行为权限,从而在后续应用中,可以避免该应用程序对用户安全性形成威胁。但该方法,不能有效避免用户在安装应用程序后,通过安全应用程序设置禁止行为权限前的时间段内,由于应用程序运行时给用户带来的安全性隐患,用户的安全信息在该时间段内,还是可能被窃取或泄露,从而给用户带来损失,使得用户安全性降低。进一步地,一些应用程序中确实存在较好的体验点,但由于用户担心该应用程序申请的行为权限可能会导致个人隐私信息的泄露,最终选择不安装该应用程序,这样,不仅降低了用户的业务体验,也给应用程序开发商带来了极大的经济损失。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地 解决上述问题的基于智能终端设备安装应用程序的方法与装置、计算机程序以及计算机可读介质。
依据本发明的一个方面,提供了基于智能终端设备安装应用程序的方法,该方法包括:
进行应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改;
在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
根据本发明的另一个方面提供了一种基于智能终端设备安装应用程序的装置,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于在应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,通知加载模块;
加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改;
权限配置模块,用于在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
依据本发明的一个方面,提供了基于智能终端设备安装应用程序的方法,该方法包括:
进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
根据本发明的另一个方面提供了一种基于智能终端设备安装应用程序的装置,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程 序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
权限配置模块,用于按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
依据本发明的一个方面,提供了基于智能终端设备安装应用程序的方法,该方法包括:
进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
根据本发明的另一个方面提供了一种基于智能终端设备安装应用程序的装置,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
加载模块,用于根据接收的通知,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
权限配置模块,用于按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
根据本发明的另一个方面,提供了一种计算机程序,其包括计算机可读代码,当电子设备运行所述计算机可读代码时,导致所述的基于智能终端设备安装应用程序的方法被执行。
根据本发明的再一个方面,提供了一种计算机可读介质,其中存储了如上所述的计算机程序。
根据本发明的基于智能终端设备安装应用程序的方法与装置,可以通过安装应用程序安装完成,重新选择并确定可以授予该应用程序的权限以及禁止授予的权限,从而更新应用程序在安装过程中针对智能终端设备操作系统授予的行为权限,或根据本发明的基于智能终端设备安装应用程序的方法与装置,可以通过安装应用程序之前,选择并确定可以授予该应用程序的行为权限以及禁止授予的行为权限,在应用程序安装时,配置用户预先为该应用程序的授权权限,由此解决了在安装应用程序前,即可禁止应用程序获取用户对敏感行为权 限的授权,使得应用程序安装后采用用户预先设置的授权权限进行相应访问的技术问题,取得了既可以保证用户正常使用该应用程序提供的业务功能,又可有效保障用户安全的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。本实施例的附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例基于智能终端设备安装应用程序的方法流程;以及,
图2示出了本发明实施例基于智能终端设备安装应用程序的另一方法流程;
图3示出了本发明实施例基于智能终端设备安装应用程序的又一方法流程;
图4示出了本发明实施例基于智能终端设备安装应用程序的装置结构;
图5示出了用于执行本发明的方法的电子设备的框图;以及
图6示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
现有基于智能终端设备安装应用程序时,由于具有只能从整体上授予应用程序申请的行为权限的特点,用户不能按照自己安全性的需求选择行为权限服务,如需安装应用程序,在移动终端的显示界面展示的需要用户授权的行为权限服务中,只能被迫接受应用程序申请的所有行为权限以继续进行应用程序安装,即默认用户对应用程序申请的行为权限进行全部授权,从而通过用户点击显示界面的下一步控件继续进行安装,而一旦安装并运行应用程序,意味着用 户授予了该应用程序申请的所有行为权限,使得用户的安全将面临重大风险。而安全应用程序提供的主动防御以及权限管理功能,还是不能有效避免用户在安装应用程序后,通过安全应用程序设置禁止行为权限前,由于应用程序运行时给用户带来的安全性隐患,使得用户安全性降低。
现有的应用程序,向用户申请的行为权限以及对应用程序的配置信息携带在应用程序的配置信息文件中,由于配置信息文件由应用程序开发者通过签名生成,因而,不能通过解析配置信息文件,并对解析的配置信息文件进行修改而更改应用程序申请的行为权限。本发明实施例中,提出一种基于智能终端设备安装应用程序的方法,通过预先获取各应用程序申请的行为权限,并在应用程序安装前,由用户对应用程序申请的行为权限进行选择性授权,使用户可以根据自己对应用程序的功能需要以及安全性考虑,在应用程序所申请的行为权限中进行相应选择并授权,生成应用程序授权权限列表,并在应用程序安装过程中,触发应用程序将生成的应用程序授权权限列表作为应用程序安装后具有的行为权限,从而既可以保证用户正常使用该应用程序提供的业务功能,又可有效保障用户安全,或通过应用程序授权权限列表更新应用程序在安装过程中针对智能终端设备操作系统授予的行为权限,从而使得应用程序将生成的应用程序授权权限列表作为应用程序安装后具有的行为权限,从而既可以保证用户正常使用该应用程序提供的业务功能,又可有效保障用户安全。
图1示出了本发明实施例基于智能终端设备安装应用程序的方法流程,所述智能终端设备的运行平台包括但不限于安卓平台。参见图1,该流程包括:
步骤101,进行应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改;
本步骤中,加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
A11,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本步骤中,通过解析应用程序文件包,可以获取用于对应用程序进行唯一标记的应用程序标识。
A12,根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本步骤中,在预先设置的应用程序授权权限列表库中,某些应用程序对应 有一应用程序授权权限列表,应用程序授权权限列表以应用程序标识为标记。在每一应用程序授权权限列表中,存储有用户预先为该应用程序授权的行为权限。如果该列表中没有对应于该应用程序的行为权限,则没有具体权限建议,但用户仍可对所有权限授权或禁止。
本发明实施例中,预先设置的应用程序授权权限列表库可以通过下述方法得到:
对每一应用程序,执行如下步骤B11和B12:
B11,在应用程序安装过程中,在监测到应用程序读取配置信息文件后,采集并获取应用程序在所述配置信息文件中针对智能终端设备操作系统申请的行为权限;
本步骤中,在安装某一应用程序之前,需要预先为该应用程序进行权限授权。作为可选实施例,可以通过应用程序官方下载网站获取应用程序文件包,也可以从其他途径获取正规的应用程序提供商提供的应用程序文件包。例如,从应用程序运营商网站获取应用程序文件包。也就是说,应用程序文件包可以是应用程序开发者上传的,也可以是应用程序运营商上传的,还可以是通过其他渠道上传的正版的应用程序文件包,只要能够获取正版的应用程序文件包即可。这样,通过正规途径获取应用程序文件包,可以保证该应用程序申请权限的合法性和合理性,避免通过其他方法对应用程序文件包进行非法修改后,使得非法修改后的应用程序恶意申请更多涉及用户安全的行为权限。
在下载得到应用程序文件包后,通过解析应用程序文件包中的配置信息文件,可以得到该应用程序针对智能终端设备操作系统需要申请的行为权限。
本发明实施例中,在Android平台下,应用程序文件包即为APK文件,每一APK文件中包含了应用程序的二进制代码信息、资源信息、配置信息文件等。配置信息文件即为APK文件中的AndroidManifest.xml文件,是每一应用程序都必须定义和包含的,它描述了应用程序的名字、版本、权限、引用的库文件等信息。实际应用中,解析应用程序文件包中的配置信息文件包括:解压基于Android平台的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,即AndroidManifest.xml文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件:AndroiManifest.xml文件;扫描AndroidManifest.xml文件中的权限描述部分,即可获取应用程序所申请的行为权限列表,行为权限列表中包含的行为权限即为应用程序申请的行为权限。
应用程序的行为权限在AndroidManifest.xml文件中的声明形式如下:
文件名:AndroidManifest.xml
<uses-permission android:name=“使用权限”/>
作为可选实施例,在上述解析流程中,可以使用Java中的可扩展标记语言(XML,Extensible Markup Language)文件解析器,解析AndroidManifest.xml文件中的权限描述部分,以获取应用程序申请的行为权限列表。当然,也可以使用其他XML解析器,或者,使用其他编程语言,例如C/C++、python等编程语言开发XML解析器,对AndroidManifest.xml文件进行解析,以获得相应的应用程序所申请的行为权限列表。
B12,根据用户从获取的应用程序申请的行为权限中选取的授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。
本步骤中,用户从每一应用程序申请的行为权限中,根据自身的业务需求以及安全性考虑,作为可选实施例,可以在应用程序安装过程中,在应用程序读取的配置信息文件对应的安装界面,分别为每一应用程序进行权限授权,智能终端设备操作系统根据为每一应用程序选取的授权行为权限,生成对应该应用程序的应用程序授权权限列表,即记录用户在安装界面选取并授权的行为权限,以作后续加载应用,其中,配置信息文件中包含有由智能终端设备操作系统授予应用程序的行为权限。每一应用程序对应一应用程序授权权限列表,应用程序授权权限列表以应用程序标识进行标记。本发明实施例中,多个应用程序授权权限列表组成应用程序授权权限列表库,应用程序授权权限列表中,不仅包含有用户为应用程序授权的一个或多个行为权限,也包含有用户为应用程序禁止授权的一个或多个行为权限,后续用于更新应用程序的行为权限符合所述用程序授权权限列表界面的显示。也就是说,应用程序授权权限列表中的行为权限,其属性为授权或禁止授权,且应用程序授权权限列表中包含的授权行为权限为所述智能终端设备操作系统授予的行为权限的一部分,如果申请的行为权限在应用程序授权权限列表中,其属性为授权,则允许应用程序进行申请的行为权限访问;如果申请的行为权限在应用程序授权权限列表中,其属性为禁止授权,则拒绝应用程序进行申请的行为权限访问。
作为可选实施例,为了便于用户对行为权限的授权选取操作,在根据用户从获取的应用程序申请的行为权限中选取授权权限之前,该方法还可以进一步包括:
将获取的应用程序申请的行为权限进行展示。
本步骤中,还可以为用户提供授权设置界面(应用程序授权权限列表界面),在授权设置界面上展示应用程序申请的行为权限,用户在授权设置界面上对展示的行为权限进行授权选取。这样,用户可以借助可视的授权设置界面,方便地选取所需的行为权限进行授权。
作为另一可选实施例,为了提高用户对应用程序申请的行为权限的了解,该方法还可以进一步包括:
对获取的应用程序申请的行为权限进行分类。
本步骤中,可针对每一应用程序,将获取的行为权限分类为隐私权限以及其它权限,其中,对于隐私权限,由于涉及到用户的隐私,需要提醒用户重点关注,而对于其它权限,用户可以根据应用程序的申请,无需过多关注,授予其权限即可。
本发明实施例中,隐私权限包括但不限于以下信息:发送短消息
(android.permission.SEND_SMS)、接入互联网
(android.permission.INTERNET)、读短消息
(android.permission.READ_SMS)、写短消息
(android.permission.WRlTE_SMS)、读通讯录
(android.permission.READ_CONTACTS)、写通讯录
(android.permission.WRlTE_CONTACTS)、拨打电话
(android.permission.CALL_PHONE)、写系统设置
(android.permission.WRlTE_SYNC_SETTINGS)、读取位置信息、进行录音以及读取录音信息。每一隐私权限对应有一函数,例如,对于发送短消息权限,对应的函数为SmsManager.sendTextMessage、SmsManager.sendDataMessage、SmsManager.sendMultipartTextMessage等。
对于隐私权限,又可进一步分为必需权限以及非必需权限。其中,必需权限为运行应用程序所必需的、由用户授权的行为权限,缺少该授权的行为权限,则应用程序无法正常运行,用户如果需要安装该应用程序,则必须对应用程序申请的必需权限进行全部授权,否则无法安装。非必需权限为应用程序需要的用户授权的行为权限,但为可选项,不会影响应用程序的运行,如果该行为权限未获用户授权,不影响应用程序的安装和运行。例如,必需权限可以包括:写通讯录、拨打电话等,非必需权限可以包括:读取位置信息、接入互联网、读取录音信息等。
作为可选实施例,对于非必要权限,进一步在授权设置界面向用户展示该非必要权限的提示信息。提示信息可以是:非必须权限建议取消,或权限为可选授权项,请根据自身安全策略进行授权等。即建议用户在授权非必要权限时,基于自己隐私安全的考虑,慎重选择授予应用程序的行为权限。
作为另一可选实施例,对于必需权限,还可以进行验证,以确定所有的必需权限是否都为应用程序运行时所必需的,即对应用程序申请的必需权限进行合法性以及合理性的验证。验证的方法可以利用包括隔离沙箱、和/或,静态 代码分析、和/或,自动代码特征扫描等方法,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。其中,应用静态代码分析,能够快速、准确地查找、定位每一应用程序申请的必需权限存在的安全风险及漏洞。而隔离沙箱利用虚拟机技术,通过虚拟机克隆Android平台内硬盘的某一分区或所有分区,并形成一个影子,称之为影子模式。影子模式与Android平台系统具有相同架构和功能,用户可以在影子模式下运行应用程序,对应用程序的任何操作,例如,删改文件、安装测试各种应用程序(包括流氓应用程序、病毒应用程序),都被隔离沙箱所包裹,恶意应用程序对用户隐私信息的截取,都被限制在隔离沙箱内,只要将隔离沙箱关闭,就可以使得危害Android平台的操作消失。因而,通过隔离沙箱方法,监测应用程序对用户数据的访问行为,可以确定应用程序申请的必需权限是否涉及权限滥用,即应用程序出于各种目的,是否向用户申请了本不该申请的行为权限。如果应用程序通过必需权限的方式申请了额外的行为权限,可能导致用户隐私信息泄露,因而,需要将该额外申请的行为权限从必需权限中剔除。例如,如果一个单机游戏应用程序申请了读取用户电话本的行为权限,该读取用户电话本就可能属于单机游戏应用程序本不该申请的行为权限,从而提升用户隐私的安全性。关于利用隔离沙箱、静态代码分析、自动代码特征扫描等方法对应用程序申请的必需权限进行合法性以及合理性的验证,为公知技术,在此略去详述。
这样,通过将应用程序申请的行为权限分类为隐私权限以及其它权限,使得用户对其中涉及的隐私权限进行关注,从而考虑是否需要对应用程序授予该权限,保障了用户隐私安全;进一步地,通过将隐私权限分为必需权限以及非必需权限,使得用户对于非必需权限,基于自身的安全策略,尽量避免对其授权,从而提升用户隐私安全性;而且,对于必需权限,进行合法性以及合理性的验证,可以将恶意应用程序额外申请的行为权限进行剔除,最大限度地保障用户安全性。
A13,在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
本步骤中,采用加载的应用程序授权权限列表界面替换所述应用程序在安装过程中由智能终端设备操作系统提供的安装界面。加载为该待安装应用程序设置的应用程序授权权限列表界面包括:通过钩子将由智能终端设备操作系统提供的安装界面跳转指向至所述应用程序授权权限列表界面,并在确认或完成应用程序授权权限列表修改后,结束对所述智能终端设备操作系统提供的安装界面的跳转。具体地,可以在Android平台框架层的源代码中找到应用程序 安装执行中需要插入钩子的类和接口,这些类和接口为涉及到用户隐私信息的类和接口,通过分析并修改类和接口的源代码,使得需要读取配置信息文件时插入的钩子的类和接口指向本发明实施例预先设置的应用程序授权权限列表,而非指向应用程序文件包中的配置信息文件,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面,并在完成该应用程序授权权限列表界面后,指向读取该应用程序的配置信息文件后的操作,使得在完成该应用程序授权权限列表界面后的操作与现有读取应用程序的配置信息文件后的操作相同。即在按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限后的界面中,设置下一步控件需对应插入钩子的类和接口指向,所述指向与所述应用程序读取配置信息文件进行应用程序的行为权限配置后显示的下一步控件需对应插入钩子的类和接口的指向相同。关于依据本发明实施例描述的功能实现源代码的修改,为公知技术,在此略去详述。实际应用中,通过修改源代码的方式替换Android平台原默认的应用程序安装器,从而实现本发明实施例的应用程序授权权限列表加载,其中,替换Android平台原安装器的方法包括但不限于如下几种:由用户选择新的安装器为Android平台默认的安装器、如果在Root过的移动终端上,可以直接替换Android平台原应用程序安装方案,以及在移动终端的ROM中,替换Android平台原应用程序安装方案。
步骤102,在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
本步骤中,在应用程序安装器按照加载的应用程序授权权限列表配置好应用程序的行为权限后,后续安装流程为公知技术,在此略去详述。
本发明实施例在应用程序安装过程中,举例来说,向用户展示的应用程序授权权限列表界面可以分行显示,每行依序具体如下:该应用程序申请11项权限,是否安装此应用程序?(第一行);3项隐私权限(非必要权限,建议取消)(第二行);读取位置信息(第三行,读取位置信息前设置有可选框控件);发送短信(第四行,发送短信前设置有可选框控件);拨打电话(第五行,拨打电话前设置有可选框控件);8项其它权限(第六行)等;在界面的最底端,设置有取消控件、安装控件。这样,在加载应用程序授权权限列表后,可以按照安卓平台的整体授权策略进行应用程序的安装,不同的是,该应用程序授权权限列表为用户预先为该应用程序设置的授权权限以及禁止权限,而非应用程序文件包携带的配置信息文件中的申请的权限,使得配置的所述应用程序的行为权限符合所述用程序授权权限列表界面的显示。
作为可选实施例,在后续流程中,用户如果需要对应用程序的授权权限进 行调整,该方法还可以进一步包括:
步骤103,运行预先设置的安全应用程序,对应用程序的授权权限进行更新,以使应用程序在后续运行时,按照更新的授权权限进行相应的访问。
本步骤中,当用户安装好相应的应用程序后,如果需要对应用程序的一些功能或授予应用程序的授权权限进行更新,可以通过运行安全应用程序,在安全应用程序对应的更新界面,由用户选择需要禁用或授权的各应用程序的行为权限,以对应用程序的相应功能以及授权权限进行修改,从而在应用程序再重新运行时,支持用户修改后的相应功能和授权权限的访问。例如,如果禁用了某一授权权限,则在应用程序再次运行时,不再享有用户禁用了的授权权限。
当然,实际应用中,也可以在应用程序试图访问需要权限的应用程序接口(API,Application Program Interface)时,Android平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问API的权限是否被禁用,如果访问API的权限被禁用,该应用程序可以通过人机接口提示用户是否选择修改;若用户选择修改权限,则Android平台允许该应用程序访问所述API,否则,Android平台通知该应用程序退出访问。
作为另一可选实施例,还可以在安装应用程序对应的应用程序文件包之前,对该待安装的应用程序文件包进行安全扫描,以确保待安装应用程序文件包的安全性,降低安装恶意应用程序的概率。这样,该方法进一步包括:
对待安装的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本步骤中,在安装应用程序文件包前,通过对该应用程序文件包进行深度安全扫描,深度安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。例如,对于木马病毒扫描,可以通过将应用程序文件包与预存储的恶意程序库内的特征进行匹配,当应用程序文件包与恶意程序库内的特征相匹配时,提示该应用程序文件包为恶意程序,并建议用户禁止对该应用程序的安装。这样,在安装应用程序前,通过对待安装应用程序文件包进行深度安全扫描,可以识别出恶意应用程序,极大降低用户误安装恶意应用程序的概率。
本发明实施例中,作为可选实施例,应用程序按照智能终端设备操作系统提供的钩子的类和接口进行安装,即应用程序按照现有安装流程进行安装,本发明实施例提供的基于智能终端设备安装应用程序的第三方软件在该应用程序安装完成后,使得在现有应用程序的安装界面不显示包含应用程序安装完成的提示信息,并触发加载用户预先为该应用程序设置的应用程序授权权限列表界面,使得智能终端设备操作系统按照加载的应用程序授权权限列表界面包含的授权行为权限,更新该应用程序在安装过程中针对智能终端设备操作系统授 予的行为权限,进而,在监测到更新该应用程序在安装过程中针对智能终端设备操作系统授予的行为权限完成后,触发在安装界面显示包含应用程序安装完成的提示信息。
由上述可见,本发明实施例的基于Android平台安装应用程序的方法,用户在安装应用程序后,触发选择并确定可以授予该应用程序的行为权限以及禁止授予的行为权限。这样,对于一些敏感行为权限,例如,发送短信、读取联系人等权限,用户在安装该应用程序后,通过利用预先为应用程序设置的应用程序授权权限列表界面包含的授权行为权限,更新应用程序在安装过程中针对智能终端设备操作系统授予的行为权限,即可禁止该应用程序获取用户对敏感行为权限的授权。因而,即使用户不小心安装并运行了恶意应用程序,由于相应的行为权限已经在安装后至应用程序运行前已被用户禁止,可以将安全隐患损失降到最低,有效提高Android平台的安全性。具体来说,本发明实施例具有安装前的权限管理机制,即在应用程序安装前,用户可以为待安装的应用程序授予选择的行为权限;以及,安装后的权限管理机制,即在应用程序安装完成后,允许用户对已安装的应用程序授予的行为权限进行权限修改,并将修改的授权权限进行存储,以供应用程序在运行时根据修改的权限进行相应的访问。
图4示出了本发明实施例基于智能终端设备安装应用程序的装置结构。参见图4,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于在应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,通知加载模块;
本发明实施例中,监测模块在应用程序安装完成后,控制在现有应用程序的安装界面不显示包含应用程序安装完成的提示信息,并通知加载模块,并在监测到更新该应用程序在安装过程中针对智能终端设备操作系统授予的行为权限完成后,触发在安装界面显示包含应用程序安装完成的提示信息。
作为可选实施例,监测模块还可以进一步用于在监测到应用程序访问需要行为权限的应用程序接口后,安卓平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问应用程序接口的权限是否被禁用,如果访问应用程序接口的权限被禁用,通过人机接口提示用户是否选择修改;若用户选择修改权限,则安卓平台允许该应用程序访问所述应用程序接口,否则,安卓平台通知该应用程序退出访问。
加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个 或多个行为权限,记录对应用程序授权权限列表的修改;
权限配置模块,用于在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
本发明实施例中,加载模块包括:解析单元、查询单元以及加载单元(图中未示出),其中,
解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本发明实施例中,获取应用程序申请的行为权限包括:通过应用程序官方下载网站获取应用程序文件包;解析应用程序文件包中的配置信息文件,得到该应用程序需要申请的行为权限。其中,解析应用程序文件包中的配置信息文件包括:解压基于智能终端设备的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件,利用Java中的可扩展标记语言文件解析器扫描解密的原始配置信息文件中的权限描述部分。
查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本发明实施例中,设置应用程序授权权限列表库包括:对每一应用程序,采集并获取应用程序申请的行为权限;根据用户从获取的应用程序申请的行为权限中选取并授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。每一所述应用程序对应一所述应用程序授权权限列表,多个应用程序授权权限列表组成应用程序授权权限列表库。
加载单元,用于在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
较佳地,加载模块还可以进一步包括:
第一分类单元,用于将获取的应用程序申请的行为权限分类为用于提醒用户重点关注的隐私权限以及按照应用程序申请直接授权的其它权限。
实际应用中,加载模块还可以进一步包括:
第二分类单元,用于将隐私权限分为运行应用程序所必需的必需权限以及运行应用程序可选的非必需权限,并在授权设置界面向用户展示所述非必要权限的提示信息。
作为可选实施例,加载模块还可以进一步包括:
验证单元,用于利用隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描方法,对应用程序申请的所述必需权限进行合法性以及合理性的验证,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可 少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。
作为可选实施例,加载单元包括:查询子单元、重配置子单元以及界面生成子单元,其中,
查询子单元,用于在智能终端设备运行平台框架层的源代码中,找到应用程序的配置信息文件中需要插入钩子的类和接口,所述类和接口为涉及到用户隐私权限的类和接口;
重配置子单元,用于分析并修改所述类和接口的源代码,使得需要读取配置信息文件时插入的钩子的所述类和接口指向预先为该待安装应用程序设置的应用程序授权权限列表;
界面生成子单元,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面。
作为可选实施例,该装置还可以进一步包括:
展示模块,用于将获取的应用程序申请的行为权限进行展示。
作为另一可选实施例,该装置还可以进一步包括:
权限更新模块,用于运行预先设置的安全应用程序,对应用程序的授权行为权限进行更新,以使应用程序在后续运行时,按照更新的授权行为权限进行相应的访问。
作为再一可选实施例,该装置还可以进一步包括:
安全扫描模块,用于对待安装的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本发明实施例中,安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。
图2示出了本发明实施例基于智能终端设备安装应用程序的方法流程。参见图2,该流程包括:
步骤201,进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
本步骤中,加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
A211,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本步骤中,通过解析应用程序文件包,可以获取用于对应用程序进行唯一标记的应用程序标识。
A212,根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本步骤中,在预先设置的应用程序授权权限列表库中,某些应用程序对应有一应用程序授权权限列表,应用程序授权权限列表以应用程序标识为标记。在每一应用程序授权权限列表中,存储有用户预先为该应用程序授权的行为权限。如果该列表中没有对应于该应用程序的行为权限,则没有具体权限建议,但用户仍可对所有权限授权或禁止。
本发明实施例中,预先设置的应用程序授权权限列表库可以通过下述方法得到:
对每一应用程序,执行如下步骤B211和B212:
B211,采集并获取应用程序申请的行为权限;
本步骤中,在安装某一应用程序之前,需要预先为该应用程序进行权限授权。作为可选实施例,可以通过应用程序官方下载网站获取应用程序文件包,也可以从其他途径获取正规的应用程序提供商提供的应用程序文件包。例如,从应用程序运营商网站获取应用程序文件包。也就是说,应用程序文件包可以是应用程序开发者上传的,也可以是应用程序运营商上传的,还可以是通过其他渠道上传的正版的应用程序文件包,只要能够获取正版的应用程序文件包即可。这样,通过正规途径获取应用程序文件包,可以保证该应用程序申请权限的合法性和合理性,避免通过其他方法对应用程序文件包进行非法修改后,使得非法修改后的应用程序恶意申请更多涉及用户安全的行为权限。
在下载得到应用程序文件包后,通过解析应用程序文件包中的配置信息文件,可以得到该应用程序需要申请的行为权限。
本发明实施例中,在Android平台下,应用程序文件包即为APK文件,每一APK文件中包含了应用程序的二进制代码信息、资源信息、配置信息文件等。配置信息文件即为APK文件中的AndroidManifest.xml文件,是每一应用程序都必须定义和包含的,它描述了应用程序的名字、版本、权限、引用的库文件等信息。实际应用中,解析应用程序文件包中的配置信息文件包括:解压基于Android平台的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,即AndroidManifest.xml文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件:AndroiManifest.xml文件;扫描AndroidManifest.xml文件中的权限描述部分,即可获取应用程序所申请的行为权限列表,行为权限列表中包含的行为权限即为应用程序申请的行为权 限。
应用程序的行为权限在AndroidManifest.xml文件中的声明形式如下:
文件名:AndroidManifest.xml
<uses-permission android:name=“使用权限”/>
作为可选实施例,在上述解析流程中,可以使用Java中的可扩展标记语言(XML,Extensible Markup Language)文件解析器,解析AndroidManifest.xml文件中的权限描述部分,以获取应用程序申请的行为权限列表。当然,也可以使用其他XML解析器,或者,使用其他编程语言,例如C/C++、python等编程语言开发XML解析器,对AndroidManifest.xml文件进行解析,以获得相应的应用程序所申请的行为权限列表。
B212,根据用户从获取的应用程序申请的行为权限中选取的授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。
本步骤中,用户从每一应用程序申请的行为权限中,根据自身的业务需求以及安全性考虑,分别为每一应用程序进行权限授权,根据为每一应用程序选取的授权行为权限,生成对应该应用程序的应用程序授权权限列表。每一应用程序对应一应用程序授权权限列表,应用程序授权权限列表以应用程序标识进行标记。本发明实施例中,多个应用程序授权权限列表组成应用程序授权权限列表库,应用程序授权权限列表中,不仅包含有用户为应用程序授权的一个或多个行为权限,也包含有用户为应用程序禁止授权的一个或多个行为权限,也就是说,应用程序授权权限列表中的行为权限,其属性为授权或禁止授权,如果申请的行为权限在应用程序授权权限列表中,其属性为授权,则允许应用程序进行申请的行为权限访问;如果申请的行为权限在应用程序授权权限列表中,其属性为禁止授权,则拒绝应用程序进行申请的行为权限访问。
作为可选实施例,为了便于用户对行为权限的授权选取操作,在根据用户从获取的应用程序申请的行为权限中选取授权权限之前,该方法还可以进一步包括:
将获取的应用程序申请的行为权限进行展示。
本步骤中,为用户提供授权设置界面(应用程序授权权限列表界面),在授权设置界面上展示应用程序申请的行为权限,用户在授权设置界面上对展示的行为权限进行授权选取。这样,用户可以借助可视的授权设置界面,方便地选取所需的行为权限进行授权。
作为另一可选实施例,为了提高用户对应用程序申请的行为权限的了解,该方法还可以进一步包括:
对获取的应用程序申请的行为权限进行分类。
本步骤中,可针对每一应用程序,将获取的行为权限分类为隐私权限以及其它权限,其中,对于隐私权限,由于涉及到用户的隐私,需要提醒用户重点关注,而对于其它权限,用户可以根据应用程序的申请,无需过多关注,授予其权限即可。
本发明实施例中,隐私权限包括但不限于以下信息:发送短消息
(android.permission.SEND_SMS)、接入互联网
(android.permission.INTERNET)、读短消息
(android.permission.READ_SMS)、写短消息
(android.permission.WRITE_SMS)、读通讯录
(android.permission.READ_CONTACTS)、写通讯录
(android.permission.WRITE_CONTACTS)、拨打电话
(android.permission.CALL_PHONE)、写系统设置
(android.permission.WRITE_SYNC_SETTINGS)、读取位置信息、进行录音以及读取录音信息。每一隐私权限对应有一函数,例如,对于发送短消息权限,对应的函数为SmsManager.sendTextMessage、SmsManager.sendDataMessage、SmsManager.sendMultipartTextMessage等。
对于隐私权限,又可进一步分为必需权限以及非必需权限。其中,必需权限为运行应用程序所必需的、由用户授权的行为权限,缺少该授权的行为权限,则应用程序无法正常运行,用户如果需要安装该应用程序,则必须对应用程序申请的必需权限进行全部授权,否则无法安装。非必需权限为应用程序需要的用户授权的行为权限,但为可选项,不会影响应用程序的运行,如果该行为权限未获用户授权,不影响应用程序的安装和运行。例如,必需权限可以包括:写通讯录、拨打电话等,非必需权限可以包括:读取位置信息、接入互联网、读取录音信息等。
作为可选实施例,对于非必要权限,进一步在授权设置界面向用户展示该非必要权限的提示信息。提示信息可以是:非必须权限建议取消,或权限为可选授权项,请根据自身安全策略进行授权等。即建议用户在授权非必要权限时,基于自己隐私安全的考虑,慎重选择授予应用程序的行为权限。
作为另一可选实施例,对于必需权限,还可以进行验证,以确定所有的必需权限是否都为应用程序运行时所必需的,即对应用程序申请的必需权限进行合法性以及合理性的验证。验证的方法可以利用包括隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描等方法,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。其中,应用静态 代码分析,能够快速、准确地查找、定位每一应用程序申请的必需权限存在的安全风险及漏洞。而隔离沙箱利用虚拟机技术,通过虚拟机克隆Android平台内硬盘的某一分区或所有分区,并形成一个影子,称之为影子模式。影子模式与Android平台系统具有相同架构和功能,用户可以在影子模式下运行应用程序,对应用程序的任何操作,例如,删改文件、安装测试各种应用程序(包括流氓应用程序、病毒应用程序),都被隔离沙箱所包裹,恶意应用程序对用户隐私信息的截取,都被限制在隔离沙箱内,只要将隔离沙箱关闭,就可以使得危害Android平台的操作消失。因而,通过隔离沙箱方法,监测应用程序对用户数据的访问行为,可以确定应用程序申请的必需权限是否涉及权限滥用,即应用程序出于各种目的,是否向用户申请了本不该申请的行为权限。如果应用程序通过必需权限的方式申请了额外的行为权限,可能导致用户隐私信息泄露,因而,需要将该额外申请的行为权限从必需权限中剔除。例如,如果一个单机游戏应用程序申请了读取用户电话本的行为权限,该读取用户电话本就可能属于单机游戏应用程序本不该申请的行为权限,从而提升用户隐私的安全性。关于利用隔离沙箱、静态代码分析、自动代码特征扫描等方法对应用程序申请的必需权限进行合法性以及合理性的验证,为公知技术,在此略去详述。
这样,通过将应用程序申请的行为权限分类为隐私权限以及其它权限,使得用户对其中涉及的隐私权限进行关注,从而考虑是否需要对应用程序授予该权限,保障了用户隐私安全;进一步地,通过将隐私权限分为必需权限以及非必需权限,使得用户对于非必需权限,基于自身的安全策略,尽量避免对其授权,从而提升用户隐私安全性;而且,对于必需权限,进行合法性以及合理性的验证,可以将恶意应用程序额外申请的行为权限进行剔除,最大限度地保障用户安全性。
A213,在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
本步骤中,采用加载的应用程序授权权限列表界面替换所述应用程序安装过程中由智能终端设备操作系统提供的安装界面。加载为该待安装应用程序设置的应用程序授权权限列表界面包括:通过钩子将由智能终端设备操作系统提供的安装界面跳转指向至所述应用程序授权权限列表界面,并在确认或完成应用程序授权权限列表修改后,结束对所述智能终端设备操作系统提供的安装界面的跳转。具体地,可以在Android平台框架层的源代码中找到应用程序安装执行中需要插入钩子的类和接口,这些类和接口为涉及到用户隐私信息的类和接口,通过分析并修改类和接口的源代码,使得需要读取配置信息文件时插入的钩子的类和接口指向本发明实施例预先设置的应用程序授权权限列表,而 非指向应用程序文件包中的配置信息文件,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面,并在完成该应用程序授权权限列表界面后,指向读取该应用程序的配置信息文件后的操作,使得在完成该应用程序授权权限列表界面后的操作与现有读取应用程序的配置信息文件后的操作相同。即在按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限后的界面中,设置下一步控件需对应插入钩子的类和接口指向,所述指向与所述应用程序读取配置信息文件进行应用程序的行为权限配置后显示的下一步控件需对应插入钩子的类和接口的指向相同。关于依据本发明实施例描述的功能实现源代码的修改,为公知技术,在此略去详述。实际应用中,通过修改源代码的方式替换Android平台原默认的应用程序安装器,从而实现本发明实施例的应用程序授权权限列表加载,其中,替换Android平台原安装器的方法包括但不限于如下几种:由用户选择新的安装器为Android平台默认的安装器、如果在Root过的移动终端上,可以直接替换Android平台原应用程序安装方案,以及在移动终端的ROM中,替换Android平台原应用程序安装方案。
步骤202,按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
本步骤中,在应用程序安装器按照加载的应用程序授权权限列表配置好应用程序的行为权限后,后续安装流程为公知技术,在此略去详述。
本发明实施例在应用程序安装过程中,举例来说,向用户展示的应用程序授权权限列表界面可以分行显示,每行依序具体如下:该应用程序申请11项权限,是否安装此应用程序?(第一行);3项隐私权限(非必要权限,建议取消)(第二行);读取位置信息(第三行,读取位置信息前设置有可选框控件);发送短信(第四行,发送短信前设置有可选框控件);拨打电话(第五行,拨打电话前设置有可选框控件);8项其它权限(第六行)等;在界面的最底端,设置有取消控件、安装控件。这样,在加载应用程序授权权限列表后,可以按照安卓平台的整体授权策略进行应用程序的安装,不同的是,该应用程序授权权限列表为用户预先为该应用程序设置的授权权限以及禁止权限,而非应用程序文件包携带的配置信息文件中的申请的权限,使得配置的所述应用程序的行为权限符合所述用程序授权权限列表界面的显示。
作为可选实施例,在后续流程中,用户如果需要对应用程序的授权权限进行调整,该方法还可以进一步包括:
步骤203,运行预先设置的安全应用程序,对应用程序的授权权限进行更新,以使应用程序在后续运行时,按照更新的授权权限进行相应的访问。
本步骤中,当用户安装好相应的应用程序后,如果需要对应用程序的一些功能或授予应用程序的授权权限进行更新,可以通过运行安全应用程序,在安全应用程序对应的更新界面,由用户选择需要禁用或授权的各应用程序的行为权限,以对应用程序的相应功能以及授权权限进行修改,从而在应用程序再重新运行时,支持用户修改后的相应功能和授权权限的访问。例如,如果禁用了某一授权权限,则在应用程序再次运行时,不再享有用户禁用了的授权权限。
当然,实际应用中,也可以在应用程序试图访问需要权限的应用程序接口(API,Application Program Interface)时,Android平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问API的权限是否被禁用,如果访问API的权限被禁用,该应用程序可以通过人机接口提示用户是否选择修改;若用户选择修改权限,则Android平台允许该应用程序访问所述API,否则,Android平台通知该应用程序退出访问。
作为另一可选实施例,还可以在安装应用程序文件包之前,对该待安装的应用程序文件包进行安全扫描,以确保待安装应用程序文件包的安全性,降低安装恶意应用程序的概率。这样,该方法进一步包括:
对待安装的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本步骤中,在安装应用程序文件包前,通过对该应用程序文件包进行深度安全扫描,深度安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。例如,对于木马病毒扫描,可以通过将应用程序文件包与预存储的恶意程序库内的特征进行匹配,当应用程序文件包与恶意程序库内的特征相匹配时,提示该应用程序文件包为恶意程序,并建议用户禁止对该应用程序的安装。这样,在安装应用程序前,通过对待安装应用程序文件包进行深度安全扫描,可以识别出恶意应用程序,极大降低用户误安装恶意应用程序的概率。
由上述可见,本发明实施例的基于Android平台安装应用程序的方法,用户在安装应用程序之前,即可选择并确定可以授予该应用程序的行为权限以及禁止授予的行为权限。这样,对于一些敏感行为权限,例如,发送短信、读取联系人等权限,用户在安装该应用程序前,即可禁止该应用程序获取用户对敏感行为权限的授权,在应用程序安装过程中,采用用户安装该应用程序前选择并确定的授权权限对应用程序权限进行配置。因而,即使用户不小心安装并运行了恶意应用程序,由于相应的行为权限已经在安装前被用户禁止,可以将安全隐患损失降到最低,有效提高Android平台的安全性。具体来说,本发明实施例具有安装前的权限管理机制,即在应用程序安装前,用户可以为待安装的应用程序授予选择的行为权限;以及,安装后的权限管理机制,即在应用程序 安装完成后,允许用户对已安装的应用程序授予的行为权限进行权限修改,并将修改的授权权限进行存储,以供应用程序在运行时根据修改的权限进行相应的访问。
图4示出了本发明实施例基于智能终端设备安装应用程序的装置结构。参见图4,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
本发明实施例中,监测模块还可以进一步用于在监测到应用程序访问需要行为权限的应用程序接口后,安卓平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问应用程序接口的权限是否被禁用,如果访问应用程序接口的权限被禁用,通过人机接口提示用户是否选择修改;若用户选择修改权限,则安卓平台允许该应用程序访问所述应用程序接口,否则,安卓平台通知该应用程序退出访问。
加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
权限配置模块,用于按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
本发明实施例中,加载模块包括:解析单元、查询单元以及加载单元(图中未示出),其中,
解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本发明实施例中,获取应用程序申请的行为权限包括:通过应用程序官方下载网站获取应用程序文件包;解析应用程序文件包中的配置信息文件,得到该应用程序需要申请的行为权限。其中,解析应用程序文件包中的配置信息文件包括:解压基于智能终端设备的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件,利用Java中的可扩展标记语言文件解析器扫描解密的原始配置信息文件中的权限描述部分。
查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本发明实施例中,设置应用程序授权权限列表库包括:对每一应用程序,采集并获取应用程序申请的行为权限;根据用户从获取的应用程序申请的行为 权限中选取并授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。每一所述应用程序对应一所述应用程序授权权限列表,多个应用程序授权权限列表组成应用程序授权权限列表库。
加载单元,用于在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
较佳地,加载模块还可以进一步包括:
第一分类单元,用于将获取的应用程序申请的行为权限分类为用于提醒用户重点关注的隐私权限以及按照应用程序申请直接授权的其它权限。
实际应用中,加载模块还可以进一步包括:
第二分类单元,用于将隐私权限分为运行应用程序所必需的必需权限以及运行应用程序可选的非必需权限,并在授权设置界面向用户展示所述非必要权限的提示信息。
作为可选实施例,加载模块还可以进一步包括:
验证单元,用于利用隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描方法,对应用程序申请的所述必需权限进行合法性以及合理性的验证,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。
作为可选实施例,加载单元包括:查询子单元、重配置子单元以及界面生成子单元,其中,
查询子单元,用于在智能终端设备运行平台框架层的源代码中,找到应用程序的配置信息文件中需要插入钩子的类和接口,所述类和接口为涉及到用户隐私权限的类和接口;
重配置子单元,用于分析并修改所述类和接口的源代码,使得需要读取配置信息文件时插入的钩子的所述类和接口指向预先为该待安装应用程序设置的应用程序授权权限列表;
界面生成子单元,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面。
作为可选实施例,该装置还可以进一步包括:
展示模块,用于将获取的应用程序申请的行为权限进行展示。
作为另一可选实施例,该装置还可以进一步包括:
权限更新模块,用于运行预先设置的安全应用程序,对应用程序的授权行为权限进行更新,以使应用程序在后续运行时,按照更新的授权行为权限进行相应的访问。
作为再一可选实施例,该装置还可以进一步包括:
安全扫描模块,用于对待安装的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本发明实施例中,安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。
图3示出了本发明实施例基于智能终端设备安装应用程序的方法流程。参见图3,该流程包括:
步骤301,进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
本步骤中,加载用户预先为该待安装应用程序设置的应用程序授权权限列表包括:
A311,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本步骤中,通过解析应用程序文件包,可以获取用于对应用程序进行唯一标记的应用程序标识。
A312,根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本步骤中,在预先设置的应用程序授权权限列表库中,某些应用程序对应有一应用程序授权权限列表,应用程序授权权限列表以应用程序标识为标记。在每一应用程序授权权限列表中,存储有用户预先为该应用程序授权的行为权限。如果该列表中没有对应于该应用程序的行为权限,则没有具体权限建议,但用户仍可对所有权限授权或禁止。
本发明实施例中,预先设置的应用程序授权权限列表库可以通过下述方法得到:
对每一应用程序,执行如下步骤B311和B312:
B311,在应用程序安装过程中,在监测到应用程序读取配置信息文件后,采集并获取应用程序在所述配置信息文件中针对智能终端设备操作系统申请的行为权限;
本步骤中,在安装某一应用程序之前,需要预先为该应用程序进行权限授权。作为可选实施例,可以通过应用程序官方下载网站获取应用程序文件包,也可以从其他途径获取正规的应用程序提供商提供的应用程序文件包。例如, 从应用程序运营商网站获取应用程序文件包。也就是说,应用程序文件包可以是应用程序开发者上传的,也可以是应用程序运营商上传的,还可以是通过其他渠道上传的正版的应用程序文件包,只要能够获取正版的应用程序文件包即可。这样,通过正规途径获取应用程序文件包,可以保证该应用程序申请权限的合法性和合理性,避免通过其他方法对应用程序文件包进行非法修改后,使得非法修改后的应用程序恶意申请更多涉及用户安全的行为权限。
在下载得到应用程序文件包后,通过解析应用程序文件包中的配置信息文件,可以得到该应用程序需要申请的行为权限。
本发明实施例中,在Android平台下,应用程序文件包即为APK文件,每一APK文件中包含了应用程序的二进制代码信息、资源信息、配置信息文件等。配置信息文件即为APK文件中的AndroidManifest.xml文件,是每一应用程序都必须定义和包含的,它描述了应用程序的名字、版本、权限、引用的库文件等信息。实际应用中,解析应用程序文件包中的配置信息文件包括:解压基于Android平台的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,即AndroidManifest.xml文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件:AndroiManifest.xml文件;扫描AndroidManifest.xml文件中的权限描述部分,即可获取应用程序所申请的行为权限列表,行为权限列表中包含的行为权限即为应用程序申请的行为权限。
应用程序的行为权限在AndroidManifest.xml文件中的声明形式如下:
文件名:AndroidManifest.xml
<uses-permission android:name=“使用权限”/>
作为可选实施例,在上述解析流程中,可以使用Java中的可扩展标记语言(XML,Extensible Markup Language)文件解析器,解析AndroidManifest.xml文件中的权限描述部分,以获取应用程序申请的行为权限列表。当然,也可以使用其他XML解析器,或者,使用其他编程语言,例如C/C++、python等编程语言开发XML解析器,对AndroidManifest.xml文件进行解析,以获得相应的应用程序所申请的行为权限列表。
B312,根据用户从获取的应用程序申请的行为权限中选取的授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。
本步骤中,用户从每一应用程序申请的行为权限中,根据自身的业务需求以及安全性考虑,分别为每一应用程序进行权限授权,根据为每一应用程序选取的授权行为权限,生成对应该应用程序的应用程序授权权限列表。每一应用程序对应一应用程序授权权限列表,应用程序授权权限列表以应用程序标识进 行标记。本发明实施例中,多个应用程序授权权限列表组成应用程序授权权限列表库,应用程序授权权限列表中,不仅包含有用户为应用程序授权的一个或多个行为权限,也包含有用户为应用程序禁止授权的一个或多个行为权限,也就是说,应用程序授权权限列表中的行为权限,其属性为授权或禁止授权,如果申请的行为权限在应用程序授权权限列表中,其属性为授权,则允许应用程序进行申请的行为权限访问;如果申请的行为权限在应用程序授权权限列表中,其属性为禁止授权,则拒绝应用程序进行申请的行为权限访问。
作为可选实施例,为了便于用户对行为权限的授权选取操作,在根据用户从获取的应用程序申请的行为权限中选取授权权限之前,该方法还可以进一步包括:
将获取的应用程序申请的行为权限进行展示。
本步骤中,为用户提供授权设置界面,在授权设置界面上展示应用程序申请的行为权限,用户在授权设置界面上对展示的行为权限进行授权选取。这样,用户可以借助可视的授权设置界面,方便地选取所需的行为权限进行授权。
作为另一可选实施例,为了提高用户对应用程序申请的行为权限的了解,该方法还可以进一步包括:
对获取的应用程序申请的行为权限进行分类。
本步骤中,可针对每一应用程序,将获取的行为权限分类为隐私权限以及其它权限,其中,对于隐私权限,由于涉及到用户的隐私,需要提醒用户重点关注,而对于其它权限,用户可以根据应用程序的申请,无需过多关注,授予其权限即可。
本发明实施例中,隐私权限包括但不限于以下信息:发送短消息
(android.permission.SEND_SMS)、接入互联网
(android.permission.INTERNET)、读短消息
(android.permission.READ_SMS)、写短消息
(android.permission.WRITE_SMS)、读通讯录
(android.permission.READ_CONTACTS)、写通讯录
(android.permission.WRITE_CONTACTS)、拨打电话
(android.permission.CALL_PHONE)、写系统设置
(android.permission.WRITE_SYNC_SETTINGS)、读取位置信息、进行录音以及读取录音信息。每一隐私权限对应有一函数,例如,对于发送短消息权限,对应的函数为SmsManager.sendTextMessage、SmsManager.sendDataMessage、SmsManager.sendMultipartTextMessage等。
对于隐私权限,又可进一步分为必需权限以及非必需权限。其中,必需权 限为运行应用程序所必需的、由用户授权的行为权限,缺少该授权的行为权限,则应用程序无法正常运行,用户如果需要安装该应用程序,则必须对应用程序申请的必需权限进行全部授权,否则无法安装。非必需权限为应用程序需要的用户授权的行为权限,但为可选项,不会影响应用程序的运行,如果该行为权限未获用户授权,不影响应用程序的安装和运行。例如,必需权限可以包括:写通讯录、拨打电话等,非必需权限可以包括:读取位置信息、接入互联网、读取录音信息等。
作为可选实施例,对于非必要权限,进一步在授权设置界面向用户展示该非必要权限的提示信息。提示信息可以是:非必须权限建议取消,或权限为可选授权项,请根据自身安全策略进行授权等。即建议用户在授权非必要权限时,基于自己隐私安全的考虑,慎重选择授予应用程序的行为权限。
作为另一可选实施例,对于必需权限,还可以进行验证,以确定所有的必需权限是否都为应用程序运行时所必需的,即对应用程序申请的必需权限进行合法性以及合理性的验证。验证的方法可以利用包括隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描等方法,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。其中,应用静态代码分析,能够快速、准确地查找、定位每一应用程序申请的必需权限存在的安全风险及漏洞。而隔离沙箱利用虚拟机技术,通过虚拟机克隆Android平台内硬盘的某一分区或所有分区,并形成一个影子,称之为影子模式。影子模式与Android平台系统具有相同架构和功能,用户可以在影子模式下运行应用程序,对应用程序的任何操作,例如,删改文件、安装测试各种应用程序(包括流氓应用程序、病毒应用程序),都被隔离沙箱所包裹,恶意应用程序对用户隐私信息的截取,都被限制在隔离沙箱内,只要将隔离沙箱关闭,就可以使得危害Android平台的操作消失。因而,通过隔离沙箱方法,监测应用程序对用户数据的访问行为,可以确定应用程序申请的必需权限是否涉及权限滥用,即应用程序出于各种目的,是否向用户申请了本不该申请的行为权限。如果应用程序通过必需权限的方式申请了额外的行为权限,可能导致用户隐私信息泄露,因而,需要将该额外申请的行为权限从必需权限中剔除。例如,如果一个单机游戏应用程序申请了读取用户电话本的行为权限,该读取用户电话本就可能属于单机游戏应用程序本不该申请的行为权限,从而提升用户隐私的安全性。关于利用隔离沙箱、静态代码分析、自动代码特征扫描等方法对应用程序申请的必需权限进行合法性以及合理性的验证,为公知技术,在此略去详述。
这样,通过将应用程序申请的行为权限分类为隐私权限以及其它权限,使 得用户对其中涉及的隐私权限进行关注,从而考虑是否需要对应用程序授予该权限,保障了用户隐私安全;进一步地,通过将隐私权限分为必需权限以及非必需权限,使得用户对于非必需权限,基于自身的安全策略,尽量避免对其授权,从而提升用户隐私安全性;而且,对于必需权限,进行合法性以及合理性的验证,可以将恶意应用程序额外申请的行为权限进行剔除,最大限度地保障用户安全性。
A313,在安装界面加载得到的应用程序授权权限列表。
本步骤中,智能终端设备操作系统为安卓系统。加载用户预先为该待安装应用程序设置的应用程序授权权限列表包括:通过钩子将由智能终端设备操作系统提供的安装界面跳转指向至应用程序授权权限列表对应的界面,并在确认或完成应用程序授权权限列表修改后,结束对所述智能终端设备操作系统提供的安装界面的跳转。具体地,可以在Android平台框架层的源代码中找到应用程序安装执行中需要插入钩子的类和接口,这些类和接口为涉及到用户隐私信息的类和接口,通过分析并修改类和接口的源代码,使得需要读取配置信息文件时插入的钩子的类和接口指向本发明实施例预先设置的应用程序授权权限列表,而非指向应用程序文件包中的配置信息文件,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,并在完成加载到当前安装界面后,指向读取该应用程序的配置信息文件后的操作,使得在完成该应用程序授权权限列表后的操作与现有读取应用程序的配置信息文件后的操作相同。即在按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限后的界面中,设置下一步控件需对应插入钩子的类和接口指向,所述指向与所述应用程序读取配置信息文件进行应用程序的行为权限配置后显示的下一步控件需对应插入钩子的类和接口的指向相同。关于依据本发明实施例描述的功能实现源代码的修改,为公知技术,在此略去详述。实际应用中,通过修改源代码的方式替换Android平台原默认的应用程序安装器,从而实现本发明实施例的应用程序授权权限列表加载,其中,替换Android平台原安装器的方法包括但不限于如下几种:由用户选择新的安装器为Android平台默认的安装器、如果在Root过的移动终端上,可以直接替换Android平台原应用程序安装方案,以及在移动终端的ROM中,替换Android平台原应用程序安装方案。
步骤302,按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
本步骤中,在应用程序安装器按照加载的应用程序授权权限列表配置好应用程序的行为权限后,后续安装流程为公知技术,在此略去详述。
本发明实施例在应用程序安装过程中,举例来说,向用户展示的应用程序 授权权限列表对应的界面可以分行显示,每行依序具体如下:该应用程序申请11项权限,是否安装此应用程序?(第一行);3项隐私权限(非必要权限,建议取消)(第二行);读取位置信息(第三行,读取位置信息前设置有可选框控件);发送短信(第四行,发送短信前设置有可选框控件);拨打电话(第五行,拨打电话前设置有可选框控件);8项其它权限(第六行)等;在界面的最底端,设置有取消控件、安装控件。这样,在加载应用程序授权权限列表后,可以按照安卓平台的整体授权策略进行应用程序的安装,不同的是,该应用程序授权权限列表为用户预先为该应用程序设置的授权权限以及禁止权限,而非应用程序文件包携带的配置信息文件中的申请的权限,使得配置的所述应用程序的行为权限符合所述用程序授权权限列表。
作为可选实施例,在后续流程中,用户如果需要对应用程序的授权权限进行调整,该方法还可以进一步包括:
步骤303,运行预先设置的安全应用程序,对应用程序的授权权限进行更新,以使应用程序在后续运行时,按照更新的授权权限进行相应的访问。
本步骤中,当用户安装好相应的应用程序后,如果需要对应用程序的一些功能或授予应用程序的授权权限进行更新,可以通过运行安全应用程序,在安全应用程序对应的更新界面,由用户选择需要禁用或授权的各应用程序的行为权限,以对应用程序的相应功能以及授权权限进行修改,从而在应用程序再重新运行时,支持用户修改后的相应功能和授权权限的访问。例如,如果禁用了某一授权权限,则在应用程序再次运行时,不再享有用户禁用了的授权权限。
当然,实际应用中,也可以在应用程序试图访问需要权限的应用程序接口(API,Application Program Interface)时,Android平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问API的权限是否被禁用,如果访问API的权限被禁用,该应用程序可以通过人机接口提示用户是否选择修改;若用户选择修改权限,则Android平台允许该应用程序访问所述API,否则,Android平台通知该应用程序退出访问。
作为另一可选实施例,还可以在安装应用程序文件包之前,对该待安装的应用程序文件包进行安全扫描,以确保待安装应用程序文件包的安全性,降低安装恶意应用程序的概率。这样,该方法进一步包括:
对待安装的应用程序对应的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本步骤中,在安装应用程序文件包前,通过对该应用程序文件包进行深度安全扫描,深度安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫 描。例如,对于木马病毒扫描,可以通过将应用程序文件包与预存储的恶意程序库内的特征进行匹配,当应用程序文件包与恶意程序库内的特征相匹配时,提示该应用程序文件包为恶意程序,并建议用户禁止对该应用程序的安装。这样,在安装应用程序前,通过对待安装应用程序文件包进行深度安全扫描,可以识别出恶意应用程序,极大降低用户误安装恶意应用程序的概率。
由上述可见,本发明实施例的基于Android平台安装应用程序的方法,用户在安装应用程序之前,即可选择并确定可以授予该应用程序的行为权限以及禁止授予的行为权限。这样,对于一些敏感行为权限,例如,发送短信、读取联系人等权限,用户在安装该应用程序前,即可禁止该应用程序获取用户对敏感行为权限的授权,在应用程序安装过程中,采用用户安装该应用程序前选择并确定的授权权限对应用程序权限进行配置。因而,即使用户不小心安装并运行了恶意应用程序,由于相应的行为权限已经在安装前被用户禁止,可以将安全隐患损失降到最低,有效提高Android平台的安全性。具体来说,本发明实施例具有安装前的权限管理机制,即在应用程序安装前,用户可以为待安装的应用程序授予选择的行为权限;以及,安装后的权限管理机制,即在应用程序安装完成后,允许用户对已安装的应用程序授予的行为权限进行权限修改,并将修改的授权权限进行存储,以供应用程序在运行时根据修改的权限进行相应的访问。
图4示出了本发明实施例基于智能终端设备安装应用程序的装置结构。参见图4,该装置包括:监测模块、加载模块以及权限配置模块,其中,
监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
本发明实施例中,监测模块还可以进一步用于在监测到应用程序访问需要行为权限的应用程序接口后,安卓平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问应用程序接口的权限是否被禁用,如果访问应用程序接口的权限被禁用,通过人机接口提示用户是否选择修改;若用户选择修改权限,则安卓平台允许该应用程序访问所述应用程序接口,否则,安卓平台通知该应用程序退出访问。
加载模块,用于根据接收的通知,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
权限配置模块,用于按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
本发明实施例中,加载模块包括:解析单元、查询单元以及加载单元(图 中未示出),其中,
解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
本发明实施例中,获取应用程序申请的行为权限包括:通过应用程序官方下载网站获取应用程序文件包;解析应用程序文件包中的配置信息文件,得到该应用程序需要申请的行为权限。其中,解析应用程序文件包中的配置信息文件包括:解压基于智能终端设备的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件,利用Java中的可扩展标记语言文件解析器扫描解密的原始配置信息文件中的权限描述部分。
查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
本发明实施例中,设置应用程序授权权限列表库包括:对每一应用程序,采集并获取应用程序申请的行为权限;根据用户从获取的应用程序申请的行为权限中选取并授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。每一所述应用程序对应一所述应用程序授权权限列表,多个应用程序授权权限列表组成应用程序授权权限列表库。
加载单元,用于在安装界面加载得到的应用程序授权权限列表。
较佳地,加载模块还可以进一步包括:
第一分类单元,用于将获取的应用程序申请的行为权限分类为用于提醒用户重点关注的隐私权限以及按照应用程序申请直接授权的其它权限。
实际应用中,加载模块还可以进一步包括:
第二分类单元,用于将隐私权限分为运行应用程序所必需的必需权限以及运行应用程序可选的非必需权限,并在授权设置界面向用户展示所述非必要权限的提示信息。
作为可选实施例,加载模块还可以进一步包括:
验证单元,用于利用隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描方法,对应用程序申请的所述必需权限进行合法性以及合理性的验证,以确定必需权限中的每一行为权限是否都为应用程序运行时所需的必不可少的行为权限,如果不是,则将该行为权限从必需权限中删除,并作为非必要权限向用户展示。
作为可选实施例,加载单元包括:查询子单元、重配置子单元以及界面生成子单元,其中,
查询子单元,用于在智能终端设备运行平台框架层的源代码中,找到应用 程序的配置信息文件中需要插入钩子的类和接口,所述类和接口为涉及到用户隐私权限的类和接口;
重配置子单元,用于分析并修改所述类和接口的源代码,使得需要读取配置信息文件时插入的钩子的所述类和接口指向预先为该待安装应用程序设置的应用程序授权权限列表;
界面生成子单元,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面。
作为可选实施例,该装置还可以进一步包括:
展示模块,用于将获取的应用程序申请的行为权限进行展示。
作为另一可选实施例,该装置还可以进一步包括:
权限更新模块,用于运行预先设置的安全应用程序,对应用程序的授权行为权限进行更新,以使应用程序在后续运行时,按照更新的授权行为权限进行相应的访问。
作为再一可选实施例,该装置还可以进一步包括:
安全扫描模块,用于对待安装的应用程序对应的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
本发明实施例中,安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为 本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于智能终端设备安装应用程序的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图5示出了可以实现本发明的基于智能终端设备安装应用程序的方法的电子设备。该电子设备传统上包括处理器1210和以存储器1220形式的计算机程序产品或者计算机可读介质。存储器1220可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器1220具有用于执行上述方法中的任何方法步骤的程序代码1231的存储空间1230。例如,用于程序代码的存储空间1230可以包括分别用于实现上面的方法中的各种步骤的各个程序代码1231。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为如参考图6所述的便携式或者固定存储单元。该存储单元可以具有与图5的电子设备中的存储器1220类似布置的存储段或者存储空间 等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括用于执行根据本发明的方法步骤的程序1231’,即可以由例如诸如1210之类的处理器读取的代码,这些代码当由电子设备运行时,导致该电子设备执行上面所描述的方法中的各个步骤。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应该注意的是,上述实施例对本发明进行的详细说明并不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”或“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (43)

  1. 一种基于智能终端设备安装应用程序的方法,包括:
    进行应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改;
    在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
  2. 如权利要求1所述的方法,所述加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
    解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
    在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
  3. 如权利要求2所述的方法,设置所述应用程序授权权限列表库包括:
    对每一应用程序,在应用程序安装过程中,在监测到应用程序读取配置信息文件后,采集并获取应用程序在所述配置信息文件中针对智能终端设备操作系统申请的行为权限;
    根据用户从获取的应用程序申请的行为权限中授权的行为权限,生成存储在应用程序授权权限列表库中的应用程序授权权限列表。
  4. 如权利要求3所述的方法,所述获取应用程序在所述配置信息文件中针对智能终端设备操作系统申请的行为权限包括:
    通过应用程序官方下载网站获取应用程序文件包;
    解析应用程序文件包中的配置信息文件,得到该应用程序针对智能终端设备操作系统需要申请的行为权限。
  5. 如权利要求4所述的方法,所述解析应用程序文件包中的配置信息文件包括:
    解压基于智能终端设备的应用程序文件,从解压的应用程序文件中获取加密的全局变量描述的配置信息文件,并对加密的配置信息文件进行解密,获取解密的原始配置信息文件,扫描解密的原始配置信息文件中的行为权限描述部分。
  6. 如权利要求5所述的方法,利用Java中的可扩展标记语言文件解析器,解析所述解密的原始配置信息文件中的行为权限描述部分。
  7. 如权利要求1所述的方法,每一所述应用程序对应一所述应用程序授权权限列表,多个应用程序授权权限列表组成应用程序授权权限列表库,所述应用程序授权权限列表中包含的授权行为权限为智能终端设备操作系统授予的行为权限的一部分。
  8. 如权利要求3所述的方法,在所述根据用户从获取的应用程序申请的行为权限中授权的行为权限之前,所述方法进一步包括:
    将获取的应用程序申请的行为权限进行展示。
  9. 如权利要求3所述的方法,在所述获取应用程序在所述配置信息文件中针对智能终端设备操作系统申请的行为权限之后,所述方法进一步包括:
    将获取的应用程序申请的行为权限分类为用于提醒用户重点关注的隐私权限以及按照应用程序申请直接授权的其它权限。
  10. 如权利要求9所述的方法,所述方法进一步包括:
    将隐私权限分为运行应用程序所必需的必需权限以及运行应用程序可选的非必需权限,并在授权设置界面向用户展示所述非必要权限的提示信息。
  11. 如权利要求10所述的方法,所述方法进一步包括:
    利用隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描方法,对应用程序申请的所述必需权限进行合法性以及合理性的验证,以确定必需权限中的每一权限是否都为应用程序运行时所需的必不可少的权限,如果不是,则将该权限从必需权限中删除,并作为非必要权限向用户展示。
  12. 如权利要求1所述的方法,所述方法进一步包括:
    运行预先设置的安全应用程序,对应用程序的授权行为权限进行更新,以使应用程序在后续运行时,按照更新的授权行为权限进行相应的访问。
  13. 如权利要求1所述的方法,所述方法进一步包括:
    在监测到应用程序访问需要行为权限的应用程序接口后,安卓平台根据用户为该应用程序设置的应用程序授权权限列表中的记录,判断访问应用程序接口的行为权限是否被禁用,如果访问应用程序接口的行为权限被禁用,通过人机接口提示用户是否选择修改;若用户选择修改行为权限,则安卓平台允许该应用程序访问所述应用程序接口,否则,安卓平台通知该应用程序退出访问。
  14. 如权利要求1所述的方法,在所述应用程序安装完成之前,所述方法进一步包括:
    对待安装的应用程序对应的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述应用程序安装的流程,否则,结束流 程。
  15. 如权利要求14所述的方法,所述安全扫描包括但不限于木马病毒扫描、广告插件扫描、漏洞扫描。
  16. 如权利要求1所述的方法,进一步包括:
    采用加载的应用程序授权权限列表界面替换所述应用程序在安装过程中由智能终端设备操作系统提供的安装界面。
  17. 如权利要求1所述的方法,所述加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
    通过钩子将由智能终端设备操作系统提供的安装界面跳转指向至所述应用程序授权权限列表界面,并在确认或完成应用程序授权权限列表修改后,结束对所述智能终端设备操作系统提供的安装界面的跳转。
  18. 如权利要求1所述的方法,所述智能终端设备操作系统为安卓系统。
  19. 如权利要求1所述的方法,所述加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
    在智能终端设备运行平台框架层的源代码中,找到应用程序的配置信息文件中需要插入钩子的类和接口,所述类和接口为涉及到用户隐私权限的类和接口;
    分析并修改所述类和接口的源代码,使得需要读取配置信息文件时插入的钩子的所述类和接口指向预先为该待安装应用程序设置的应用程序授权权限列表;
    运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面。
  20. 如权利要求1所述的方法,在所述应用程序安装完成之前,所述方法进一步包括:
    在按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限后的界面中,设置下一步控件需对应插入钩子的类和接口指向,所述指向与所述应用程序读取配置信息文件进行应用程序的行为权限配置后显示的下一步控件需对应插入钩子的类和接口的指向相同。
  21. 如权利要求1所述的方法,配置的所述应用程序的行为权限符合所述用程序授权权限列表界面的显示。
  22. 如权利要求1所述的方法,所述配置信息文件中包含有针对智能终端设备操作系统授予所述应用程序的行为权限。
  23. 如权利要求1所述的方法,所述智能终端设备的运行平台包括但不限于安卓平台。
  24. 如权利要求1所述的方法,所述方法进一步包括:
    应用程序按照智能终端设备操作系统提供的钩子的类和接口进行安装,并在该应用程序安装完成后,在安装界面不显示包含应用程序安装完成的提示信息;:
    在监测到更新所述应用程序在安装过程中针对智能终端设备操作系统授予的行为权限完成后,在安装界面显示包含应用程序安装完成的提示信息。
  25. 一种基于智能终端设备安装应用程序的装置,其特征在于,该装置包括:监测模块、加载模块以及权限配置模块,其中,
    监测模块,用于在应用程序安装的过程中,在监测到应用程序需要读取配置信息文件后,通知加载模块;
    加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限,记录对应用程序授权权限列表的修改;
    权限配置模块,用于在应用程序完成安装后,按照对应用程序授权权限列表的修改记录将该应用程序的行为权限进行更新。
  26. 如权利要求25所述的装置,其特征在于,所述加载模块包括:解析单元、查询单元以及加载单元,其中,
    解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
    加载单元,用于在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
  27. 如权利要求26所述的装置,所述加载模块进一步包括:
    第一分类单元,用于将获取的应用程序申请的行为权限分类为用于提醒用户重点关注的隐私权限以及按照应用程序申请直接授权的其它权限。
  28. 如权利要求27所述的装置,所述加载模块进一步包括:
    第二分类单元,用于将隐私权限分为运行应用程序所必需的必需权限以及运行应用程序可选的非必需权限,并在授权设置界面向用户展示所述非必要权限的提示信息。
  29. 如权利要求27所述的装置,所述加载模块进一步包括:
    验证单元,用于利用隔离沙箱、和/或,静态代码分析、和/或,自动代码特征扫描方法,对应用程序申请的所述必需权限进行合法性以及合理性的验 证,以确定必需权限中的每一权限是否都为应用程序运行时所需的必不可少的权限,如果不是,则将该权限从必需权限中删除,并作为非必要权限向用户展示。
  30. 如权利要求25所述的装置,进一步包括:
    展示模块,用于将获取的应用程序申请的行为权限进行展示。
  31. 如权利要求25所述的装置,进一步包括:
    权限更新模块,用于运行预先设置的安全应用程序,对应用程序的授权行为权限进行更新,以使应用程序在后续运行时,按照更新的授权行为权限进行相应的访问。
  32. 如权利要求25所述的装置,进一步包括:
    安全扫描模块,用于对待安装的应用程序文件包进行安全扫描,如果待安装的应用程序文件包通过安全扫描,执行所述安装应用程序文件包的流程,否则,结束流程。
  33. 如权利要求26所述的装置,所述加载单元包括:查询子单元、重配置子单元以及界面生成子单元,其中,
    查询子单元,用于在智能终端设备运行平台框架层的源代码中,找到应用程序的配置信息文件中需要插入钩子的类和接口,所述类和接口为涉及到用户隐私权限的类和接口;
    重配置子单元,用于分析并修改所述类和接口的源代码,使得需要读取配置信息文件时插入的钩子的所述类和接口指向预先为该待安装应用程序设置的应用程序授权权限列表;
    界面生成子单元,运行预先设置的程序代码段,将应用程序授权权限列表加载到当前安装界面,生成所述应用程序授权权限列表界面。
  34. 一种基于智能终端设备安装应用程序的方法,包括:
    进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
    按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
  35. 如权利要求34所述的方法,所述加载为该待安装应用程序设置的应用程序授权权限列表界面包括:
    解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
    在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
  36. 一种基于智能终端设备安装应用程序的装置,其特征在于,该装置包括:监测模块、加载模块以及权限配置模块,其中,
    监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
    加载模块,用于根据接收的通知,加载为该待安装应用程序设置的应用程序授权权限列表界面,所述应用程序授权权限列表界面为提供用于修改应用程序授权权限列表的界面,包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
    权限配置模块,用于按照加载的应用程序授权权限列表界面包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
  37. 如权利要求36所述的装置,其特征在于,所述加载模块包括:解析单元、查询单元以及加载单元,其中,
    解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
    加载单元,用于在安装界面加载得到的应用程序授权权限列表,生成所述应用程序授权权限列表界面。
  38. 一种基于智能终端设备安装应用程序的方法,包括:
    进行应用程序安装,在监测到应用程序需要读取配置信息文件后,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
    按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
  39. 如权利要求38所述的方法,所述加载用户预先为该待安装应用程序设置的应用程序授权权限列表包括:
    解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得 到该应用程序标识对应的应用程序授权权限列表;
    在安装界面加载得到的应用程序授权权限列表。
  40. 一种基于智能终端设备安装应用程序的装置,其特征在于,该装置包括:监测模块、加载模块以及权限配置模块,其中,
    监测模块,用于进行应用程序安装,在监测到应用程序需要读取配置信息文件后,通知加载模块;
    加载模块,用于根据接收的通知,加载用户预先为该待安装应用程序设置的应用程序授权权限列表,所述应用程序授权权限列表中包含有用户为所述待安装应用程序选择性授权的一个或多个行为权限;
    权限配置模块,用于按照加载的应用程序授权权限列表包含的授权行为权限配置应用程序的行为权限,并完成应用程序的安装。
  41. 如权利要求40所述的装置,其特征在于,所述加载模块包括:解析单元、查询单元以及加载单元,其中,
    解析单元,解析用于安装应用程序的应用程序文件包,获取应用程序文件包中的应用程序标识;
    查询单元,用于根据获取的应用程序标识,查询预先设置的应用程序授权权限列表库,得到该应用程序标识对应的应用程序授权权限列表;
    加载单元,用于在安装界面加载得到的应用程序授权权限列表。
  42. 一种计算机程序,包括计算机可读代码,当电子设备运行所述计算机可读代码运行时,导致权利要求1-24或34-35或38-39中的任一项权利要求所述的方法被执行。
  43. 一种计算机可读介质,其中存储了如权利要求42所述的计算机程序。
PCT/CN2014/093595 2014-02-21 2014-12-11 基于智能终端设备安装应用程序的方法与装置 Ceased WO2015124017A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/120,378 US20170068810A1 (en) 2014-02-21 2014-12-11 Method and apparatus for installing an application program based on an intelligent terminal device

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
CN201410060683.X 2014-02-21
CN201410060681.0A CN103839000B (zh) 2014-02-21 2014-02-21 基于智能终端设备安装应用程序的方法与装置
CN201410060683.XA CN103761471A (zh) 2014-02-21 2014-02-21 基于智能终端设备安装应用程序的方法与装置
CN201410060381.2 2014-02-21
CN201410060681.0 2014-02-21
CN201410060381.2A CN103870306A (zh) 2014-02-21 2014-02-21 基于智能终端设备安装应用程序的方法与装置

Publications (1)

Publication Number Publication Date
WO2015124017A1 true WO2015124017A1 (zh) 2015-08-27

Family

ID=53877615

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/093595 Ceased WO2015124017A1 (zh) 2014-02-21 2014-12-11 基于智能终端设备安装应用程序的方法与装置

Country Status (2)

Country Link
US (1) US20170068810A1 (zh)
WO (1) WO2015124017A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112052030A (zh) * 2020-08-24 2020-12-08 东风汽车有限公司 车载应用程序的接口权限配置方法、存储介质和系统
CN114895926A (zh) * 2022-03-30 2022-08-12 厦门汉印电子技术有限公司 一种应用程序安装方法、装置、电子设备及存储介质

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3265951A4 (en) * 2015-03-06 2018-11-21 Nokia Technologies Oy Privacy management
KR20170010574A (ko) * 2015-07-20 2017-02-01 삼성전자주식회사 정보처리장치, 영상처리장치 및 그들의 제어방법
CN107256356A (zh) * 2017-06-20 2017-10-17 广东欧珀移动通信有限公司 支付类应用程序管理方法、装置及移动终端
US11023575B2 (en) * 2017-06-26 2021-06-01 Fortinet, Inc. Security sanitization of USB devices
CN108021388B (zh) * 2017-11-02 2021-03-19 广州慧睿思通信息科技有限公司 一种基于Android系统的实现双卡发送短信方法
US11023218B1 (en) * 2017-12-31 2021-06-01 Wells Fargo Bank, N.A. Metadata driven product configuration management
US10990679B2 (en) 2018-05-07 2021-04-27 Mcafee, Llc Methods, systems, articles of manufacture and apparatus to verify application permission safety
FR3091767A1 (fr) * 2019-01-14 2020-07-17 Orange Autorisation du chargement d’une application dans un élément de sécurité.
US11481517B2 (en) * 2019-05-16 2022-10-25 Check Point Serverless Security Ltd. System and method for determining permission profiles for computer executable functions
CN110727476B (zh) * 2019-10-12 2023-04-07 深圳创维-Rgb电子有限公司 一种授权配置文件的生成方法、装置、设备及存储介质
CN113449332A (zh) * 2020-03-24 2021-09-28 中国电信股份有限公司 访问权限监测方法、装置及计算机可读存储介质
EP4191967B1 (en) * 2020-08-06 2026-02-25 Huawei Technologies Co., Ltd. Application programming interface invoking method, and device and system thereof
CN112463191B (zh) * 2020-11-26 2024-10-22 北京沃东天骏信息技术有限公司 一种文件更新方法及装置、设备、存储介质
CN114610402B (zh) * 2021-01-06 2023-05-23 奇安信网神信息技术(北京)股份有限公司 操作权限控制方法和操作权限配置方法
CN112817822A (zh) * 2021-02-05 2021-05-18 深圳市思迪信息技术股份有限公司 App行为监控方法和装置、终端及存储介质
KR20230040158A (ko) * 2021-09-15 2023-03-22 삼성전자주식회사 설치 파일에 대한 권한을 분석하기 위한 전자 장치 및 그 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102200922A (zh) * 2011-04-06 2011-09-28 宇龙计算机通信科技(深圳)有限公司 应用程序安装方法和终端
CN102289633A (zh) * 2011-09-02 2011-12-21 广东欧珀移动通信有限公司 Android平台下的应用程序动态权限管理方法
CN103514386A (zh) * 2012-06-22 2014-01-15 纬创资通股份有限公司 应用程序的权限控管方法、电子装置及计算机可读取媒体
CN103761471A (zh) * 2014-02-21 2014-04-30 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置
CN103839000A (zh) * 2014-02-21 2014-06-04 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置
CN103870306A (zh) * 2014-02-21 2014-06-18 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102200922A (zh) * 2011-04-06 2011-09-28 宇龙计算机通信科技(深圳)有限公司 应用程序安装方法和终端
CN102289633A (zh) * 2011-09-02 2011-12-21 广东欧珀移动通信有限公司 Android平台下的应用程序动态权限管理方法
CN103514386A (zh) * 2012-06-22 2014-01-15 纬创资通股份有限公司 应用程序的权限控管方法、电子装置及计算机可读取媒体
CN103761471A (zh) * 2014-02-21 2014-04-30 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置
CN103839000A (zh) * 2014-02-21 2014-06-04 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置
CN103870306A (zh) * 2014-02-21 2014-06-18 北京奇虎科技有限公司 基于智能终端设备安装应用程序的方法与装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112052030A (zh) * 2020-08-24 2020-12-08 东风汽车有限公司 车载应用程序的接口权限配置方法、存储介质和系统
CN114895926A (zh) * 2022-03-30 2022-08-12 厦门汉印电子技术有限公司 一种应用程序安装方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US20170068810A1 (en) 2017-03-09

Similar Documents

Publication Publication Date Title
CN103761472B (zh) 基于智能终端设备的应用程序访问方法与装置
US20170068810A1 (en) Method and apparatus for installing an application program based on an intelligent terminal device
US11514159B2 (en) Method and system for preventing and detecting security threats
CN103839000A (zh) 基于智能终端设备安装应用程序的方法与装置
US11259183B2 (en) Determining a security state designation for a computing device based on a source of software
US8769305B2 (en) Secure execution of unsecured apps on a device
Dini et al. Risk analysis of Android applications: A user-centric solution
US20120246731A1 (en) Secure execution of unsecured apps on a device
CN103870306A (zh) 基于智能终端设备安装应用程序的方法与装置
CN103403669A (zh) 使设备上的app变得安全和管理设备上的app
CN103761471A (zh) 基于智能终端设备安装应用程序的方法与装置
CN104462997B (zh) 一种保护移动终端上工作数据的方法、装置和系统
WO2015109668A1 (zh) 应用程序管理方法、装置、终端及计算机存储介质
US20160055344A1 (en) Data loss prevention during app execution using e-mail enforcement on a mobile device
Liebergeld et al. Android security, pitfalls and lessons learned
CN105095788A (zh) 隐私数据保护的方法、装置及系统
Xu Techniques and tools for analyzing and understanding android applications
Kulkarni et al. Open source android vulnerability detection tools: a survey
CN105653904B (zh) 应用锁屏的处理方法、装置及移动终端
CN104573506A (zh) 基于虚拟机对进程行为实时监控的方法及装置
Egners et al. Hackers in your pocket: A survey of smartphone security across platforms
Er-Rajy A new protection for android applications
Rehman et al. Security-enhanced Android for an enterprise
Stavrou Android malware network traffic detection using visual representation (AF)
Schwendemann ERNW NEWSLETTER 55/SEPTEMBER 2016

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14882942

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15120378

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14882942

Country of ref document: EP

Kind code of ref document: A1