IP Library Granted Patent US 7,076,650
Granted Patent B1
US 7,076,650 · App. 09/471,630 · Granted Jul 11, 2006

System and method for selective communication scanning at a firewall and a network node

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,076,650
App. No.
09/471,630
Granted
Jul 11, 2006
Kind
B1
Abstract

A method and apparatus are provided for cooperatively and dynamically sharing a proxy's burden of scanning communications for target content. A network of computer nodes is connected to a firewall through which pass communications with entities external to the network. The firewall includes one or more proxies to facilitate network users' connections with the external entities. The firewall and one or more of the nodes include software modules for scanning one or more types (e.g., FTP, HTTP, SMTP) of communications for particular information or types of data (e.g., computer viruses, ActiveX components, pornography, text). A node having a software module for scanning a communication identifies its scanning capabilities to the firewall. The node may also suggest a class or set of communications that it may scan, which class or set may be defined by its operating parameters or attributes of communications received at the firewall for the node. The firewall negotiates with the node then specifies rules or criteria for determining which communications and under which circumstances the node may scan a communication instead of the firewall. When a communication is received at the firewall and is passed to the proxy, the proxy applies the specified rules to determine which of the proxy and the node should scan the communication. In this manner a substantial amount of communication scanning may be offloaded to individual computer nodes, thereby enhancing or avoiding degradation of the firewall's performance. The division of responsibility between the proxy and any node may be dynamically modified or re-negotiated at virtually any time according to any desired criteria or operating parameters.

Claims (76)

1. A method of scanning a communication received at a firewall for target content, wherein the communication is directed to one of a set of computer nodes connected to the firewall, comprising:

maintaining on the firewall a scanning module configured to scan communications received at the firewall;

maintaining a set of criteria for determining when one of said communications may be scanned at a computer node connected to the firewall instead of at the firewall;

partitioning responsibility for scanning said communications between said firewall and a first computer node connected to the firewall;

receiving a first communication at the firewall, wherein said first communication is intended for said first computer node;

identifying one or more attributes of said first communication;

determining from said criteria and said attributes whether to scan said first communication for target content on the firewall;

determining from said criteria and said attributes whether said first computer node is configured to scan said first communication for said target content; and

forwarding said first communication to said first computer node;

wherein said first computer node receives and scans the communication for said target content;

wherein said partitioning comprises:

receiving scanning capabilities of a first computer node connected to the firewall;

consulting a set of scanning requirements specified by an operator of the firewall; and

specifying a set of criteria to identify when a communication may be scanned for target content by said first computer node.

2. The method of claim 1 , further comprising:

receiving a second communication at the firewall, wherein said second communication is intended for a second computer node;

identifying one or more attributes of said second communication;

determining from said criteria and said attributes of said second communication whether said second computer node is permitted to scan said second communication for predetermined content;

scanning said second communication at the firewall for said predetermined content; and

forwarding said second communication to said second computer node;

wherein said second computer node receives but does not scan said second communication for said predetermined content.

3. The method of claim 1 , wherein said partitioning further comprises receiving a set of proposed criteria from said first computer node.

4. A method of protecting a network of computer nodes from computer viruses, wherein the network of computer nodes is connected to a firewall comprising:

maintaining a set of scanning rules for determining when a communication received at a firewall is to be scanned on the firewall and when said communication may be scanned by the destination node of said communication;

receiving a first communication at the firewall, wherein said first communication is intended for a first computer node connected to the firewall;

determining whether a first virus scanner is enabled on the firewall;

determining whether a second virus scanner is enabled on said first computer node;

identifying a first set of attributes of said first communication;

determining from said first set of attributes and said rules that said first communication is to be scanned on said first computer node;

forwarding said first communication to said first computer node without scanning said first communication for computer viruses, wherein said first computer node scans said first communication for computer viruses using said second virus scanner;

receiving a second communication at the firewall;

identifying a second set of attributes of said second communication;

determining from said second set of attributes and said rules that the firewall is responsible for scanning said first communication for computer viruses; and

