Establishing application trust levels using taint propagation as a service

US10032037B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10032037-B1
Application numberUS-201414494336-A
CountryUS
Kind codeB1
Filing dateSep 23, 2014
Priority dateSep 23, 2014
Publication dateJul 24, 2018
Grant dateJul 24, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An application of a mobile device may be granted access to sensitive or private information. The mobile device may be configured to monitor the application's use of any sensitive data obtained by the application. The mobile device may include, with the sensitive data, taint propagation data configured to enable the mobile device to detect that application's use of the cloaked sensitive data. As a result of detecting the application use of the sensitive data, trust information corresponding to the applications use of the cloaked sensitive data may be provided a service provider. The service provider may be configured to determine a trust level of the application and perform remedial operations based at least in part on the determined trust level.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computer-implemented method comprising: receiving, from a first application of a client device, a first request for first data generated by a sensor device of the client device; querying a database to identify a first trust level associated with the first application, wherein the first trust level represents a probability of the first application transmitting the first data; applying a first level of cloaking to the first data based at least in part on the first trust level to generate first cloaked data; executing instructions to cause insertion of taint data with the first cloaked data in a response to the first request received from the first application; transmitting the taint data to a buffer associated with an output device in response to the first application transmitting the first cloaked data to a second application; monitoring the buffer to detect the taint data; transmitting an update associated with the first cloaked data to the database; decreasing the first trust level associated with the first application to a second trust level in response to receiving the update; receiving, from the first application, a second request for second data generated by the sensor device; and applying a second level of cloaking to the second data based at least in part on the second trust level to generate second cloaked data. 2. The computer-implemented method of claim 1 , further comprising: aggregating a set of notifications received from a plurality of client devices, wherein the first trust level is based at least in part on the aggregated set of notifications. 3. The computer-implemented method of claim 2 , further comprising applying a weight to a first notification of the aggregated set of notifications based at least in part on a time of receipt of the first notification. 4. The computer-implemented method of claim 1 , further comprising at least one of: notifying the client device of the first trust level, receiving an acknowledgment of the first trust level, or preventing a download of the first application. 5. A system comprising: one or more processors; and memory to store computer-executable instructions that, if executed by the one or more processors, cause the one or more processors to: execute an application associated with first trust information aggregated from each of a plurality of client devices, the first trust information based at least in part on taint data detected by at least one of the plurality of client devices as a result of execution of the application, wherein the first trust information indicates unauthorized exposure of data by the application; receive, by a sensor device of the client device, a request from the application for first data; query a database to identify a first trust level associated with the application, wherein the first trust level of the application is based at least in part on the first trust information; apply a first level of cloaking to the first data based at least in part on the first trust level to generate first cloaked data; execute first instructions to cause insertion of the taint data with the first cloaked data in a response to the request received from the application; transmit the taint data to a buffer associated with an output device in response to the application transmitting the first cloaked data to a second application; transmit an update associated with the first cloaked data to the database; decrease the first trust level associated with the application to a second trust level in response to receiving the update; receive, from the application, a second request for second data generated by the sensor device; and apply a second level of cloaking to the second data based at least in part on the second trust level to generate second cloaked data. 6. The system of claim 5 , the memory to store computer-executable instructions that, if executed, cause the one or more processors to provide at least one of the plurality of client devices with a notification indicating the taint data has been received for network transmission at an output device of the client device. 7. The system of claim 5 , the memory to store computer-executable instructions that, if executed, cause the one or more processors to identify the first trust level of the application. 8. The system of claim 7 , the memory to store computer-executable instructions that, if executed, cause the one or more processors to transmit, from the client device, an acknowledgement of the first trust level of the application. 9. The system of claim 5 , the memory to store computer-executable instructions that, if executed, cause the one or more processors to provide a notification to an electronic address associated with a developer of the application, the notification indicating the unauthorized exposure by the application of the first cloaked data stored in a storage location classified as sensitive as a result of behavior of the application executed by the client device. 10. The system of claim 5 , wherein the first trust level of the application is calculated based at least in part on a policy associated with the application. 11. The system of claim 5 , wherein the first trust level is determined based at least in part on a previous trust level associated with a previous version of the application. 12. A non-transitory computer-readable storage medium having stored thereon executable instructions that, if executed by a processor, cause the processor to: transmit a notification identifying taint data received from a first application for network transmission at an output device of a client device, the taint data usable to track use of sensitive data having a first level of cloaking; receive, a first request from the first application for first data generated by a sensor device; query a database to identify a first trust level associated with the first application, wherein the first trust level decreased in response to receipt of the notification; apply, by the sensor device, a first level of cloaking to the first data based at least in part on the first trust level to generate first cloaked data; execute first instructions to cause insertion of the taint data with the first cloaked data in response to the first request; transmit an update associated with the first cloaked data to the database; generate a second trust level associated with the first application in response to receiving the update; receive, from the application, a second request for second data generated by the sensor device; and apply a second level of cloaking to the second data based at least in part on the second trust level to generate second cloaked data. 13. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions, if executed by the processor, cause the processor to: receive a plurality of additional notifications from one or more mobile devices, wherein each notification of the plurality of additional notifications indicates the first application attempted to transmit the taint data; and group the plurality of additional notifications into a first subset based at least in part on attributes of users of the one or more mobile devices. 14. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions, if executed by the processor, cause the processor to calculate the first trust level based at least in part on the first subset. 15. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions if executed by the processor, cause the processor to receive an first update

Assignees

Inventors

Classifications

  • G06F21/62Primary

    Protecting access to data via a platform, e.g. using keys or access control rules · CPC title

  • Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities · CPC title

  • Protecting personal data, e.g. for financial or medical purposes · CPC title

  • Protecting data · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10032037B1 cover?
An application of a mobile device may be granted access to sensitive or private information. The mobile device may be configured to monitor the application's use of any sensitive data obtained by the application. The mobile device may include, with the sensitive data, taint propagation data configured to enable the mobile device to detect that application's use of the cloaked sensitive data. As…
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/62. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 24 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).