IP Library Granted Patent US 8,645,949
Granted Patent B2
US 8,645,949 · App. 12/132,113 · Granted Feb 4, 2014

System, method, and computer program product for scanning data utilizing one of a plurality of virtual machines of a device

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,645,949
App. No.
12/132,113
Granted
Feb 4, 2014
Kind
B2
Abstract

A system, method, and computer program product are provided for scanning data utilizing one of a plurality of virtual machines of a device. In use, data to be scanned is identified utilizing a first virtual machine of a device, where the device further includes at least one second virtual machine and a cache shared by the first virtual machine and the second virtual machine. Additionally, it is determined whether the data was previously scanned by the at least one second virtual machine, utilizing the cache. Furthermore, the data is conditionally scanned utilizing the first virtual machine based on the determination.

Claims (40)

1. A computer program product embodied on a non-transitory computer readable medium, comprising instructions stored thereon to cause a processor to:

identify data to be scanned with a type of scan at a local scanner of a first virtual machine of a device, wherein the device comprises a plurality of virtual machines, each virtual machine comprising a local scanner, the local scanner having access to a cache shared by the plurality of virtual machines;

determine, at the first virtual machine, an identifier of the data;

determine, at the first virtual machine, whether the identifier is stored in the cache, wherein presence of the identifier in the cache indicates that the data has been previously scanned by a local scanner of one of the plurality of virtual machines;

receive a security status at the first virtual machine after it is determined that the identifier is stored in the cache, the security status associated with the identifier of the data, wherein the security status comprises a result of a previous scan of the data and the security status comprises information about the type of scan that was performed;

forgo scanning of the data at the local scanner of the first virtual machine when the security status is determined to comprise a result not indicating unwanted data; and

scan the data and store the identifier and the security status in the cache utilizing the local scanner of the first virtual machine when it is determined that the identifier is not stored in the cache or when the result indicates unwanted data.

2. The computer program product of claim 1 , wherein the instructions to cause the processor to identify the data to be scanned comprise instructions to cause the processor to identify the data based on a request to access the data.

3. The computer program product of claim 1 , wherein the cache is located in a security virtual machine of the plurality of virtual machines.

4. The computer program product of claim 3 , wherein the security virtual machine is utilized for at least one of monitoring security and monitoring parameters of other virtual machines.

5. The computer program product of claim 1 , wherein the cache is located on one of the plurality of virtual machines.

6. The computer program product of claim 5 , wherein the cache may be moved to another of the plurality of virtual machines in response to a determination that any of the plurality of virtual machines do not have access to the cache.

7. The computer program product of claim 1 , wherein the identifier includes a file name of the data.

8. The computer program product of claim 1 , wherein the identifier includes a hash of the data.

9. The computer program product of claim 1 , wherein two or more replicated copies of the data are located on two different virtual machines of the plurality of virtual machines.

10. The computer program product of claim 1 , wherein the security status further comprises information about the virtual machine that performed the previous scan.

11. A method, comprising:

identifying data to be scanned with a type of scan at a local scanner of a first virtual machine of a device, wherein the device comprises a plurality of virtual machines, each virtual machine comprising a local scanner, the local scanner having access to a cache shared by the plurality of virtual machines;

determining, at the first virtual machine, an identifier of the data;

determining, at the first virtual machine, whether the identifier is stored in the cache, wherein presence of the identifier in the cache indicates that the data has been previously scanned by a local scanner of one of the plurality of virtual machines;

receiving a security status at the first virtual machine after it is determined that the identifier is stored in the cache, the security status associated with the identifier of the data, wherein the security status comprises a result of a previous scan of the data and the security status comprises information about the type of scan that was performed;

preventing the data from being scanned at the local scanner of the first virtual machine the security status is determined to comprise a result not indicating unwanted data; and

scanning the data and storing the identifier and the security status in the cache utilizing the local scanner of the first virtual machine when it is determined that the identifier is not stored in the cache or when the result indicates unwanted data.

12. The method of claim 11 , wherein the act of identifying the data to be scanned comprises identifying a request to access the data.

