IP Library Granted Patent US 9,128,741
Granted Patent B2
US 9,128,741 · App. 11/867,987 · Granted Sep 8, 2015

System, method, and computer program product for conditionally preventing use of hardware virtualization

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 9,128,741
App. No.
11/867,987
Granted
Sep 8, 2015
Kind
B2
Abstract

A system, method, and computer program product are provided for conditionally preventing use of hardware virtualization. In use, an attempt to use hardware virtualization is identified. Further, the use of the hardware virtualization is conditionally prevented.

Claims (48)

1. In a hardware computer system, a method:

providing a hardware virtualization software layer comprising virtual machine guard software, wherein the virtual machine guard software has a dedicated purpose to prevent the operation of malware software, such malware software characterized by a purpose to circumvent the intended operation of a system;

recognizing, by the virtual machine guard software, an attempt to use hardware virtualization;

determining a source that initiated the attempt;

associating the source with an identifier; and

allowing the attempt if the identifier is on a list of predetermined identifiers that are allowed.

2. The method of claim 1 , wherein, after recognizing the source, presenting information identifying the source.

3. The method of claim 2 , further comprising receiving a response to the presented information.

4. The method of claim 3 , further comprising adding the identifier to the list based upon the response.

5. A method comprising:

running an operating system on a hardware platform;

installing virtual machine guard software, the virtual machine guard software having the purpose to prevent the operation of malware software, such malware software characterized by a purpose to circumvent the intended operation of a system;

creating a virtual machine;

moving the operating system into the virtual machine such that the operating system runs within the virtual machine and the virtual machine runs above the virtual machine guard software;

employing the virtual machine guard software to monitor attempts by the operating system to use hardware virtualization;

assigning an identifier to any said attempts that are recognized, the identifier having an association with software running upon the operating system; and

allowing an attempt at hardware virtualization if an assigned identifier has been pre-determined as allowed.

6. The method of claim 5 wherein the virtual machine guard software is comprised of a virtualization layer.

7. The method of claim 5 , wherein the virtual machine guard monitors attempts to use hardware virtualization by monitoring communication with a virtualization provider.

8. A method comprising:

running virtual machine guard software having a dedicated purpose to prevent the operation of malware software, such malware software characterized by a purpose to circumvent the intended operation of a system;

employing the virtual machine guard software to create a virtual machine running an operating system in the virtual machine, wherein the virtual machine executes upon the virtual machine guard software and the operating system executes within the virtual machine;

identifying an attempt to use hardware virtualization by a first software program running upon the operating system, such identifying performed by the virtual machine guard software;

associating the first software program with an identifier; and

allowing the attempt to use hardware virtualization if the identifier is predetermined as allowed.

9. The method of claim 8 , wherein the operating system is running when it is moved into the virtual machine.

10. The method of claim 9 , wherein one or more software programs are running upon the operating system prior to moving.

11. The method of claim 8 , wherein the virtual machine guard software is initialized prior to the operating system being initialized.

12. A non-transitory machine-readable medium, on which are stored instructions, comprising instructions that when executed cause a computer system to:

provide a hardware virtualization software layer dedicated to prevent the operation of malware software, such malware software characterized by a purpose to circumvent the intended operation of the computer system;

recognize an attempt to use hardware virtualization;

determine a source that initiated the attempt;

associate the source with an identifier; and

allow the attempt if the identifier is on a predetermined list of allowed identifiers.

13. The machine-readable medium of claim 12 , wherein the instructions further comprise instructions that when executed cause the computer system to:

present information identifying the source.

14. The machine-readable medium of claim 13 , wherein the instructions further comprise instructions that when executed cause the computer system to:

receive input responsive to the presented information.

15. The machine-readable medium of claim 14 , wherein the instructions further comprise instructions that when executed cause the computer system to

add the identifier to the list responsive to the input.

16. A non-transitory machine-readable medium, on which are stored instructions, comprising instructions that when executed cause a computer system to:

create a virtual machine above a virtual machine guard software having the purpose to prevent the operation of malware software, such malware software characterized by a purpose to circumvent the intended operation of the computer system;

move an operating system into the virtual machine such that the operating system runs within the virtual machine;

employ the virtual machine guard software to monitor attempts by the operating system to use hardware virtualization;

assign to any recognized attempts an identifier associated with software running upon the operating system; and

allow an attempt at hardware virtualization if the assigned identifier has been pre- determined as allowed.

17. The machine-readable medium of claim 16 wherein the virtual machine guard software comprises a virtualization layer.

18. The machine-readable medium of claim 16 , wherein the virtual machine guard software monitors attempts to use hardware virtualization by monitoring communication with a virtualization provider.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2007
From: BLAIMSCHEIN, PETER; STEINER, THOMAS C. H.; DALCHER, GREGORY WILLIAM; TEDDY, JOHN DOUGLAS
To: MCAFEE, INC.
Reel/Frame 019936/0945 →