IP Library Granted Patent US 8,943,593
Granted Patent B2
US 8,943,593 · App. 13/957,297 · Granted Jan 27, 2015

Dynamic provisioning of protection software in a host instrusion prevention system

Inventors: Anthony Robert Durie (Ottawa, CA); William G. McGee (Ottawa, CA)
Assignee: Trend Micro Incorporated
H04L63/1441H04L63/1408H04L63/20
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 8,943,593
App. No.
13/957,297
Granted
Jan 27, 2015
Kind
B2
Abstract

Methods and apparatus for optimizing security configurations of a set of computers are disclosed. A set of local servers, each functioning as a deep-security manager supporting a respective subset of the computers, maintains protection software containing filters and rules for deploying each filter. A local server receives updated protection software from a central server. Each local server interrogates each computer of its subset of computers to acquire computer-characterizing data and applies relevant rules to determine an optimal set of filters for each computer. Each rule adaptively determines required characterizing data elements from each computer for determining an optimal security configuration. A local server updates the security configuration of a computer to suit changes in the operational environment of the computer.

Claims (48)

1. A server for protecting a plurality of computers from intrusion, the server comprising at least one processor configured to:

maintain a plurality of filters, each filter for combating at least one intrusion pattern from a set of known intrusion patterns;

maintain a plurality of descriptors, each descriptor relevant to a respective computer characteristic;

select a specific descriptor as a current descriptor;

recursively:

send said current descriptor to a selected computer of said plurality of computers;

receive a current data element from said selected computer indicating a value of said current descriptor;

determine a subsequent descriptor according to said current data element;

replace said current descriptor with said subsequent descriptor; and

determine requisite filters of said plurality of filters for said selected computer upon determining reception of respective requisite data elements;

and

transmit said requisite filters to said selected computer.

2. The server of claim 1 wherein said plurality of descriptors is arranged in a tree structure having a root descriptor and leaf descriptors and said at least one processor is configured to detect said subsequent descriptor becoming a leaf descriptor indicating reception of said respective requisite data elements.

3. The server of claim 1 wherein said at least one processor is configured to execute processor-readable instructions to determine said subsequent descriptor based on said current descriptor and said current data element.

4. The server of claim 1 wherein said at least one processor is coupled to a memory device storing a lookup table for determining said subsequent descriptor based on said current descriptor and said current data element.

5. The server of claim 1 further comprising a scheduler for determining a time table for examining each computer of said plurality of computers.

6. The server of claim 1 wherein said at least one processor is configured to divide said plurality of descriptors into computer-specific sets of descriptors and wherein said current descriptor and said subsequent descriptor belong to a set of descriptors specific to said selected computer.

7. The server of claim 1 wherein said at least one processor is configured to divide said plurality of descriptors into sets of descriptors pertinent to respective computer types and wherein said current descriptor and said subsequent descriptor belong to a set of descriptors specific to a type of said selected computer.

8. The server of claim 1 further comprising a database for storing current profiles of said plurality of computers.

9. The server of claim 8 wherein said at least one processor is configured to:

classify said plurality of computers according to predefined computer types; and

associate computer-specific descriptors with each computer type.

10. The server of claim 1 wherein said descriptors include at least one of: processor type, storage capacity, current application software, processes being run, and errors logged.

11. The server of claim 1 wherein said at least one processor is further configured to track changes of said requisite filters and determine a monitoring period for said selected computer accordingly.

12. A method implemented in a server comprising at least one processor for protecting a plurality of computers from intrusion, the method comprising:

maintaining in a memory device a plurality of filters, each filter for combating at least one intrusion pattern from a set of known intrusion patterns;

acquiring a plurality of descriptors, each descriptor relevant to a respective computer characteristic;

selecting a specific descriptor as a current descriptor;

executing a recursive process comprising:

sending said current descriptor to a selected computer of said plurality of computers;

receiving a current data element from said selected computer indicating a value of said current descriptor;

determining a subsequent descriptor according to said current data element;

replacing said current descriptor with said subsequent descriptor; and

determining requisite filters of said plurality of filters for said selected computer upon determining reception of respective requisite data elements;

and

transmitting said requisite filters to said selected computer.

13. The method of claim 12 further comprising arranging said plurality of descriptors in a tree structure having a root descriptor and leaf descriptors and configuring said at least one processor to terminate said recursive process upon detecting that said subsequent descriptor is a leaf descriptor, said detecting being indicative of acquisition of said respective requisite data elements.

14. The method of claim 12 further comprising executing processor-readable instructions for determining said subsequent descriptor based on said current descriptor and said current data element.

15. The method of claim 12 further comprising examining a lookup table stored in said memory device for determining said subsequent descriptor based on said current descriptor and said current data element.

16. The method of claim 12 further comprising determining a time table for examining each computer of said plurality of computers.

17. The method of claim 1 further comprising dividing said plurality of descriptors into computer-specific sets of descriptors and selecting said current descriptor and said subsequent descriptor from a set of descriptors specific to said selected computer.

18. The method of claim 12 further comprising dividing said plurality of descriptors into sets of descriptors pertinent to respective computer types and selecting said current descriptor and said subsequent descriptor from a set of descriptors specific to a type of said selected computer.

19. The method of claim 12 further storing current profiles of said plurality of computers in a database maintained at said server.

20. The method of claim 19 further comprising:

classifying said plurality of computers according to predefined computer types; and

associating computer-specific descriptors with each computer type.

21. The method of claim 12 further comprising tracking changes of said requisite filters and determining a monitoring period for said selected computer according to timing of tracked changes.

22. The method of claim 12 wherein said transmitting comprises excluding requisite filters already installed in said selected computer.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA (ASSIGNOR) PREVIOUSLY RECORDED ON REEL 030929 FRAME 0124. ASSIGNOR(S) HEREBY CONFIRMS THE CONVEYING PARTY DATA (ASSIGNOR) IS LISTED AS TREND MICRO INCORPORATED BUT SHOULD BE LISTED AS THIRD BRIGADE INC.. Recorded Aug 6, 2013
From: THIRD BRIGADE INC.
To: TREND MICRO KABUSHIKI KAISHA
Reel/Frame 030983/0604 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2013
From: DURIE, ANTHONY ROBERT
To: THIRD BRIGADE INC.
Reel/Frame 030929/0104 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2013
From: TREND MICRO INCORPORATED
To: TREND MICRO KABUSHIKI KAISHA
Reel/Frame 030929/0124 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2013
From: MCGEE, WILLIAM G.
To: THIRD BRIGADE INC.
Reel/Frame 030929/0174 →
CONFIRMATION OF COMPANY NAME AND ADDRESS Recorded Aug 1, 2013
From: TREND MICRO KABUSHIKI KAISHA
To: TREND MICRO INCORPORATED
Reel/Frame 030937/0763 →
Continuity (3)
Continuation 11874590 · Oct 18, 2007
Provisional Application 60883657 · Jan 5, 2007
Related Publication 20140223563A1 · Aug 7, 2014