IP Library › Granted Patent US 10,929,534
Granted Patent B2
US 10,929,534 · App. 16/008,365 · Granted Feb 23, 2021

System and method detecting malicious files using machine learning

Inventors: Alexander S. Chistyakov (Moscow, RU); Ekaterina M. Lobacheva (Moscow, RU); Alexey M. Romanenko (Moscow, RU)
Assignee: AO KASPERSKY LAB
G06F21/564G06F17/15G06F21/55G06N7/00G06N20/00H04L63/14H04W12/12
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,929,534
App. No.
16/008,365
Filed
Jun 14, 2018
Granted
Feb 23, 2021
Kind
B2
Art Unit
2494
USPC
726/24
Abstract

Disclosed are systems and methods for detection of malicious files using machine learning. An example method comprises: selecting one or more data blocks in an object being analyzed based on rules; performing a static analysis on the one or more data blocks to determine a set of features of the one or more data blocks; determining a degree of harmfulness of the object based on the set of features and a model for detection of malicious objects, wherein the model has been trained by a method for machine learning on at least one safe object and one malicious object; recognizing the object is safe when the degree of harmfulness does not exceed a predetermined threshold of harmfulness; and recognizing the object is malicious when the degree of harmfulness of the one or more data blocks exceeds the predetermined threshold of harmfulness.

Claims (37)

1. A method for detecting safe and malicious data objects, comprising:

searching, by a processor, using a trained analysis model, for one or more data blocks to be selected from an object for malware analysis based on criteria including parameters of the object being analyzed and features of data blocks selected during previous searches, wherein the trained analysis model is a set of rules for searching to increase a probability of classifying the object as malicious and wherein the set of rules is dependent on the features determined for the data blocks selected during previous searches;

selecting, by the processor, the one or more data blocks in the object using the trained analysis model;

performing, by the processor, a static analysis of the selected one or more data blocks to determine a set of features said data blocks;

determining, by the processor, a degree of harmfulness of the object based on the set of features and a detection model for detection of malicious objects, wherein the detection model has been trained by a method for machine learning on at least one safe object and one malicious object;

recognizing, by the processor, the object is safe when the degree of harmfulness does not exceed a predetermined threshold of harmfulness;

recognizing, by the processor, the object is malicious when the degree of harmfulness of the one or more data blocks exceeds the predetermined threshold of harmfulness; and

retraining the analysis model if the object is recognized as malicious, so that the recognizing of the object as malicious is accomplished by analyzing a smaller number of data blocks.

2. The method of claim 1 , wherein selecting the one or more data blocks comprises:

calculating the parameters of the one or more data blocks, the parameters comprising one or more of a size of a data block, a position of the data block in the object, and a type of the object.

3. The method of claim 1 , wherein the set of features comprises one or more of: parameters of a data block used for selection, type of data contained in a data block, logical or functional relationship between a data block and a data block selected during previous searches, and a coefficient of harmfulness.

4. The method of claim 3 , wherein each command executed by the object is associated with a respective weight, and wherein the coefficient of harmfulness is calculated as a summation of the weights.

5. A system for detecting a malicious file, comprising:

a hardware processor configured to:

search, using a trained analysis model, for one or more data blocks to be selected from an object for malware analysis based on criteria including parameters of the object being analyzed and features of data blocks selected during previous searches, wherein the trained analysis model is a set of rules for searching to increase a probability of classifying the object as malicious and wherein the set of rules is dependent on the features determined for the data blocks selected during previous searches;

select the one or more data blocks in the object using the trained analysis model;

perform a static analysis on the one or more data blocks to determine a set of features of the one or more data blocks;

determine a degree of harmfulness of the object based on the set of features and a detection model for detection of malicious objects, wherein the detection model has been trained by a method for machine learning on at least one safe object and one malicious object;

recognize the object is safe when the degree of harmfulness does not exceed a predetermined threshold of harmfulness, wherein the static analysis is performed on all data blocks of the object;

recognize the object is malicious when the degree of harmfulness of the one or more data blocks exceeds the predetermined threshold of harmfulness; and

retrain the analysis model if the object is recognized as malicious, so that the recognizing of the object as malicious is accomplished by analyzing a smaller number of data blocks.

6. The system of claim 5 , wherein the hardware processor is further configured to select the one or more data blocks by:

calculating the parameters of the one or more data blocks, the parameters comprising one or more of a size of a data block, a position of the data block in the object, and a type of the object.

7. The system of claim 5 , wherein the set of features comprises one or more of: parameters of a data block used for selection, type of data contained in a data block, logical or functional relationship between a data block and a data block selected during previous searches, and a coefficient of harmfulness.

8. The system of claim 7 , wherein each command executed by the object is associated with a respective weight, and wherein the coefficient of harmfulness is calculated as a summation of the weights.

9. A non-transitory computer-readable medium, storing instructions thereon, which when executed perform a method for detecting a malicious file, comprising:

searching, using a trained analysis model, for one or more data blocks to be selected from an object for malware analysis based on criteria including parameters of the object being analyzed and features of data blocks selected during previous searches, wherein the trained analysis model is a set of rules for searching to increase a probability of classifying the object as malicious and wherein the set of rules is dependent on the features determined for the data blocks selected during previous searches;

selecting the one or more data blocks in the object using the trained analysis model;

performing a static analysis on the one or more data blocks to determine a set of features of the one or more data blocks;

determining a degree of harmfulness of the object based on the set of features and a detection model for detection of malicious objects, wherein the detection model has been trained by a method for machine learning on at least one safe object and one malicious object;

recognizing the object is safe when the degree of harmfulness does not exceed a predetermined threshold of harmfulness, wherein the static analysis is performed on all data blocks of the object;

recognizing the object is malicious when the degree of harmfulness of the one or more data blocks exceeds the predetermined threshold of harmfulness; and

retraining the analysis model if the object is recognized as malicious, so that the recognizing of the object as malicious is accomplished by analyzing a smaller number of data blocks.

10. The medium of claim 9 , wherein selecting the one or more data blocks comprises:

calculating the parameters of the one or more data blocks, the parameters comprising one or more of a size of a data block, a position of the data block in the object, and a type of the object.

11. The medium of claim 9 , wherein the set of features comprises one or more of: parameters of a data block used for selection, type of data contained in a data block, logical or functional relationship between a data block and a data block selected during previous searches, and a coefficient of harmfulness.

12. The medium of claim 11 , wherein each command executed by the object is associated with a respective weight, and wherein the coefficient of harmfulness is calculated as a summation of the weights.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2018
From: CHISTYAKOV, ALEXANDER S; LOBACHEVA, EKATERINA M; ROMANENKO, ALEXEY M
To: AO KASPERSKY LAB
Reel/Frame 046088/0033 →
Priority Claims (1)
RU 2017136618 · Oct 18, 2017 · national
Continuity (2)
Provisional Application 62574254 · Oct 19, 2017
Related Publication 20190114419A1 · Apr 18, 2019
Cited By (4)
US 12,368,503 US 12,587,274 US 12,603,701 US 12,627,372