13. The method of claim 11 , wherein the identifier includes a file name of the data.

14. The method of claim 11 , wherein the identifier includes a hash of the data.

15. The method of claim 11 , wherein the cache stores a result of a previous scan of the data in association with the identifier of the data.

16. The method of claim 11 , wherein the acts of scanning the data and storing the identifier in the cache further comprises storing a result of the scan of the data by the local scanner of the first virtual machine in association with the identifier in the cache.

17. The method of claim 11 , wherein the data is stored in memory shared by the first virtual machine and at least one other virtual machine of the plurality of virtual machines.

18. The method of claim 11 , wherein the cache is located on one of the plurality of virtual machines, and wherein the cache may be moved to another of the plurality of virtual machines in response to a determination that any of the plurality of virtual machines do not have access to the cache.

19. A system, comprising:

a memory; and

a processor operatively coupled to the memory, the processor adapted to:

identify data to be scanned with a type of scan at a local scanner of a first virtual machine of the system, wherein the system comprises a plurality of virtual machines, each virtual machine comprising a local scanner, the local scanner having access to a cache shared by the plurality of virtual machines;

determine, at the first virtual machine, an identifier of the data;

determine, at the first virtual machine, whether the identifier is stored in the cache, wherein presence of the identifier in the cache indicates that the data has been previously scanned by a local scanner of one of the plurality of virtual machines;

receive a security status at the first virtual machine after it is determined that the identifier is stored in the cache, the security status associated with the identifier of the data, wherein the security status comprises a result of a previous scan of the data and the security status comprises information about the type of scan that was performed;

forgo scanning of the data at the local scanner of the first virtual machine when the security status is determined to comprise a result not indicating unwanted data; and

scan the data and store the identifier and the security status in the cache utilizing the first scanner of the first virtual machine when it is determined that the identifier is not stored in the cache or when the result indicates unwanted data.

20. The system of claim 19 , wherein the cache is located on one of the plurality of virtual machines, and wherein the cache may be moved to another of the plurality of virtual machines in response to a determination that any of the plurality of virtual machines do not have access to the cache.

Assignments (19)
RELEASE OF SECURITY INTEREST Recorded Aug 16, 2024
From: STG PARTNERS, LLC
To: MUSARUBRA US LLC; SKYHIGH SECURITY LLC
Reel/Frame 068671/0435 →
TERMINATION AND RELEASE OF FIRST LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 057453, FRAME 0053 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0413 →
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 056990, FRAME 0960 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0430 →
INTELLECTUAL PROPERTY ASSIGNMENT AGREEMENT Recorded Aug 15, 2024
From: MUSARUBRA US LLC
To: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
Reel/Frame 068656/0098 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Aug 15, 2024
From: MAGENTA SECURITY HOLDINGS LLC; SKYHIGH SECURITY LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 068657/0666 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2024
From: MUSARUBRA US LLC
To: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
Reel/Frame 068657/0764 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2024
From: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
To: MAGENTA SECURITY HOLDINGS LLC
Reel/Frame 068657/0843 →
INTELLECTUAL PROPERTY ASSIGNMENT AGREEMENT Recorded Aug 15, 2024
From: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
To: MAGENTA SECURITY HOLDINGS LLC
Reel/Frame 068656/0920 →
SECURITY INTEREST Recorded Aug 1, 2024
From: MUSARUBRA US LLC; SKYHIGH SECURITY LLC
To: STG PARTNERS, LLC
Reel/Frame 068324/0731 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2022
From: MCAFEE, LLC
To: MUSARUBRA US LLC
Reel/Frame 060561/0466 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 057315 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 11, 2022
From: MCAFEE, LLC
To: MUSARUBRA US LLC
Reel/Frame 060878/0126 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 056990/0960 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 057453/0053 →
RELEASE OF SECURITY INTEREST Recorded Jul 26, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MCAFEE, LLC; SKYHIGH NETWORKS, LLC
Reel/Frame 057620/0102 →
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: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →