Content handling for applications

US10445528B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10445528-B2
Application numberUS-201113227201-A
CountryUS
Kind codeB2
Filing dateSep 7, 2011
Priority dateSep 7, 2011
Publication dateOct 15, 2019
Grant dateOct 15, 2019

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.

Techniques for content handling for applications are described. In one or more implementations, a first set of content handling policies is enforced for a first portion of an application that is permitted to invoke code elements of the computing device and a second set of content handling policies is enforced for a second portion of the application that is not permitted to invoke the code elements. Further, a determination is made whether to apply the first set of content handling policies or the second set of content handling policies to content based on which portion of the application is requesting the content.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: one or more processors; and one or more computer-readable storage devices storing instructions, comprising at least an application manager module and a content inspection module, that are executable by the one or more processors to: receive an indication that a portion of an application is requesting to pass content to a code element of a computing device, the application including a first compartment and a second compartment that include different respective portions of application code that enable different respective functionality to be invoked by the respective compartments of the application; execute the content inspection module to ascertain, based at least on an identifier for the portion of the application, whether the portion of the application is part of the first compartment of the application that is permitted to access a sensitive functionality of the computing device, or part of the second compartment of the application that lacks permission to access the sensitive functionality, the first compartment having a first set of content handling policies and the second compartment having a second set of content handling policies, wherein the identifier comprises a uniform resource identifier (URI) providing a designation of the first compartment being related to a locally stored compartment or the second compartment being a remotely stored compartment in a manner specifying whether the application is permitted to access the sensitive functionality of the computing device; and execute the application manager module to apply one of the first set of content handling policies or the second set of content handling policies to the request to: (1) determine whether the application indicates that the untrusted content is to be sanitized before it is passed to the code element and (2) pass the content to the code element based on whether the portion of the application that is requesting to pass the content is part of the first compartment or the second compartment of the application, wherein the portion of the application being allowed or disallowed to pass the content to the code element subject to one of the first set of content handling policies or the second set of content handling policies. 2. The system as described in claim 1 , wherein the code elements comprise one of more of a function, a subroutine, a method, a parameter, a property, or an interface. 3. The system as described in claim 1 , wherein the first set of content handling policies specifies that content with a source that is remote from the computing device is untrusted content. 4. The system as described in claim 1 , wherein the first set of content handling policies specifies untrusted content lacks permission to include executable code. 5. The system as described in claim 1 , wherein the first set of content handling policies specifies that responsive to ascertaining that the content includes untrusted content and that the portion of the application is part of the first compartment, the untrusted content is to be inspected to determine whether the untrusted content is safe before the untrusted content is permitted to be passed to the code element. 6. The system as described in claim 5 , wherein the instructions are further executable by the one or more processors to determine whether the application is opting out of content inspection for the untrusted content. 7. The system as described in claim 1 , wherein the first set of content handling policies specifies that content retrieved locally from the computing device is to be encoded using a specific character encoding format or the content will be prevented from being parsed. 8. A method comprising: detecting that a portion of an application executing on a computing device is requesting to pass content to a code element of the computing device, wherein the computing device comprises an application manager module and a content inspection module; ascertaining, by the content inspection modules of the computing device, and based at least on an identifier for the portion of the application, whether the portion of the application is part of a first compartment of the application that is permitted to access a sensitive functionality of the computing device, or part of a second compartment of the application that lacks permission to access the sensitive functionality, the first compartment and the second compartment including different respective portions of application code that enable different respective functionality to be invoked by the respective compartments of the application, wherein the identifier comprises a uniform resource identifier (URI) that references the first compartment being related to a locally stored compartment or the second compartment being related to a remotely stored compartment in a manner specifying whether the application is permitted to access the sensitive functionality of the computing device; and responsive to the ascertaining, determining, by the application manager module of the computing device, whether the application indicates that the untrusted content is to be sanitized before it is passed to the code element and whether to allow or disallow the request based on whether the portion of the application is part of the first compartment or the second compartment. 9. The method as described in claim 8 , wherein the code element is included as part of a pre-specified group of code elements based on the code element enabling access to the sensitive functionality of the computing device. 10. The method as described in claim 8 , wherein the code element comprises at least one of a function, a subroutine, a method, a parameter, a property, or an application programming interface (API). 11. The method as described in claim 8 , further comprising, in response to a determination that the portion of the application is part of the first compartment, ascertaining whether the content is permitted to be passed to the code element based on a source of the content and a content type for the content. 12. The method as described in claim 11 , further comprising ascertaining that the content lacks permission to be passed to the code element based on a determination that the source of the content is remote from the computing device and the content type indicates that the content includes executable code. 13. The method as described in claim 8 , further comprising, in response to a determination that the portion of the application is part of the first compartment and that the content is from an untrusted source, inspecting the content to determine whether the content is safe or unsafe to be passed to the code element. 14. The method as described in claim 8 , further comprising preventing the content from being passed to the code element in response to a determination that the portion of the application is part of the second compartment. 15. The method as described in claim 8 , further comprising allowing the content to be passed to the code element in response to ascertaining, based on a uniform resource indicator (URI) that references the content, that the source of the content is local to the computing device. 16. A method, comprising: determining that a portion of an application is requesting that content be passed to a code element of a computing device, wherein the computing device comprises an application manager module and a content inspection module; determining, at the content inspection modules of the computing device, and based on at least an identifier for the portion of the application, whether the portion of the applica

Assignees

Inventors

Classifications

  • Vulnerability analysis · CPC title

  • G06F21/566Primary

    Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities · CPC title

  • for detecting or protecting against malicious traffic · CPC title

  • Computer malware detection or handling, e.g. anti-virus arrangements · CPC title

  • Access rights, e.g. capability lists, access control lists, access tables, access matrices · 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 US10445528B2 cover?
Techniques for content handling for applications are described. In one or more implementations, a first set of content handling policies is enforced for a first portion of an application that is permitted to invoke code elements of the computing device and a second set of content handling policies is enforced for a second portion of the application that is not permitted to invoke the code eleme…
Who is the assignee on this patent?
Risney Jr David L, Graham Scott B, Jourdain Mathias, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06F21/566. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 15 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).