Under these mechanisms, a certain known system call can be converted to a call to another address for all applications. Either the address at a known jump table is modified, or the target is overloaded. A software driver at the target address can examine the application and the usage conditions and decide how to handle the original call.
This is used for debug and protection purposes.
This solution has two problems. First there will be an examination overhead for all applications—including those which are not required to go through this process.
Second, there is a privacy issue—personal data may be exposed to a corporate examination software.
Each user device application will be examined using relevant information.
It will be decided per application is it needs protection, and is yes for what system calls.
A wrapping applet will be prepared per application requiring protection which will convert relevant system calls to a call to an application control driver, which will examine the application, the data and the usage conditions and will decide how to handle the original call for service.
Under this invention, a mechanism for controlling the behavior of the applications on the user's device is described. Original application calls can be turned of or converted to other calls. The impact of the original application can be cancelled or modified.
This will allow a range of protection capabilities for mobile devices—per the user request or company the user is working for.
The purpose of this invention is to provide protection to data in a mobile device—the protection is preventing undesired operations such as printing, emailing or modifying the data.
The original application is not modified.
The system and method are based on preparing wrapping applets to the applications of interest.
Application121 and application 222 and application 323 are issuing system calls.
Each will issue two type of calls, Sys1 and Sys2.
Application 3 does not have an applet prepared for it and all its system calls will be handled by the system without any intervention.
Applets 24 and 25 will wake up upon the launch of applications 21 and 22 and will prepare system examination for the address of Sys1 call. Nothing for Sys2.
Sys2 calls of the applications will proceed uninterrupted.
There are several known mechanisms to protect data in a computing environment, such as described in patent application 13/846,953 and patent application 20100175104.