IP Library Granted Patent US 11,522,905
Granted Patent B2
US 11,522,905 · App. 16/567,299 · Granted Dec 6, 2022

Malicious virtual machine detection

Inventors: Seng Chai Gan (Ashburn, VA); Stanley Bryan Hardter (Baldwinsville, NY); Adam Lee Griffin (Dubuque, IA); HuyAnh Dinh Ngo (Sterling Heights, MI)
Assignee: International Business Machines Corporation
H04L63/145G06F9/45558G06F9/542H04L63/1416H04L63/1466G06F2009/45562G06F2009/45587G06F2009/45591G06F2009/45595
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 11,522,905
App. No.
16/567,299
Granted
Dec 6, 2022
Kind
B2
Abstract

A method, system, and computer program product for malicious virtual machine detection is provided. The method passes network traffic from a set of virtual machines to a set of network resources. The network traffic passes through a network monitor. The network monitor monitors a set of traffic characteristics for the network traffic. A change in a network traffic characteristic is identified. The change results in a modified traffic characteristic. The method identifies a first virtual machine of the set of virtual machines. The first virtual machine is associated with the modified traffic characteristics. An alert is then generated which identifies the first virtual machine and the modified traffic characteristic.

Claims (64)

1. A computer-implemented method, comprising:

passing network traffic from a set of virtual machines to a set of network resources, the network traffic passing through a network monitor;

monitoring, by the network monitor, a set of traffic characteristics for the network traffic;

identifying a change in a traffic characteristic of the set of traffic characteristics, the change resulting in a modified traffic characteristic, the change in traffic identified by comparing expected traffic characteristic values of parent virtual machines to actual traffic from at least a subset of virtual machines of the set of virtual machines;

identifying a first virtual machine of the set of virtual machines, the first virtual machine associated with the modified traffic characteristic; and

generating an alert identifying the first virtual machine and the modified traffic characteristic.

2. The method of claim 1 , further comprising:

generating a virtual machine for inclusion in the set of virtual machines;

generating an identification for the virtual machine; and

providing, to the network monitor, the identification and a network address for the virtual machine.

3. The method of claim 1 , wherein the set of traffic characteristic are selected from a group consisting of a destination network address, a set of source TCP ports, a set of destination TCP ports, a set of source UDP ports, and a set of destination UDP ports.

4. The method of claim 1 , wherein virtual machines, of the set of virtual machines, sharing a virtual machine identification communicate with the set of network resources using matching traffic characteristics of the set of traffic characteristics.

5. The method of claim 1 , further comprising:

comparing a destination network address of a subset of virtual machines sharing a virtual machine identification to identify a change in a destination network address for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the destination network address for the first virtual machine.

6. The method of claim 1 , further comprising:

comparing a destination network address and an IP protocol of a subset of virtual machines sharing a virtual machine identification to identify a change in the IP protocol for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the IP protocol.

7. The method of claim 1 , further comprising:

comparing a set of source port numbers and a set of destination port numbers of a subset of virtual machines sharing a virtual machine identification to identify a change in port numbers for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in port numbers.

8. A system, comprising:

one or more processors; and

a computer-readable storage medium, coupled to the one or more processors, storing program instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

passing network traffic from a set of virtual machines to a set of network resources, the network traffic passing through a network monitor;

monitoring, by the network monitor, a set of traffic characteristics for the network traffic;

identifying a change in a traffic characteristic of the set of traffic characteristics, the change resulting in a modified traffic characteristic, the change in traffic identified by comparing expected traffic characteristic values of parent virtual machines to actual traffic from at least a subset of virtual machines of the set of virtual machines;

identifying a first virtual machine of the set of virtual machines, the first virtual machine associated with the modified traffic characteristic; and

generating an alert identifying the first virtual machine and the modified traffic characteristic.

9. The system of claim 8 , wherein the operations further comprise:

generating a virtual machine for inclusion in the set of virtual machines;

generating an identification for the virtual machine; and

providing, to the network monitor, the identification and a network address for the virtual machine.

10. The system of claim 8 , wherein the set of traffic characteristic are selected from a group consisting of a destination network address, a set of source TCP ports, a set of destination TCP ports, a set of source UDP ports, and a set of destination UDP ports.

11. The system of claim 8 , wherein virtual machines, of the set of virtual machines, sharing a virtual machine identification communicate with the set of network resources using matching traffic characteristics of the set of traffic characteristics.

12. The system of claim 8 , wherein the operations further comprise:

comparing a destination network address of a subset of virtual machines sharing a virtual machine identification to identify a change in a destination network address for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the destination network address for the first virtual machine.

13. The system of claim 8 , wherein the operations further comprise:

comparing a destination network address and an IP protocol of a subset of virtual machines sharing a virtual machine identification to identify a change in the IP protocol for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the IP protocol.

14. The system of claim 8 , wherein the operations further comprise:

comparing a set of source port numbers and a set of destination port numbers of a subset of virtual machines sharing a virtual machine identification to identify a change in port numbers for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in port numbers.

15. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions being executable by one or more processors to cause the one or more processors to perform operations comprising:

passing network traffic from a set of virtual machines to a set of network resources, the network traffic passing through a network monitor;

monitoring, by the network monitor, a set of traffic characteristics for the network traffic;

identifying a change in a traffic characteristic of the set of traffic characteristics, the change resulting in a modified traffic characteristic, the change in traffic identified by comparing expected traffic characteristic values of parent virtual machines to actual traffic from at least a subset of virtual machines of the set of virtual machines;

identifying a first virtual machine of the set of virtual machines, the first virtual machine associated with the modified traffic characteristic; and

generating an alert identifying the first virtual machine and the modified traffic characteristic.

16. The computer program product of claim 15 , wherein the operations further comprise:

generating a virtual machine for inclusion in the set of virtual machines;

generating an identification for the virtual machine; and

providing, to the network monitor, the identification and a network address for the virtual machine.

17. The computer program product of claim 15 , wherein virtual machines, of the set of virtual machines, sharing a virtual machine identification communicate with the set of network resources using matching traffic characteristics of the set of traffic characteristics.

18. The computer program product of claim 15 , wherein the operations further comprise:

comparing a destination network address of a subset of virtual machines sharing a virtual machine identification to identify a change in a destination network address for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the destination network address for the first virtual machine.

19. The computer program product of claim 15 , wherein the operations further comprise:

comparing a destination network address and an IP protocol of a subset of virtual machines sharing a virtual machine identification to identify a change in the IP protocol for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in the IP protocol.

20. The computer program product of claim 15 , wherein the operations further comprise:

comparing a set of source port numbers and a set of destination port numbers of a subset of virtual machines sharing a virtual machine identification to identify a change in port numbers for the first virtual machine; and

generating the alert identifying the first virtual machine and the change in port numbers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2019
From: GAN, SENG CHAI; HARDTER, STANLEY BRYAN; GRIFFIN, ADAM LEE; NGO, HUYANH DINH
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 050341/0409 →
Continuity (1)
Related Publication 20210075797A1 · Mar 11, 2021