IP Library Granted Patent US 11,657,387
Granted Patent B2
US 11,657,387 · App. 17/048,351 · Granted May 23, 2023

Method for securing a computer system

Inventors: Fabrice Delhoste (Gemenos, FR); Frédéric Paillart (Gemenos, FR); Thomas Dandelot (Gemenos, FR); Jean-Philippe Duquesnoy (Gemenos, FR); Camille Dru (Gemenos, FR); Gregory Roubinet (Gemenos, FR)
Assignee: THALES DIS FRANCE SAS
G06Q20/363G06F21/554G06F21/577G06Q20/382
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,657,387
App. No.
17/048,351
Granted
May 23, 2023
Kind
B2
Abstract

The invention is a method for securing a system including a plurality of entities and a repository storing usage patterns. The method comprises the following steps: for each of the entities involved in a transaction requested by a user, capturing a behavior data reflecting the dynamic behavior of said entity, generating a set of locality-sensitive-hashing hashes from each of said behavior data, computing a similarity score for each of the entities involved in the transaction, based on both said usage patterns and the set of generated locality-sensitive-hashing hashes, and based on a subset of the computed similarity scores, applying a preset security action to the transaction.

Claims (80)

1. An enhanced system for detecting and countering attacks during execution of a transaction requested by a user, said system including a plurality of entities that are software services, software micro-services or hardware devices,

wherein each of the entities involved in, and executing, said transaction requested by said user hosts its own tracking agent configured to:

capture that entities own behavior data reflecting dynamic behavior of that entity during execution of said transaction,

generate a set of locality-sensitive-hashing hashes from each of said behavior data, and

send the set of locality-sensitive-hashing hashes to a controller agent over a secure communication channel;

said system comprising:

said tracking agent for each of the entities executing thereon;

a repository that stores usage patterns and said controller agent, wherein each of said entities is configured to send its captured behavior data to the controller agent and wherein the controller agents is configured to:

compute a similarity score for each of the entities involved in the transaction, based on both said usage patterns and the set of generated locality-sensitive-hashing hashes,

select a preset security action based on a subset of the computed similarity scores, and

apply said preset security action to the transaction to secure said executing of said transaction,

wherein each of said behavior data reflects internal dynamic behavior of the entity that captured it and takes into account at least one item of the group comprising:

internal call graph generated during execution of said entity,

internal stack traces generated during execution of said entity,

functions called internally during execution of said entity,

type of output parameters of the functions called internally during execution of said entity,

size of output parameters of the functions called internally during execution of said entity, and

value of output parameters of the functions called internally during execution of said entity,

wherein the tracking agent and controller agent are software components executing on a hardware processor of a computer communicating with or hosting the entity,

wherein the controller agent is configured to

compute a similarity score and to apply the preset security action,

wherein the tracking agent is configured to propagate a locality-sensitivity hashing (LSH) hash it computed and received LSH hashes, such that a next tracking agent takes into account a chain of locality-sensitive-hashing hashes and send to the controller agent so that it is aware that the several received LSH hashes belong to a same transaction for selecting said preset security action,

wherein each of said usage patterns in said chain comprises:

a transaction type,

a first entry which is allocated to one of said entities and which comprises a first reference locality-sensitive-hashing (LSH) hash for that entity, and

at least one more entry which is allocated to one of said entities and which comprises at least one more reference (LSH) hash for that entity,

wherein said tracking agent for that entity selects said preset security action based on a subset of the computed similarity scores from the first reference (LSH) hash and the at least one more reference (LSH) hash.

2. The system according to claim 1 , wherein said preset action is at least one of the group comprising:

letting the transaction run,

blocking the transaction,

deflecting execution of the transaction to legitimate-looking entities,

sending an alert signal to a remote system,

providing the user with a warning message, or

logging a security alert.

3. The system according to claim 1 , wherein said behavior data takes into account execution duration.

4. The system according to claim 1 , wherein said behavior data takes into account at least one item of the group comprising:

communication protocol used for incoming message,

communication protocol used for outgoing message,

execution time,

country where the entity is running.

