IP Library Granted Patent US 10,264,104
Granted Patent B2
US 10,264,104 · App. 15/959,338 · Granted Apr 16, 2019

Systems and methods for malicious code detection accuracy assurance

Inventors: Roy Katmor (Herzliya, IL); Tomer Bitton (Herzliya, IL); Udi Yavo (Herzliya, IL); Ido Kelson (Herzliya, IL)
Assignee: enSilo Ltd.
H04L69/161H04L63/0236H04L63/0263H04L63/1416H04L63/0281H04L63/1441
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,264,104
App. No.
15/959,338
Granted
Apr 16, 2019
Kind
B2
Abstract

There is provided a method for authenticating an attempt at establishment of a network connection by allowed code, comprising: providing a dataset having previously observed stack trace templates each representing a stack trace pattern prevailing in stack traces recorded by monitoring stacks of clients executing an allowed code during a connection establishment process for establishing network connections related to the allowed code; receiving a new stack trace recorded during a new connection establishment process for a new network connection by a new client; measuring a similarity between the new stack trace and the plurality of stack trace templates to identify a match to a stack trace template; evaluating the matched stack trace template for a predefined rule requirement; and updating a rule-set database with the matched stack trace template to authenticate new network connection establishments associated with stack templates matching the matched stack trace template.

Claims (36)

1. A method for authenticating an attempt at establishment of a network connection by an allowed code, comprising:

providing a dataset having a plurality of previously observed stack trace templates each representing a stack trace pattern prevailing in stack traces recorded by monitoring a plurality of stacks of a plurality of clients executing the allowed code during a connection establishment process for establishing network connections related to the allowed code, said plurality of stack trace templates are designated as representing behavior of the allowed code which is suspected as malicious behavior;

receiving a new stack trace recorded during a new connection establishment process for a new network connection by a new client;

measuring a similarity between the new stack trace and the plurality of stack trace templates to identify a match to a stack trace template;

evaluating the matched stack trace template for a predefined rule requirement; and

updating a rule-set database with the matched stack trace template to authenticate new network connection establishments associated with stack templates matching the matched stack trace template.

2. The method of claim 1 , wherein the plurality of stack trace templates and the new stack trace include context data collected in association with the stack trace of the allowed code, and the similarity is measured according to the context data.

3. The method of claim 2 , wherein the context data includes an event ID and/or host name.

4. The method of claim 2 , wherein the context data includes at least one member selected from the group consisting of: similar operating system running at the respective client, similar allowed application, similar stack trace data by different allowed applications, and similar protocols to establish the network connection.

5. The method of claim 1 , further comprising adding the new stack trace to the dataset as a new stack trace template based on an absence of the match.

6. The method of claim 1 , wherein evaluating the matched stack trace template comprises: incrementing a value of a counter indicative of a number of previous stack trace template matches from different clients, and evaluating the value against the predefined rule requirement of a number of matches.

7. The method of claim 6 , wherein the different clients are part of a same designated group.

8. The method of claim 1 , wherein evaluating the matched stack trace template for the predefined rule requirement is performed when the matched stack trace template and the new stack trace are associated with different clients.

9. The method of claim 1 , further comprising:

analyzing the new stack trace, to designate the network connection as being suspicious of being related to malicious code; and

further comprises re-designating the suspicion of being related to malicious code as being related to the allowed code.

10. The method of claim 9 , wherein the suspicion of being related to malicious code is triggered by a new allowed code installed on the new client displaying malicious-like behavior.

11. The method of claim 9 , wherein the allowed code represents a false positive identification by incorrectly triggering the identification of suspicious of being related to malicious code.

12. The method of claim 9 , wherein the stack trace associated with the authenticated new network connection is matched to at least one stack trace template associated with an attempt at establishing the network connection for malicious communication.

13. The method of claim 1 , wherein the new stack trace and the plurality of stack trace templates further comprise flow-data including at least one member selected from the group consisting of: processes, modules, and threads.

14. The method of claim 1 , wherein the new stack trace displays malicious-like behavior that has a similarity to stack traces related to malicious code.

15. The method of claim 1 , wherein the plurality of stack trace templates are based on authorized installation of similar allowed code on a plurality of the clients within a predefined period of time.

16. The method of claim 1 , wherein the predefined requirement is selected to prevent or reduce false positive connection blocking of allowed network connections by the allowed code.

17. The method of claim 1 , wherein the predefined requirement represents a tolerance level for false positive connection blocking of allowed network connections.

18. A system for authenticating an attempt at establishment of a network connection by an allowed code, comprising:

a memory, storing a dataset having a plurality of previously observed stack trace templates each representing a stack trace pattern prevailing in stack traces recorded by monitoring a plurality of stacks of a plurality of clients executing the allowed code during a connection establishment process for establishing network connections related to the allowed code, said plurality of stack trace templates are designated as representing behavior of the allowed code which is suspected as malicious behavior; and

at least one event management server, in communication with said memory, comprising at least one hardware processor and including a code implementable by said hardware processor, that when executed by said hardware processor, causes said hardware processor to:

receive a new stack trace recorded at a certain new client of a plurality of clients during a new connection establishment process for a new network connection by the certain new client;

measure a similarity between the new stack trace and the plurality of stack trace templates to identify a match to a stack template;

evaluate the matched stack trace template for a predefined requirement; and

update a rule-set database with the matched stack trace template to authenticate new network connection establishments associated with stack templates matching the matched stack trace template.

19. The system of claim 18 , further comprising at least one gateway server in communication with the event management server and with at least one of the plurality of client terminals, the at least one gateway server comprising at least one hardware processor and including a code that when executed by said hardware processor of the at least one gateway server, causes said hardware processor to:

analyze the new stack trace to designate the new network connection as being suspicious of being related to malicious code;

transmit the new stack trace to the event management server for analysis;

receive the updated rule-set database; and

allow connection establishment of the new network connection.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2019
From: ENSILO LTD
To: FORTINET, INC.
Reel/Frame 050885/0863 →
FIRST AMENDMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 7, 2019
From: ENSILIO LTD.
To: SILICON VALLEY BANK
Reel/Frame 048019/0989 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2018
From: KATMOR, ROY; BITTON, TOMER; YAVO, UDI; KELSON, IDO
To: ENSILO LTD.
Reel/Frame 046415/0276 →
Continuity (4)
Continuation 14949918 · Nov 24, 2015
Provisional Application 62147040 · Apr 14, 2015
Provisional Application 62083985 · Nov 25, 2014
Related Publication 20180241853A1 · Aug 23, 2018
Cited By (1)
US 12,335,303