Intercepting inter-process communications

US9910979B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9910979-B2
Application numberUS-201414313135-A
CountryUS
Kind codeB2
Filing dateJun 24, 2014
Priority dateJun 24, 2014
Publication dateMar 6, 2018
Grant dateMar 6, 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.

Intercepting inter-process communications by determining a first computer memory location of an inter-process communications function of an instance of a virtual machine and causing an interception function at a second computer memory location to be called when a computer software application calls the inter-process communications function.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for modifying inter-process communications (IPC) in a mobile computing environment, the method comprising: determining a first computer memory location of an IPC function within an instance of a virtual machine, the IPC function configured to receive IPC calls from an application running on the instance of the virtual machine; configuring the instance of the virtual machine to redirect, from the IPC function, each IPC call from the application to an interception function located at a second computer memory location within the instance of the virtual machine; responsive to the interception function receiving an IPC call from the application, identifying, in a post-interception database, a set of post-interception actions corresponding to the IPC call; selecting a post-interception action from the set of post-interception actions, the post-intercept action including: invoking a method used to record policies for a set of binder interfaces; inferring transaction information including an interface operated in a transaction corresponding to the transaction parameters by inspecting a set of binder transaction parameters; and passing the transaction information to the interception function to apply the pre-defined policy; modifying, according to the post-interception action, transaction parameters to generate a modified IPC call compliant to a pre-defined policy; sending, by the interception function, the modified IPC call to the IPC function; receiving, by the interception function, a response from the IPC function; and forwarding, by the interception function, the response to the application. 2. A computer program product for intercepting inter-process communications (IPC), the computer program product comprising: one or more non-transitory computer readable storage media and program instructions stored on the one or more non-transitory computer readable storage media, the program instructions comprising: program instructions to determine a first computer memory location of an IPC function within an instance of a virtual machine, the IPC function configured to receive IPC calls from an application running on the instance of the virtual machine; program instructions to configure the instance of the virtual machine to redirect, from the IPC function, each IPC call from the application to an interception function located at a second computer memory location within the instance of the virtual machine; program instructions to, responsive to the interception function receiving an IPC call from the application, identify, in a post-interception database, a set of post-interception actions corresponding to the IPC call; program instructions to select a post-interception action from the set of post-interception actions, the post-intercept action including: invoking a method used to record policies for a set of binder interfaces; inferring transaction information including an interface operated in a transaction corresponding to the transaction parameters by inspecting a set of binder transaction parameters; and passing the transaction information to the interception function to apply the pre-defined policy; program instructions to modify, according to the post-interception action, transaction parameters to generate a modified IPC call compliant to a pre-defined policy; program instructions to send, by the interception function, the modified IPC call to the IPC function; program instructions to receive, by the interception function, a response from the IPC function; and program instructions to forward, by the interception function, the response to the application. 3. A system for intercepting inter-process communications (IPC), the system comprising: one or more computer hardware processors, one or more non-transitory computer readable storage media, and program instructions stored on the computer readable storage media for execution by at least one of the one or more processors, the program instructions comprising: program instructions to determine a first computer memory location of an IPC function within an instance of a virtual machine, the IPC function configured to receive IPC calls from an application running on the instance of the virtual machine; program instructions to configure the instance of the virtual machine to redirect, from the IPC function, each IPC call from the application to an interception function located at a second computer memory location within the instance of the virtual machine; program instructions to, responsive to the interception function receiving an IPC call from the application, identify, in a post-interception database, a set of post-interception actions corresponding to the IPC call; program instructions to select a post-interception action from the set of post-interception actions, the post-intercept action including: invoking a method used to record policies for a set of binder interfaces; inferring transaction information including an interface operated in a transaction corresponding to the transaction parameters by inspecting a set of binder transaction parameters; and passing the transaction information to the interception function to apply the pre-defined policy; program instructions to modify, according to the post-interception action, transaction parameters to generate a modified IPC call compliant to a pre-defined policy; program instructions to send, by the interception function, the modified IPC call to the IPC function; program instructions to receive, by the interception function, a response from the IPC function; and program instructions to forward, by the interception function, the response to the application.

Assignees

Inventors

Classifications

  • G06F9/54Primary

    Interprogram communication · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • G06F21/50Primary

    Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems · CPC title

  • Test or assess a computer or a system · CPC title

  • Network integration; Enabling network access in virtual machine instances · 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 US9910979B2 cover?
Intercepting inter-process communications by determining a first computer memory location of an inter-process communications function of an instance of a virtual machine and causing an interception function at a second computer memory location to be called when a computer software application calls the inter-process communications function.
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/54. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 06 2018 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).