operating said first virus scanner to scan said second communication for computer viruses;

wherein said set of scanning rules comprises:

a first subset of scanning rules for determining when said communication may be scanned for target content by a destination node of said communication instead of the firewall; and

a second subset of scanning rules for determining when said communication is to be scanned on said destination node and not on the firewall;

wherein negotiating between the firewall and said first node defines said first subset of said scanning rules.

5. The method of claim 4 wherein said negotiating comprises:

establishing a secure connection between the firewall and said first node;

receiving at the firewall a proposed set of criteria for determining when said first node shall scan a communication instead of the firewall; and

determining whether said proposed set of criteria conflicts with said second subset of said scanning rules.

6. The method of claim 4 , wherein said negotiating further comprises providing said first subset of said scanning rules to said first node.

7. The method of claim 4 wherein said negotiating further comprises sending an updated version of said second virus scanner to said first node.

8. The method of claim 4 , wherein said negotiating is performed after said second virus scanner is configured on said first node by a user.

9. The method of claim 4 , wherein said negotiating is performed after said first node is rebooted.

10. A method of protecting a network of computer nodes from computer viruses, wherein the network of computer nodes is connected to a firewall, comprising:

maintaining a set of scanning rules for determining when a communication received at a firewall is to be scanned on the firewall and when said communication may be scanned by the destination node of said communication;

receiving a first communication at the firewall, wherein said first communication is intended for a first computer node connected to the firewall;

determining whether a first virus scanner is enabled on the firewall;

determining whether a second virus scanner is enabled on said first computer node;

identifying a first set of attributes of said first communication;

determining from said first set of attributes and said rules that said first communication is to be scanned on said first computer node;

forwarding said first communication to said first computer node without scanning said first communication for computer viruses, wherein said first computer node scans said first communication for computer viruses using said second virus scanner;

receiving a second communication at the firewall;

identifying a second set of attributes of said second communication;

determining from said second set of attributes and said rules that the firewall is responsible for scanning said first communication for computer viruses; and

operating said first virus scanner to scan said second communication for computer viruses;

wherein said set of scanning rules comprises:

a first subset of scanning rules for determining when said communication may be scanned for target content by a destination node of said communication instead of the firewall; and

a second subset of scanning rules for determining when said communication is to be scanned on said destination node and not on the firewall;

wherein said second subset of said scanning rules is received from a firewall administrator.

11. A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of scanning a communication received at a firewall for target content, wherein the communication is directed to one of a set of computer nodes connected to the firewall, the method comprising:

maintaining on the firewall a scanning module configured to scan communications received at the firewall;

maintaining a set of criteria for determining when one of said communications may be scanned at a computer node connected to the firewall instead of at the firewall;

partitioning responsibility for scanning said communications between said firewall and a first computer node connected to the firewall;

receiving a first communication at the firewall, wherein said first communication is intended for said first computer node;

identifying one or more attributes of said first communication;

determining from said criteria and said attributes whether to scan said first communication for target content on the firewall;

determining from said criteria and said attributes whether said first computer node is configured to scan said first communication for said target content; and

forwarding said first communication to said first computer node;

wherein said first computer node receives and scans the communication for said target content;

wherein said partitioning comprises:

receiving scanning capabilities of a first computer node connected to the firewall;

consulting a set of scanning requirements specified by an operator of the firewall; and

specifying a set of criteria to identify when a communication may be scanned for target content by said first computer node.

Assignments (10)
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
MERGER Recorded Jun 23, 2005
From: NETWORKS ASSOCIATES TECHNOLOGY, INC.
To: MCAFEE, INC.
Reel/Frame 016646/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 26, 2004
From: NETWORKS ASSOCIATES, INC.
To: NETWORKS ASSOCIATES TECHNOLOGY, INC.
Reel/Frame 014925/0783 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 1999
From: SONNENBERG, GLEN
To: NETWORKS ASSOCIATES, INC.
Reel/Frame 010493/0291 →