5. A computer-implemented method for detecting and countering attacks during execution of a transaction by a system including a plurality of entities that are software services, software micro-services or hardware devices, each hosting its own tracking agent, and a repository storing usage patterns, wherein the method performed on said at least one hardware processor comprises the following steps:

by each of the tracking agents in entities involved in, and executing, said transaction requested by a user:

capture that entities own behavior data reflecting dynamic behavior of that entity during said execution of said transaction,

generate a set of locality-sensitive-hashing hashes from each of said behavior data for said transaction requested by said user, and

send the set of locality-sensitive-hashing hashes to a controller agent over a secure communication channel; and

by way of said controller agent:

compute a similarity score for each of the entities involved in the transaction based on both said usage patterns and the set of generated locality-sensitive-hashing hashes,

select a preset security action based on a subset of the computed similarity scores, and

apply said preset security action to the transaction requested by said user to secure said executing of said transaction,

wherein each of said behavior data reflects the internal dynamic behavior of the entity that captured it and takes into account at least one item of the group comprising:

internal call graph generated during execution of said entity,

internal stack traces generated during execution of said entity,

functions called internally during execution of said entity,

type of output parameters of the functions called internally during execution of said entity,

size of output parameters of the functions called internally during execution of said entity, and

value of output parameters of the functions called internally during execution of said entity, wherein the tracking agent and controller agent are software components executing on a hardware processor of a computer communicating with or hosting the entity,

wherein the controller agent is configured to

compute a similarity score and to apply the preset security action,

wherein the tracking agent is configured to propagate a locality-sensitivity hashing (LSH) hash it computed and received LSH hashes, such that a next tracking agent takes into account a chain of locality-sensitive-hashing hashes and send to the controller agent so that it is aware that the several received LSH hashes belong to a same transaction for selecting said preset security action,

wherein each of said usage patterns in said chain comprises:

a transaction type,

a first entry which is allocated to one of said entities and which comprises a first reference locality-sensitive-hashing (LSH) hash for that entity, and

at least one more entry which is allocated to one of said entities and which comprises at least one more reference (LSH) hash for that entity,

wherein said tracking agent for that entity selects said preset security action based on a subset of the computed similarity scores from the first reference (LSH) hash and the at least one more reference (LSH) hash.

6. The method according to claim 5 , wherein said preset action is at least one of the group comprising:

letting the transaction run,

blocking the transaction,

deflecting execution of the transaction to legitimate-looking entities,

sending an alert signal to a remote system,

providing the user with a warning message, or

logging a security alert.

7. The method according to claim 5 , wherein the system comprises a controller agent, wherein each of said entities sends its captured behavior data to the controller agent and wherein the controller agent computes said similarity scores and applies the preset security action.

8. The method according to claim 5 , wherein the tracking agent of at least one of the entities involved in the transaction computes a similarity score and applies the preset security action,

wherein the tracking agent is configured to propagate a chain of locality-sensitive-hashing hashes through a plurality of services executed for a transaction, such that a next tracking agent takes into account said chain of locality-sensitive-hashing hashes for selecting said preset security action.

9. The method according to claim 5 , wherein said behavior data takes into account execution duration.

10. The method according to claim 5 , wherein said behavior data takes into account at least one item of the group comprising:

communication protocol used for incoming message,

communication protocol used for outgoing message,

execution time,

country where the entity is running.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2022
From: THALES DIS FRANCE SA
To: THALES DIS FRANCE SAS
Reel/Frame 058884/0238 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2021
From: DELHOSTE, FABRICE; DUQUESNOY, JEAN-PHILIPPE; DRU, CAMILLE; ROUBINET, GREGORY; PAILLART, FREDERIC; DANDELOT, THOMAS
To: THALES DIS FRANCE SA
Reel/Frame 055819/0194 →
Priority Claims (2)
EP 18305485 · Apr 19, 2018 · regional
EP 18306129 · Aug 22, 2018 · regional
Continuity (1)
Related Publication 20210374721A1 · Dec 2, 2021
Cited By (1)
US 12,615,267