US10795985B2 - Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices - Google Patents

Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices Download PDF

Info

Publication number
US10795985B2
US10795985B2 US15/306,066 US201515306066A US10795985B2 US 10795985 B2 US10795985 B2 US 10795985B2 US 201515306066 A US201515306066 A US 201515306066A US 10795985 B2 US10795985 B2 US 10795985B2
Authority
US
United States
Prior art keywords
policy
decision
environment
secure
computing device
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.)
Active
Application number
US15/306,066
Other languages
English (en)
Other versions
US20170048714A1 (en
Inventor
Philip Attfield
Daniel Schaffner
Michael Thomas Hendrick
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.)
Sequitur Labs Inc
Original Assignee
Sequitur Labs Inc
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 US13/945,677 external-priority patent/US10169571B1/en
Application filed by Sequitur Labs Inc filed Critical Sequitur Labs Inc
Priority to US15/306,066 priority Critical patent/US10795985B2/en
Publication of US20170048714A1 publication Critical patent/US20170048714A1/en
Application granted granted Critical
Publication of US10795985B2 publication Critical patent/US10795985B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security

Definitions

  • the technical fields are (among others): Telecommunications, Digital Communication, Computer Technology, Digital Security, and IT Methods for Management.
  • smartphones and similar devices are typically capable of running a wide variety of software applications such as browsers, e-mail clients, media players, and other applications, which in some cases may be installed by the user.
  • Such sophisticated and capable smartphones and similar devices along with the vast amounts of information that they can contain and access, present a large set of potential security vulnerabilities (a large “attack surface”) that might allow information to be accessed by malicious parties or allow undesirable use and exploitation of the device capabilities for malicious purposes such as “phishing” fraud, other online fraud, inclusion in ‘botnets’ for spam transmission, denial-of-service attacks, malicious code distribution, and other undesirable activities.
  • smartphone handsets by nature are portable and thus more easily stolen. Portability also means that the devices will encounter more varied security contexts difficult to foresee, and which may only occur once or twice during the lifecycle of the device.
  • the mobile threat landscape is complex and presents a vast set of extant and emergent security concerns. Therefore, there is a pressing and growing need for comprehensive and secure systems for controlling access to the capabilities and information present on the mobile devices.
  • the technology presented in the disclosure herein pertains to a very granular and secure policy-based control of capabilities, information access and resource usage on handsets and other mobile computing devices. Also presented are certain methods, techniques, and system architectures for preserving the confidentiality of system communications and stored information; for removing, or eliminating exposure of, certain security vulnerabilities; and for defending the system and the handsets to be protected from various kinds of attacks and unwanted activities.
  • novel aspects of the present disclosure include (for example): a client/server architecture which protects data by having secured and unsecured areas of operation; policy development, verification, and introspection means usable in modern wireless devices and the devices that may communicate over them, particularly through the use of secured and unsecured architecture and message transmission schemes; storing of policies in secured areas, as well as the caching of server-provided policies and rules for faster access, wherein the cached data can be stored in a secure area; use of policy enforcement points within a secured area, in order to further prevent malicious access by untrusted entities; data protection using a secure environment along with a façade application that is accessible to the untrusted environment, wherein the façade application interacts with the secure environment in a limited manner; utilization of message root of trust information, as coupled with policy-based control, that utilizes a secure environment; code execution based on trusted chain information; and utilization of secure environment areas based upon policy-based information.
  • the present invention is a secure, highly scalable, policy-based access and resource control system for protecting computing devices from various threats, and for controlling their usage and access to information.
  • the secure areas can be configured separate from the main device operating system. In some instances, the secure areas can be configured to prevent access to certain resources.
  • a further level of security can be provided if such secure areas or partitions are configured to be invisible and/or undetectable, to the greatest degree possible, to unauthorized parties, or under unauthorized circumstances.
  • SEs secure environments
  • FIG. 1 is a schematic representation of a policy-based access control and Management system for mobile handsets.
  • FIG. 2 is a schematic representation of one instance of a Policy Decision Point (PDP) server instance housed locally inside a secured area of a handset.
  • PDP Policy Decision Point
  • FIG. 3 is a representation of a main handset having a secure PDP, and other handsets in an associated Virtual Private Network (VPN, or similar means) using the secure PDP.
  • VPN Virtual Private Network
  • FIG. 4 is a representation of a mobile computing device having a PDP interface that communicates with a PDP service located remotely in another service or cloud area.
  • FIG. 5 is a representation of steps that might be used to retrieve a decision policy from a decision cache.
  • FIG. 6 is a representation of components that might go into creating a decision certificate.
  • FIG. 7 is a representation of steps and components that might be used to validate a decision certificate.
  • FIG. 8 is a representation of a handset where the PEPs are located within the secure environment.
  • FIG. 9 is a representation of how IRQs might be used to securely communicate with protected PEP assets.
  • FIG. 10 is a representation of a façade application in the untrusted area being in secure communication with the paired companion application in the secure area.
  • FIG. 11 is a representation showing example traces or verifications that might rely upon a fundamental root of trust.
  • FIG. 12 is a representation showing a handset with memory areas in both the secure and untrusted areas.
  • FIG. 13 is a representation of steps that might be used to schedule and run trusted code.
  • the present invention pertains to a secure, highly scalable, policy-based access and resource control system for protecting mobile computing devices from various threats and controlling their usage and access to information.
  • the present invention builds upon U.S. Utility application Ser. No. 13/945,677 (incorporated by reference above) and adds, among other features, secure areas for data processing and storage which are separate from untrusted environment areas of operation.
  • the basic system presented in the incorporated application is summarized in FIG. 1 from the prior application.
  • the system described therein provides extensive granularity of control over permitted operations, along with network, file system, and device access on handsets controlled by the system.
  • the system utilizes one or more policy decision point (PDP) servers which respond to encrypted queries from handsets controlled by a given instance on the system.
  • PDP policy decision point
  • PDP servers may be remote from the handset, or may even be hosted within the handset.
  • the queries typically encapsulate requests for use of specific handset or network-accessible assets, and the PDP response to such a request is then received by the querying handset. Subsequent decisions are made by the PDP and then enforced by the Policy Enforcement Points (PEPs) on the handset.
  • PEPs Policy Enforcement Points
  • FIG. 2 is a schematic representation of one instance of the PDP server instance housed locally inside a secured area of a handset.
  • This description is intended to be an overview of the certain aspects of the present invention, while also describing various aspects already covered in the pending earlier application Ser. No. (13/945,677).
  • the left portion shows the Policy Development and Code Synthesis 100 which includes both an “Introspective PDP Construction” 110 and a “Hardened PDP Construction” 120 .
  • the invention can utilize a unique policy definition language, or policy object language (POL) for describing polices to be enforced, which might include tag-based policy definitions, and a specialized structure for hierarchical policy-set representation and processing.
  • POL policy object language
  • the invention includes a specialized POL compiler 102 that dynamically generates and outputs software source code containing a policy logic implementation for a given policy set that is then combined with supplementary static code elements from compilation into PDP server executables.
  • the policies can come from Policy capture operations 104 , or from existing (prior developed) policies that might exist in a database 106 .
  • the introspective version 110 is shown and is suited to purposes such as policy development, feature development, debugging, functional verification and testing.
  • Static PDP code 112 and variable PDP code 114 are utilized to achieve an Introspective PDP Build 116 .
  • An introspective PDP 118 then results and can be used for development and testing, before being implemented in a hardened PDP environment.
  • the second higher performance hardened executable server 120 is shown for deployment purposes.
  • the hardened version uses static PDP code 122 and variable PDP code 124 to achieve a hardened PDP build 126 .
  • a hardened PDP 128 then results and can be utilized directly in a deployed PDP Server instance. Instances of these latter, hardened PDP executables handle queries from client handsets in the field and provide responses.
  • PDP servers compute policy decisions based on policy-based logic plus handset state information and other contextual information such as user role and location that may be available.
  • FIG. 2 also shows a representative field deployment 200 of a PDP server instance housed locally inside a secured area of a handset.
  • a representative mobile computing device 202 is shown that utilizes a secure environment 204 and an untrusted (unsecure) environment 206 .
  • the mobile device includes agent software 208 and a representative collection of policy enforcement points (PEPs) 210 that are resident on handsets protected by the invention.
  • PEPs policy enforcement points
  • a specialized PDP server instance 212 is shown that serves as a Policy Decision Point (PDP) and which contains defined versions of policies and processing logic.
  • the PDP Server instance is shown located in the secure environment 204 for added protection against unwanted access to the PDP information.
  • PDP Policy Decision Point
  • the mobile device also contains applications 214 and an Operating system (OS) 216 that interacts with the PEPs.
  • the PEPs serve as enforcement points between various devices which communicate (or exist) in the untrusted environment 206 of the mobile computing device.
  • the example devices include a first radio 218 , second radio 220 , memory card 224 , camera 226 , and other miscellaneous devices 228 .
  • the PDP Server instance 212 communicates with the agent 208 via a secure line of communication 230 .
  • a decision cache 213 is also shown located in the secure environment 204 which communicates with the agent 208 via a secure communication connection 232 .
  • the handset can be protected via installed software (termed “DEADBOLT”TM) with capabilities including an agent implementation 208 for performing secure query and response communication with remote PDP server instances ( 212 ) and other supporting tasks, and for managing enforcement of policy-based decisions, either directly as received from a query-response the PDP, or from a local decision cache 213 .
  • Enforcement of decisions resulting from handset queries to a PDP, or of cached decisions, is performed at the PEPs.
  • the PEPs are typically inserted via software on the handset, or in some cases inserted at a lower level than the device operating system in order to eliminate certain vulnerabilities, including (for instance) undesired root access and other exploits.
  • the PEPs thereby serve to provide rigorous enforcement of access decisions, in some cases by appropriately controlling access to resources and information located on the handset or elsewhere, such as in a remote location on a network, and by monitoring the execution of allowed actions. In some cases, such control will consist of appropriately allowing or denying access to a resource. In other cases, intermediate limits on the usage of certain resources can be applied, such as bandwidth throttling, Quality of Service (QoS) limitations, or access limitations through priority levels. For example, variable control might include invoking the maximum picture capture resolution allowed from a camera, and/or the maximum memory and CPU utilization allowed for use by any particular application.
  • QoS Quality of Service
  • variable control might include invoking the maximum picture capture resolution allowed from a camera, and/or the maximum memory and CPU utilization allowed for use by any particular application.
  • certain example attributes are central to the security and operation of the present PDP server 212 .
  • these include the following:
  • the PDP server 212 can be housed, either wholly or partially, in a secure environment 204 on the mobile device 202 .
  • the PDP server 212 can run entirely within the secure environment 204 , including (for instance) the use of memory 240 and other computing resources that are accessible only from within the secure environment.
  • the PDP need only respond to queries from local sources on the device, over secure local communication channels. In this manner, there will be no externally visible or vulnerable ports or other attack surfaces for a malicious user to access.
  • FIG. 3 shows another variant of the present system.
  • the PDP server 302 is housed in the secure area of one mobile computing device 300 (e.g., handset).
  • This secure PDP may be used to receive and respond to queries regarding authorization actions from a restricted set of other handsets.
  • Handset 1 ( 304 ), Handset 2 ( 306 ), and Handset N ( 308 ) can operate within a group on a local restricted network, or on (for example) a Virtual Private Network (VPN) 310 .
  • a valid, hardened and secure PDP might be available on one handset, and via the use of a private or secure network the other handsets can utilize the PDP decision-making power of that hardened PDP Server. This allows for the hardened system security resources to be shared by many other devices.
  • FIG. 4 illustrates that the secure environment to be coupled with the present policy-access control and management system that can reside within an device or external server.
  • the mobile computing device 400 would have a PDP interface means 402 within the secure area of the device.
  • the actual PDP server would reside in variety of other external devices or services.
  • a cloud-based service 404 is shown with the PDP Server 406 (e.g., hardened or otherwise) existing within the cloud service environment.
  • a web server 410 is next shown with the PDP Server 406 incorporated and running within.
  • a File Server 412 is shown with the PDP Server 406 incorporated and running within.
  • a secure communication link can be used to provide access calls from the secure area of the Mobile Computing device. In this manner, the workload on the handset can be lessened, with the PDP processing being performed by remote (external) servers or processing centers.
  • the present invention includes the possibility of maintaining a cache of previously made policy decisions within a secure area. This is illustrated above in the Decision Cache 213 of FIG. 2 being in the secure area 204 of the mobile computing device 202 .
  • This cache can be used to reduce queries to external PDP servers, along with reducing the security risks associated with such external queries.
  • the Decision cache can also be useful in situations where the handset and/or PDP server are offline or unavailable for any reason. This cache can also prove to be useful in situations where preventing external communication is advisable to preserve anonymity or to maintain “radio silence”.
  • FIG. 5 illustrates one potential implementation of the system for a secure area cache, which includes the following steps:
  • This request might be made in the form of a token, and be sent to the secure area to retrieve the cached policy decision, if one is available.
  • the request is expected to be signed and encrypted, and possibly protected by other means to prevent undesired viewing or tampering or other malicious usage.
  • the identifier or unique serial number (SN) of such a token could be used as a hash function, and hence the index mechanism, that is used with the token to find the policy on the behalf of the requestor.
  • the PDP may generate a certificate that contains such a SN or index hash, as well as the policy decision.
  • the device then stores this certificate in the Secure Environment token for later use ( 510 ).
  • timestamps and other validity-related information can be embedded within the cached certificate.
  • the clock elements of the certificate can then be enforced by, for instance, a trusted clock on the device.
  • FIG. 6 demonstrates how a variety of information can be used to formulate the example Decision Certificate 600 .
  • a first instance of validity information 602 along with a second instance of validity information 604 , and so forth until the Nth instance of validity information 606 is shown being used to create the Decision Certificate 600 .
  • Validity information can be anything ranging from date ranges, to location information, to user-based parameters.
  • the decision certificate When combined with timestamps 608 , the decision certificate then becomes a powerful security check that can be enforced and validated by a trusted clock on the resident device.
  • the decision certificate can then be stored for retrieval and subsequent use in the cache 610 in the secure environment 612 .
  • FIG. 7 shows the decision certificate 700 being retrieved from the Cache 702 for comparison against a PDP certificate as found in the PDP server instance 704 .
  • the example flowchart further details the process.
  • a decision certificate is received ( 710 ). This decision certificate is then compared to the PDP certificate ( 712 ). If the received decision certificate is valid, then instructions are issued to the requesting hardware or device ( 714 ). If the received decision certificate is not valid, then the invalid attempt can be logged for later security system review and analysis ( 716 ).
  • Cache flushing can additionally be performed via token Application interfaces (APIs) that allow navigation of token content. Additional attributes that are presently associated with a cache entry can thereby be encoded into the decision certificates.
  • APIs token Application interfaces
  • the present system employs the use of PEPs as described previously, as used for intercepting access attempts and for controlling access to handset functionality and features.
  • FIG. 8 shows an example embodiment of this configuration.
  • the secure environment 800 (via software or hardware, virtual or otherwise) extends to include the PEPs 802 , 804 , 806 , 808 , and 810 which are located in the secure area.
  • the PDP Server instance 812 is also located in the secure area, along with the decision cache 814 .
  • the untrusted environment 820 continues to include the agent 822 , along with the Applications 824 and the OS 826 .
  • the example external interface devices radio 1 ( 830 ), radio 2 ( 832 ), memory card ( 834 ), camera ( 836 ) and miscellaneous device ( 838 ) are configured to communicate with the PEPs across the secure boundary without exposing the underlying handset (or mobile device) to outside tampering.
  • the applications 824 and OS 826 communicate with the PEPs across the secure boundary via a secure connection 840
  • the agent communicates with the PEPs via a secure connection 842 .
  • the agent 822 communicates with the decision cache 824 via secure connection 844 , and with the PDP Server Instance 812 via a secure connection 846 .
  • the resulting configuration suggested by the figures can be achieved via hardware and software implementation, or a combination of both.
  • One example embodiment and mechanism for achieving such security would be to insert the PEPs as function calls within the secure environment such that they are protected from malicious attack.
  • the PEPs should also be configured in such a way that they are difficult to bypass or subvert.
  • a series of implementation steps are suggested below in FIG. 9 and are meant to serve as one non-limiting example of ways in which this security could be achieved.
  • the primary idea is that the PEPs reside in the secure environment as a means of shielding them from attack, wherein such residence can be accomplished in a variety of ways.
  • exceptions need to be configured for the SE and the untrusted world.
  • 906 shows the creation or utilization of a fault hander for interaction with the untrusted world that emulates the IO by a secure monitor call (SMC) to the SE.
  • SMC secure monitor call
  • 908 provides functionality so that a call with the SE completes the IO attempt.
  • the validity of the IO attempt is checked in step 910 . If the attempt is valid, then the process 912 proceeds with a return back to the untrusted world. If the IO attempt is not correct, and the attempt is not allowed by the policy, then a blocking action 914 can be used.
  • a notification can also be created for later tracking and analysis of the system security.
  • Sensitive data on the device should be protected and inaccessible to outside threats. Essentially the sensitive data should be rendered invisible to such unauthorized parties. However, it might be useful for certain applications in the untrusted world to make use of certain data stored in the SE without actually seeing or knowing the results of that data.
  • One example would be an e-commerce “store” application in which purchases ideally would take place without personal banking information or credit card data being exposed.
  • Another example might include sensitive enterprise data that an enterprise employee or contractor might need to make use of, but should do so without having visibility into the data content.
  • FIG. 10 shows a representative example of such a façade application 1000 that exists within, and interacts with, the untrusted world or unsecured data area 1002 .
  • a companion application 1004 resides within the secure environment 1003 and is paired with the façade application 1000 .
  • the paired façade application and the companion application could be implemented in a variety of ways. For example, the pair could be coupled using limited data access and/or trusted calls 1006 to the secure environment.
  • Data stored in a secure area 1008 would only be accessed by (and through) the companion application 1004 in the SE. Data would generally not be unencrypted in the untrusted area 1002 . The data would move in and out of the SE—such as to an external server in an encrypted form. Data can be decrypted for processing and use inside the SE. The decrypted results and processing results can then be handed out on a limited and controlled basis—to the façade application 1000 in the untrusted area 1002 .
  • each trusted element or component has a certificate of trust or other degree-of-trust statement that is traceable and verifiable to a “root of trust”.
  • a root of trust is commonly a compact, hard-to-modify, hardware component.
  • Other roots of trust also exist, such as stored certificates on hardened, secure servers that are suitable for networked environments.
  • the present invention can make use of such a root of trust to provide additional security for a policy-based access control and management system, such as the one described in the incorporated-by-reference application Ser. No. 13/945,677.
  • a policy or set of policies by a higher ranking owner takes precedence in the underlying decision analysis, and will overrule a policy owned by a lower ranked owner.
  • Such ownership can be verified and made query-able by requiring certification and traceability of the policy ownership back to the basic or fundamental root of trust.
  • the pristine (or untampered-with) state of a given policy can be verified through key-pair based signing of a given policy or policy set, with the signing certificate again being traceable back to the basic root of trust.
  • Other verifications, for example, of the authenticity of the decision output itself can be made through signing of the decision output, which is again traceable in the trusted chain back to the root of trust.
  • FIG. 11 shows an example of various policies that could be traced back to the root of trust 1100 —via a signing certificate or other comparable means—in order to verify the need at hand.
  • Both tracing 1102 and verification 1104 of the policy owner can be performed. Owners can have at least one digital certificate associated with them and their identity to assist in tracing and verification.
  • the state 1106 of the policy can be verified (e.g., whether the policy has been tampered with or not).
  • the root of trust can be used to establish the precedence of the policy owners 1108 .
  • policy owner 1 1110
  • An Nth degree of policy owners ( 1114 ) could similarly be compared and ranked in terms of their particular precedent in policy execution.
  • the present invention also provides a method of having code execute (or not) in a non-trusted state that is derived and traceable to a trusted chain.
  • One advantage of having such a capability is that greater system resources can be utilized. For instance, a block of otherwise untrusted additional RAM or memory can be used with some degree of trust to operate on secure operations.
  • the method consists of using a processor that is trusted, or in a trusted state, and coupling it with a marked executable region that the processor might operate within, or operate on. If an attempt is made by the processor to execute non-trusted code, such as code not loaded while in a trusted state, then a fault or exception is noted. The trustworthiness of the code should be traceable to a root of trust such as that described above. Loading of trusted-only code can be made enforceable via a trusted load mechanism.
  • This method can additionally be augmented by “coloring” or designating specific areas of RAM or memory or other registers such that they can be marked and bound to trusted regions. In operation, the trust boundary cannot be violated once the attribute is set on the memory and bound to a particular register.
  • FIG. 12 shows the representative handset diagram as presented above, having an untrusted area 1200 and secure environment 1202 .
  • a non-secure memory store 1204 is shown in the untrusted area 1200 .
  • a counterpart secure memory area 1206 is shown in the secure environment 1202 .
  • the concept of coloring is generally illustrated, wherein certain registers 1208 of the otherwise non-secure memory have been designated as a trusted boundary. These registers can therefore be used, in a controlled manner, for limited secure or trusted operations, thereby freeing up processing resources of the secure area.
  • FIG. 13 shows an example diagram of the process, wherein the scheduler or similar such device 1300 is considering different representative code segments Code 1 ( 1302 ), Code 2 ( 1304 ), and so forth to Code N ( 1306 ) for execution scheduling.
  • the scheduler 1300 uses a trusted mechanism to query 1308 whether the code is trusted. If “Yes” then a branch to trusted execution 1310 can be invoked. If the code is not trusted, then it should not be executed in the secure area 1312 . Additionally, the untrusted code attempt can be logged or flagged 1314 for later analysis.
  • the trust boundary can be manifested by representing the data object as an attribute.
  • a higher level authority can be used to arbitrate in such a case via traceability over the network. Accordingly, data from lower levels of trust can be analyzed and possibly considered “suspect” and handled accordingly. Depending upon the level and the security desired, the data could be handled or not via the secure environment.
  • policies can be applied to limit the use of memory and other system resources. More generally, the described policy-based access control can be used to limit and control permissible activities within the secure environment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
