IP Library Granted Patent US 10,454,965
Granted Patent B1
US 10,454,965 · App. 15/488,696 · Granted Oct 22, 2019

Detecting network packet injection

Inventor: Waylon Grange (Lehi, UT)
Assignee: Symantec Corporation
H04L63/1433H04L63/06H04L63/1416H04L63/1466H04L69/22
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 10,454,965
App. No.
15/488,696
Granted
Oct 22, 2019
Kind
B1
Abstract

A method for preventing suspicious activity on a computer network is described. In one embodiment, the method includes determining a first identifier of a first packet from a connection associated with network traffic, calculating a first value based at least in part on a portion of data included in the first packet, determining a second identifier of a second packet from the connection associated with the network traffic, the second identifier matching the first identifier, calculating a second value based at least in part on a portion of data included in the second packet, comparing the first value with a the second value, and determining that suspicious activity is occurring on the network based at least in part on the comparison between the first and second values. In some embodiments, the first identifier includes at least one of a sequence number and an acknowledgement number associated with the first packet.

Claims (62)

1. A method for preventing suspicious activity on a computer network, comprising:

determining, via one or more processors, a first identifier of a first packet from a connection associated with network traffic, wherein the first packet is a payload bearing packet;

calculating, via the one or more processors, a first value based at least in part on a payload portion included in the first packet;

determining, via the one or more processors, a second identifier of a second packet from the connection associated with the network traffic, wherein the second packet is a second payload bearing packet;

determining that the second identifier matches the first identifier based at least in part on a hash map associated with the connection;

calculating, via the one or more processors, a second value based at least in part on a payload portion included in the second packet;

comparing, via the one or more processors, the first value with the second value;

determining, via the one or more processors, that suspicious activity is occurring on the network based at least in part on the comparison between the first and second values; and

terminating, via the one or more processors, the connection based at least in part on determining that the second identifier matches the first identifier, and the first value and the second value do not match.

2. The method of claim 1 , wherein the first identifier includes at least one of a sequence number and an acknowledgement number associated with the first packet.

3. The method of claim 1 , further comprising:

determining that the first packet and the second packet are payload bearing packets based at least in part on the hash map associated with the connection;

identifying a number of bytes of the payload portion included in the first packet; and

computing a cyclic redundancy check (CRC) value across the identified number of bytes, wherein the first value is based at least in part on the computed CRC value.

4. The method of claim 3 , wherein the first identifier and the first value are identified based at least in part on the hash map.

5. The method of claim 4 , wherein the first identifier is stored as a key of a key-value pair in the hash map, and the first value is stored as a value of the key-value pair in the hash map.

6. The method of claim 1 , wherein the comparing further comprises:

detecting the suspicious network activity based at least in part on determining that the first identifier and the second identifier match, and the first value and the second value do not match.

7. The method of claim 1 , further comprising:

identifying an origin associated with the suspicious network traffic; and

adjusting a rating associated with the identified origin based at least in part on the detecting.

8. The method of claim 1 , wherein the network traffic includes at least one of packet flows between one or more devices of an intranet, packet flows between one or more devices of the Internet, or any combination thereof.

9. The method of claim 1 , wherein the first packet and/or the second packet include at least one of a transmission control protocol (TCP) packet, internet protocol (IP) packet, internet control message protocol (ICMP) packet, user datagram protocol (UDP) packet, or any combination thereof.

10. The method of claim 1 , further comprising:

performing a security action based at least in part on detecting the suspicious network activity.

11. The method of claim 10 , wherein performing the security action further comprising:

terminating the connection based at least in part on detecting the suspicious network activity.

12. The method of claim 10 , wherein performing the security action further comprising:

detecting a termination of the connection associated with the suspicious network activity; and

upon detecting the termination, storing to a storage drive data from the network traffic associated with the connection.

13. A computing device for preventing suspicious activity on a computer network, comprising:

one or more processors;

non-transitory memory in electronic communication with the one or more processors, wherein the non-transitory memory stores computer executable instructions that when executed by the one or more processors cause the one or more processors to perform the steps of:

determine a first identifier of a first packet from a connection associated with network traffic, wherein the first packet is a payload bearing packet;

calculate a first value based at least in part on a payload portion included in the first packet;

determine a second identifier of a second packet from the connection associated with the network traffic, wherein the second packet is a second payload bearing packet;

determine that the second identifier matches the first identifier based at least in part on a hash map associated with the connection;

calculate a second value based at least in part on a payload portion included in the second packet;

compare the first value with the second value;

determine that suspicious activity is occurring on the network based at least in part on the comparison between the first and second values; and

terminate the connection based at least in part on determining that the second identifier matches the first identifier, and the first value and the second value do not match.

14. The computing device of claim 12 , wherein the first identifier includes at least one of a sequence number and an acknowledgement number associated with the first packet.

15. The computing device of claim 12 , wherein the instructions executed by the one or more processors cause the one or more processors to perform the steps of:

determine that the first packet and the second packet are payload bearing packets based at least in part on the hash map associated with the connection;

identify a number of bytes of the payload portion included in the first packet; and

compute a cyclic redundancy check (CRC) value across the identified number of bytes, wherein the first value is based at least in part on the computed CRC value.

16. The computing device of claim 15 , wherein the first identifier and the first value are identified based at least in part on the hash map.

17. The computing device of claim 16 , wherein the first identifier is stored as a key of a key-value pair in the hash map, and the first value is stored as a value of the key-value pair in the hash map.

18. A non-transitory computer-readable storage medium storing computer executable instructions that when executed by one or more processors cause the one or more processors to perform the steps of:

determine a first identifier of a first packet from a connection associated with network traffic, wherein the first packet is a payload bearing packet;

calculate a first value based at least in part on a payload portion included in the first packet;

determine a second identifier of a second packet from the connection associated with the network traffic, wherein the second packet is a second payload bearing packet;

determine that the second identifier matches the first identifier based at least in part on a hash map associated with the connection;

calculate a second value based at least in part on a payload portion included in the second packet;

compare the first value with the second value;

determine that suspicious activity is occurring on the network based at least in part on the comparison between the first and second values; and

terminate the connection based at least in part on determining that the second identifier matches the first identifier, and the first value and the second value do not match.

19. The computer-program product of claim 18 , wherein the first identifier includes at least one of a sequence number and an acknowledgement number associated with the first packet.

20. The computer-program product of claim 18 , wherein the instructions executed by the one or more processors cause the one or more processors to perform the steps of:

determine that the first packet and the second packet are payload bearing packets based at least in part on the hash map associated with the connection;

identify a number of bytes of the payload portion included in the first packet; and

compute a cyclic redundancy check (CRC) value across the identified number of bytes, wherein the first value is based at least in part on the computed CRC value.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2017
From: GRANGE, WAYLON
To: SYMANTEC CORPORATION
Reel/Frame 042027/0063 →