IP Library Granted Patent US 7,047,369
Granted Patent B1
US 7,047,369 · App. 08/937,883 · Granted May 16, 2006

Software application environment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,047,369
App. No.
08/937,883
Granted
May 16, 2006
Kind
B1
Abstract

The invention contains an application operating environment in which acceptable and/or suspect activities may be defined for an application so that unacceptable application behavior can be prevented. This is done by providing a definition table identifying the types of access and actions that the application is allowed and preventing it from carrying out other types of access and actions. The definition table may be built up using a learning process during use of the application. The environment also provides a means of checking information output to a network against a list of confidential information.

Claims (27)

1. Apparatus for ensuring the integrity of an application executed on a computer having data storage arranged sectorwise, comprising:

apparatus for learning about permitted access behavior of said application to said data storage arranged sectorwise by monitoring accesses of said application to sectors of said data storage during a limited learning period in which said application is assumed to be uninfected by a virus; and

an enforcement device, operative after said limited learning period is over, for identifying and preventing said application from accessing sectors elements of data storage that do not correspond with the permitted access behavior of said application.

2. Apparatus according to claim 1 wherein said enforcement device is operative to prompt a user to give specific permission, upon occurrence of an attempt of said application to access sectors of data storage not accessed during said limited learning period.

3. The apparatus of claim 1 , wherein only permitted accesses of said application to sectors of said data storage are monitored during said limited learning period.

4. Apparatus according to claim 1 wherein said data storage arranged sectorwise is selected from a group consisting of a path and a file.

5. A method for detecting forbidden behavior of a first application executed on a computer system, and preventing damage thereupon, comprising:

monitoring accesses of said first application to sectors of data storage arranged sectorwise in a storage device over a limited learning period, in which said first application is assumed to be uninfected by a virus, and storing data storage access permission information about said accesses in an enforcement file, thereby learning permitted access behavior of said application; and

when said limited learning period is over, detecting attempts of said application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

6. A method according to claim 5 , further comprising enabling a user of said first application to determine said permitted access behavior during said limited learning period.

7. A method according to claim 6 , further comprising enabling the user of said first application to determine said permitted access behavior after said limited learning period is over.

8. A method according to claim 6 , further comprising detecting attempts of a child application of said first application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

9. A method according to claim 6 , further comprising detecting attempts of a second application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

10. A method according to claim 5 , further comprising enabling a user of said first application to determine said permitted access behavior after said limited learning period is over.

11. A method according to claim 10 , further comprising detecting attempts of a child application of said first application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

12. A method according to claim 10 , further comprising detecting attempts of a second application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

13. A method according to claim 5 , further comprising detecting attempts of a child application of said first application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

14. A method according to claim 5 , further comprising detecting attempts of a second application to access sectors of data storage that do not correspond to said permitted access behavior as determined by said enforcement file and inhibiting said attempts, thereby preventing damage thereupon.

15. A method according to claim 14 , wherein said second application is executed on a second computer.

16. A method according to claim 5 , wherein said monitoring accesses of said first application to sectors of data storage learns only the permitted access behavior of said first application.

17. A method according to claim 5 , wherein said data storage arranged sectorwise is selected from a group consisting of a path and a file.

18. A method for blocking forbidden access behavior of a program, the method comprising the steps of:

providing a list of access permissions of said program to sectors of data storage, whereby access of said program to sectors of data storage not on said list are forbidden accesses;

monitoring access requests of said program to data storage;

upon indicating a request to access a sector of data storage which does not comply with said list, blocking said request;

during a limited learning period in which said program is assumed to be uninfected by a virus, upon indicating by said monitoring a request to access a sector of data storage which is not on said list, adding said sector to said list as allowable for access.

19. A method according to claim 18 , wherein said monitoring further includes requests of a child application of said program to access data storage.

Assignments (5)
FIRST LIEN PATENT SECURITY AGREEMENT RELEASE Recorded Mar 12, 2014
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
To: ALADDIN KNOWLEDGE SYSTEMS LTD
Reel/Frame 032437/0257 →
SECOND LIEN PATENT SECURITY AGREEMENT RELEASE Recorded Mar 12, 2014
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
To: ALADDIN KNOWLEDGE SYSTEMS LTD
Reel/Frame 032437/0341 →
CHANGE OF NAME Recorded Feb 23, 2011
From: ALADDIN KNOWLEDGE SYSTEMS LTD.
To: SAFENET DATA SECURITY (ISRAEL) LTD.
Reel/Frame 025848/0923 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Aug 30, 2010
From: ALLADDIN KNOWLEDGE SYSTEMS LTD.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
Reel/Frame 024900/0702 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Aug 27, 2010
From: ALLADDIN KNOWLEDGE SYSTEMS LTD.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
Reel/Frame 024892/0677 →