US15/306,066 2013-07-18 2015-04-24 Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices Active US10795985B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/306,066 US10795985B2 (en) 2013-07-18 2015-04-24 Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/945,677 US10169571B1 (en) 2012-07-18 2013-07-18 System and method for secure, policy-based access control for mobile computing devices
US201461987053P 2014-05-01 2014-05-01
US15/306,066 US10795985B2 (en) 2013-07-18 2015-04-24 Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices
PCT/US2015/027561 WO2016010602A2 (fr) 2014-05-01 2015-04-24 Applications de zones de mémoire sécurisées et d'environnements sécurisés dans des systèmes de contrôle d'accès basés sur des règles et destinés à des dispositifs informatiques mobiles

Publications (2)

Publication Number Publication Date
US20170048714A1 US20170048714A1 (en) 2017-02-16
US10795985B2 true US10795985B2 (en) 2020-10-06

Family

ID=55079151

Family Applications (1)

Application Number Title Priority Date Filing Date
US15/306,066 Active US10795985B2 (en) 2013-07-18 2015-04-24 Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices

Country Status (3)

Country Link
US (1) US10795985B2 (fr)
GB (1) GB2541572A (fr)
WO (1) WO2016010602A2 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11546336B1 (en) * 2019-10-22 2023-01-03 Amazon Technologies, Inc. Independently configurable access device stages for processing interconnect access requests
US11693977B2 (en) 2020-10-07 2023-07-04 International Business Machines Corporation Software defined data security layer

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9411962B2 (en) 2012-07-18 2016-08-09 Sequitur Labs Inc. System and methods for secure utilization of attestation in policy-based decision making for mobile device management and security
US10795985B2 (en) * 2013-07-18 2020-10-06 Sequitur Labs Inc. Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices
WO2016037048A1 (fr) 2014-09-05 2016-03-10 Sequitur Labs, Inc. Exécution et messagerie d'un code sécurisé géré par des règles pour des dispositifs informatiques, et sécurité d'un dispositif informatique
US10685130B2 (en) 2015-04-21 2020-06-16 Sequitur Labs Inc. System and methods for context-aware and situation-aware secure, policy-based access control for computing devices
US11847237B1 (en) 2015-04-28 2023-12-19 Sequitur Labs, Inc. Secure data protection and encryption techniques for computing devices and information storage
US11425168B2 (en) 2015-05-14 2022-08-23 Sequitur Labs, Inc. System and methods for facilitating secure computing device control and operation
US9893883B1 (en) 2015-06-26 2018-02-13 Juniper Networks, Inc. Decryption of secure sockets layer sessions having enabled perfect forward secrecy using a diffie-hellman key exchange
US10291651B1 (en) 2015-06-26 2019-05-14 Juniper Networks, Inc. Unified secure socket layer decryption
US10193698B1 (en) * 2015-06-26 2019-01-29 Juniper Networks, Inc. Avoiding interdicted certificate cache poisoning for secure sockets layer forward proxy
US10700865B1 (en) 2016-10-21 2020-06-30 Sequitur Labs Inc. System and method for granting secure access to computing services hidden in trusted computing environments to an unsecure requestor
US11102002B2 (en) * 2018-12-28 2021-08-24 Dell Products, L.P. Trust domain isolation management in secured execution environments
US11212096B2 (en) 2019-01-29 2021-12-28 Cellar Door Media, Llc API and encryption key secrets management system and method
EP3924834A4 (fr) * 2019-02-14 2022-11-02 Carnegie Mellon University Procédé et appareil pour établir une racine de confiance logicielle sur un système informatique non sécurisé
US20230344837A1 (en) * 2022-04-25 2023-10-26 Intuit Inc. Client cache complete control protocol for cloud security

Citations (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881225A (en) 1997-04-14 1999-03-09 Araxsys, Inc. Security monitor for controlling functional access to a computer system
US20040098454A1 (en) * 2002-11-20 2004-05-20 Ibm Method and apparatus for secure processing of sensitive data
US20050193196A1 (en) 2004-02-26 2005-09-01 Ming-Yuh Huang Cryptographically enforced, multiple-role, policy-enabled object dissemination control mechanism
US20060184804A1 (en) * 2005-02-15 2006-08-17 Arm Limited Data processing apparatus security
US20060212574A1 (en) * 2005-03-01 2006-09-21 Oracle International Corporation Policy interface description framework
US7140035B1 (en) 2000-02-01 2006-11-21 Teleran Technologies, Inc. Rule based security policy enforcement
US20070006282A1 (en) * 2005-06-30 2007-01-04 David Durham Techniques for authenticated posture reporting and associated enforcement of network access
US7246233B2 (en) 2001-12-05 2007-07-17 International Business Machines Corporation Policy-driven kernel-based security implementation
US20070226795A1 (en) * 2006-02-09 2007-09-27 Texas Instruments Incorporated Virtual cores and hardware-supported hypervisor integrated circuits, systems, methods and processes of manufacture
US20070234402A1 (en) * 2006-03-31 2007-10-04 Hormuzd Khosravi Hierarchical trust based posture reporting and policy enforcement
US20080016550A1 (en) * 2006-06-14 2008-01-17 Mcalister Donald K Securing network traffic by distributing policies in a hierarchy over secure tunnels
US20080184336A1 (en) * 2007-01-29 2008-07-31 Sekhar Sarukkai Policy resolution in an entitlement management system
US20090089125A1 (en) 2002-02-25 2009-04-02 Public Warehousing Company Ksc Customs inspection and data processing system and method thereof for web-based processing of customs information
US20090165083A1 (en) * 2007-12-24 2009-06-25 Mclean Ivan H Method and apparatus for managing policies for time-based licenses on mobile devices
US20090193503A1 (en) * 2008-01-28 2009-07-30 Gbs Laboratories Llc Network access control
US20090204785A1 (en) 1999-01-28 2009-08-13 Ati International Srl Computer with two execution modes
US20090205016A1 (en) 2007-12-10 2009-08-13 Milas Brian T Policy enforcement using esso
US20100250370A1 (en) 2009-03-26 2010-09-30 Chacha Search Inc. Method and system for improving targeting of advertising
US20110191579A1 (en) * 2007-08-01 2011-08-04 China Iwncomm Co, Ltd trusted network connect method for enhancing security
US20120005718A1 (en) * 2007-08-08 2012-01-05 China Iwncomm Co, Ltd trusted network connect system for enhancing the security
US8127982B1 (en) 2009-01-09 2012-03-06 Apple Inc. Parental controls
US20120216012A1 (en) 2008-10-15 2012-08-23 Hyperion Core, Inc. Sequential processor comprising an alu array
US8285249B2 (en) 2007-06-28 2012-10-09 Kajeet, Inc. Feature management of an electronic device
US20120270523A1 (en) * 2006-10-23 2012-10-25 Mcafee, Inc. System and method for controlling mobile device access to a network
US20130111211A1 (en) * 2011-10-31 2013-05-02 L-3 Communications Corporation External Reference Monitor
US20130145429A1 (en) * 2011-12-06 2013-06-06 Broadcom Corporation System Utilizing a Secure Element
US8463819B2 (en) 2004-09-01 2013-06-11 Oracle International Corporation Centralized enterprise security policy framework
US8468586B2 (en) 2009-11-03 2013-06-18 Oracle International Corporation Methods and systems for implementing policy based trust management
US20130198838A1 (en) * 2010-03-05 2013-08-01 Interdigital Patent Holdings, Inc. Method and apparatus for providing security to devices
US20130219176A1 (en) * 2012-01-06 2013-08-22 Venkata Sastry Akella Secure Virtual File Management System
US20130253942A1 (en) 2012-03-22 2013-09-26 Hong Kong Baptist University Methods and Apparatus for Smart Healthcare Decision Analytics and Support
US20130275760A1 (en) * 2012-04-17 2013-10-17 Qualcomm Incorporated Method for configuring an internal entity of a remote station with a certificate
US20130298664A1 (en) 2012-05-08 2013-11-14 Logimesh IP, LLC Pipe with vibrational analytics
US20140115659A1 (en) 2012-07-18 2014-04-24 Sequitur Labs, Inc. System and Methods for Secure Utilization of Attestation in Policy-Based Decision Making for Mobile Device Management and Security
US20140189777A1 (en) * 2012-12-28 2014-07-03 Tarun Viswanathan Policy-based secure containers for multiple enterprise applications
WO2015026389A2 (fr) 2012-12-27 2015-02-26 Sequitur Labs, Inc. Utilisations et applications de communications en champ proche dans la gestion et la sécurité de dispositif mobile
US20150074746A1 (en) * 2013-09-06 2015-03-12 Microsoft Corporation World-Driven Access Control Using Trusted Certificates
US9066230B1 (en) * 2012-06-27 2015-06-23 Sprint Communications Company L.P. Trusted policy and charging enforcement function
US20150207625A1 (en) * 2014-01-21 2015-07-23 Cofactor Computing Llc Method and system for shielding data in untrusted environments
US9135437B1 (en) * 2014-03-24 2015-09-15 Amazon Technologies, Inc. Hypervisor enforcement of cryptographic policy
US20150350254A1 (en) 2014-06-02 2015-12-03 Sequitur Labs Inc. Autonomous and adaptive methods and system for secure, policy-based control of remote and locally controlled computing devices
US20170048714A1 (en) * 2013-07-18 2017-02-16 Sequitur Labs Inc. Applications of Secured Memory Areas and Secure Environments in Policy-Based Access Control Systems for Mobile Computing Devices

Patent Citations (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881225A (en) 1997-04-14 1999-03-09 Araxsys, Inc. Security monitor for controlling functional access to a computer system
US20090204785A1 (en) 1999-01-28 2009-08-13 Ati International Srl Computer with two execution modes
US7140035B1 (en) 2000-02-01 2006-11-21 Teleran Technologies, Inc. Rule based security policy enforcement
US7246233B2 (en) 2001-12-05 2007-07-17 International Business Machines Corporation Policy-driven kernel-based security implementation
US20090089125A1 (en) 2002-02-25 2009-04-02 Public Warehousing Company Ksc Customs inspection and data processing system and method thereof for web-based processing of customs information
US20040098454A1 (en) * 2002-11-20 2004-05-20 Ibm Method and apparatus for secure processing of sensitive data
US20050193196A1 (en) 2004-02-26 2005-09-01 Ming-Yuh Huang Cryptographically enforced, multiple-role, policy-enabled object dissemination control mechanism
US7640429B2 (en) 2004-02-26 2009-12-29 The Boeing Company Cryptographically enforced, multiple-role, policy-enabled object dissemination control mechanism
US8463819B2 (en) 2004-09-01 2013-06-11 Oracle International Corporation Centralized enterprise security policy framework
US20060184804A1 (en) * 2005-02-15 2006-08-17 Arm Limited Data processing apparatus security
US20060212574A1 (en) * 2005-03-01 2006-09-21 Oracle International Corporation Policy interface description framework
US20070006282A1 (en) * 2005-06-30 2007-01-04 David Durham Techniques for authenticated posture reporting and associated enforcement of network access
US20070226795A1 (en) * 2006-02-09 2007-09-27 Texas Instruments Incorporated Virtual cores and hardware-supported hypervisor integrated circuits, systems, methods and processes of manufacture
US20070234402A1 (en) * 2006-03-31 2007-10-04 Hormuzd Khosravi Hierarchical trust based posture reporting and policy enforcement
US20080016550A1 (en) * 2006-06-14 2008-01-17 Mcalister Donald K Securing network traffic by distributing policies in a hierarchy over secure tunnels
US20120270523A1 (en) * 2006-10-23 2012-10-25 Mcafee, Inc. System and method for controlling mobile device access to a network
US20080184336A1 (en) * 2007-01-29 2008-07-31 Sekhar Sarukkai Policy resolution in an entitlement management system
US20130029653A1 (en) 2007-06-28 2013-01-31 Kajeet, Inc. Feature management of a communication device
US8285249B2 (en) 2007-06-28 2012-10-09 Kajeet, Inc. Feature management of an electronic device
US20110191579A1 (en) * 2007-08-01 2011-08-04 China Iwncomm Co, Ltd trusted network connect method for enhancing security
US20120005718A1 (en) * 2007-08-08 2012-01-05 China Iwncomm Co, Ltd trusted network connect system for enhancing the security
US20090205016A1 (en) 2007-12-10 2009-08-13 Milas Brian T Policy enforcement using esso
US20090165083A1 (en) * 2007-12-24 2009-06-25 Mclean Ivan H Method and apparatus for managing policies for time-based licenses on mobile devices
US20090193503A1 (en) * 2008-01-28 2009-07-30 Gbs Laboratories Llc Network access control
US20120216012A1 (en) 2008-10-15 2012-08-23 Hyperion Core, Inc. Sequential processor comprising an alu array
US8127982B1 (en) 2009-01-09 2012-03-06 Apple Inc. Parental controls
US20100250370A1 (en) 2009-03-26 2010-09-30 Chacha Search Inc. Method and system for improving targeting of advertising
US8468586B2 (en) 2009-11-03 2013-06-18 Oracle International Corporation Methods and systems for implementing policy based trust management
US20130198838A1 (en) * 2010-03-05 2013-08-01 Interdigital Patent Holdings, Inc. Method and apparatus for providing security to devices
US20130111211A1 (en) * 2011-10-31 2013-05-02 L-3 Communications Corporation External Reference Monitor
US20130145429A1 (en) * 2011-12-06 2013-06-06 Broadcom Corporation System Utilizing a Secure Element
US20130219176A1 (en) * 2012-01-06 2013-08-22 Venkata Sastry Akella Secure Virtual File Management System
US20130253942A1 (en) 2012-03-22 2013-09-26 Hong Kong Baptist University Methods and Apparatus for Smart Healthcare Decision Analytics and Support
US20130275760A1 (en) * 2012-04-17 2013-10-17 Qualcomm Incorporated Method for configuring an internal entity of a remote station with a certificate
US20130298664A1 (en) 2012-05-08 2013-11-14 Logimesh IP, LLC Pipe with vibrational analytics
US9066230B1 (en) * 2012-06-27 2015-06-23 Sprint Communications Company L.P. Trusted policy and charging enforcement function
US20140115659A1 (en) 2012-07-18 2014-04-24 Sequitur Labs, Inc. System and Methods for Secure Utilization of Attestation in Policy-Based Decision Making for Mobile Device Management and Security
WO2015026389A2 (fr) 2012-12-27 2015-02-26 Sequitur Labs, Inc. Utilisations et applications de communications en champ proche dans la gestion et la sécurité de dispositif mobile
US20140189777A1 (en) * 2012-12-28 2014-07-03 Tarun Viswanathan Policy-based secure containers for multiple enterprise applications
US20170048714A1 (en) * 2013-07-18 2017-02-16 Sequitur Labs Inc. Applications of Secured Memory Areas and Secure Environments in Policy-Based Access Control Systems for Mobile Computing Devices
US20150074746A1 (en) * 2013-09-06 2015-03-12 Microsoft Corporation World-Driven Access Control Using Trusted Certificates
US20150207625A1 (en) * 2014-01-21 2015-07-23 Cofactor Computing Llc Method and system for shielding data in untrusted environments
US9135437B1 (en) * 2014-03-24 2015-09-15 Amazon Technologies, Inc. Hypervisor enforcement of cryptographic policy
US20150350254A1 (en) 2014-06-02 2015-12-03 Sequitur Labs Inc. Autonomous and adaptive methods and system for secure, policy-based control of remote and locally controlled computing devices

Non-Patent Citations (19)

* Cited by examiner, † Cited by third party
Title
"Computer Architecture: A Quantitative Approach", Hennessy J. and Patterson, D., 5th Ed. Morgan Kaufman (2011).
"Computer Networks", Tanenbaum, A. Andrew and Wetherall, D., 5th Ed. Prentice Hall (2010).
"Prolog Programming: A First Course", Brna, P. (Mar. 5, 2001). Retrieved from <http://homepages.int.ed.ac.uk/obrna/prolog book/> on Mar. 16, 2013.
Bitcoin, Inc., "What are multi-signature transactions?", Obtained from http://bitcoin.stackexchange.com/questions/3718/what-are-multi-signature-transactions on Apr. 6, 2015.
Bluetooth Special Interest Group website, "A Look at the Basics of Bluetooth Wireless Technology", http://www.bluetooth.com/Pages/Basics.aspx, retrieved Oct. 29, 2012.
IEEE P1076 Working Group, http://www.eda.org/twiki/bin/view.cgi/P1076, accessed May 12, 2014.
K. Ashton, That ‘Internet of Things’ Thing, RFID Journal Jun. 22, 2009 (available online as of Oct. 20, 2013 at http://www.rfidjournal.com/articles/view?4986).
K. Ashton, That 'Internet of Things' Thing, RFID Journal Jun. 22, 2009 (available online as of Oct. 20, 2013 at http://www.rfidjournal.com/articles/view?4986).
L. Woods, Zs. Istvan, G. Alonso. Ibex (2014) "An Intelligent Storage Engine with Support for Advanced SQL Off-loading." VLDB 2014, Hangzhou, China, Sep. 2014.
Landt, Jerry (2001), "Shrouds of Time: The history of RFID", AIM, Inc, pp. 5-7.
Nakamoto, Satoshi. "Bitcoin: A peer-to-peer electronic cash system." Consulted Jan. 2012 (2008): 28. Obtained from http://www.cryptovest.co.uk/resources/Bitcoin%20paper%20Original.pdf on Apr. 6, 2015.
NFC Forum (2007), "Near Field Communication and the NFC Forum: The Keys to Truly Interoperable Communications" (PDF), http://www.nfc-forum.org, retrieved Oct. 30, 2012.
NPL Search (Google Scholar) (Year: 2020). *
See e.g. H. Schildt, C++-The Complete Reference, 2nd edition, pp. 67-70 McGraw Hill, 1995, ISBN 0-07-882123-1.
See e.g. H. Schildt, C++—The Complete Reference, 2nd edition, pp. 67-70 McGraw Hill, 1995, ISBN 0-07-882123-1.
T. White, Hadoop-The Definitive Guide, O'Reilly, 2009, ISBN 978-0-596-52197-4.
T. White, Hadoop—The Definitive Guide, O'Reilly, 2009, ISBN 978-0-596-52197-4.
University of British Columbia, Department of Electrical and Computer Engineering, http://www.ece.ubc.ca/˜edc/379.an99/lectures/lec13.pdf, accessed May 12, 2014.
Verilog, http://www.verilog.com/, accessed May 12, 2014.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11546336B1 (en) * 2019-10-22 2023-01-03 Amazon Technologies, Inc. Independently configurable access device stages for processing interconnect access requests
US11693977B2 (en) 2020-10-07 2023-07-04 International Business Machines Corporation Software defined data security layer

Also Published As

Publication number Publication date
WO2016010602A3 (fr) 2016-03-17
WO2016010602A2 (fr) 2016-01-21
US20170048714A1 (en) 2017-02-16
GB2541572A (en) 2017-02-22

Similar Documents

Publication Publication Date Title
US10795985B2 (en) Applications of secured memory areas and secure environments in policy-based access control systems for mobile computing devices
Chadwick et al. A cloud-edge based data security architecture for sharing and analysing cyber threat information
US10885182B1 (en) System and method for secure, policy-based access control for mobile computing devices
Hoekstra et al. Using innovative instructions to create trustworthy software solutions.
Modi et al. A survey on security issues and solutions at different layers of Cloud computing
Martin et al. 2011 CWE/SANS top 25 most dangerous software errors
Yu et al. Cloud computing and security challenges
Borky et al. Protecting information with cybersecurity
Alasmari et al. Security & privacy challenges in IoT-based health cloud
KR101745843B1 (ko) 개인 데이터를 보호하기 위한 방법 및 디바이스
US10700865B1 (en) System and method for granting secure access to computing services hidden in trusted computing environments to an unsecure requestor
Sikder et al. A survey on android security: development and deployment hindrance and best practices
WO2023088925A1 (fr) Environnement d&#39;exécution de confiance pour maillage de service
US11595372B1 (en) Data source driven expected network policy control
Sanfilippo et al. Stride-based threat modeling for mysql databases
Ulltveit‐Moe et al. Enforcing mobile security with location‐aware role‐based access control
B. Fernandez et al. A pattern for a Secure IoT Thing
Ulltveit-Moe et al. Mobile security with location-aware role-based access control
Mahar et al. TTECCDU: a blockchain-based approach for expressive authorization management
Wagner et al. Challenges of Using Trusted Computing for Collaborative Data Processing
Mancini Modern mobile platforms from a security perspective
Mahmoodi et al. A secure communication in mobile agent system
Shen et al. A Fibonacci based batch auditing protocol for cloud data
Nejad Cyber Security
Gowrisankar et al. GateKeeper: Operator-centric Trusted App Management Framework on ARM TrustZone

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: SEQUITUR LABS, INC., WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ATTFIELD, PHILIP;SCHAFFNER, DANIEL;HENDRICK, MICHAEL THOMAS;REEL/FRAME:063837/0356

Effective date: 20150622

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY