WO2017086837A1 - Method for detecting malicious programs and elements - Google Patents

Method for detecting malicious programs and elements Download PDF

Info

Publication number
WO2017086837A1
WO2017086837A1 PCT/RU2016/000773 RU2016000773W WO2017086837A1 WO 2017086837 A1 WO2017086837 A1 WO 2017086837A1 RU 2016000773 W RU2016000773 W RU 2016000773W WO 2017086837 A1 WO2017086837 A1 WO 2017086837A1
Authority
WO
WIPO (PCT)
Prior art keywords
elements
malicious
files
document
decomposed
Prior art date
Application number
PCT/RU2016/000773
Other languages
French (fr)
Russian (ru)
Original Assignee
РАБИНОВИЧ, Илья Самуилович
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by РАБИНОВИЧ, Илья Самуилович filed Critical РАБИНОВИЧ, Илья Самуилович
Publication of WO2017086837A1 publication Critical patent/WO2017086837A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the invention relates to the field of identification and analysis of data transmitted through a communication network, in particular to the identification, detection and analysis of malicious programs and elements or malicious software.
  • a communication network in particular to the identification, detection and analysis of malicious programs and elements or malicious software.
  • a malicious program is a computer software product that is capable of penetrating a computing device without the knowledge or consent of the owner of the device.
  • Malicious programs have become a common term and mean a general class of software, which includes many malicious, intrusive or otherwise interfering forms of software or machine code.
  • Malicious programs include various viruses, worms, Trojan horses (or Trojans), and rootkits. spyware, adware, exploit programs for third-party software, and any other unwanted malicious software.
  • Various types of malware can collect personal information related to the user and send this information back to the information collection device. Other types of malware can cause the computing device to fail or not work at all.
  • search sequence and rule-based analysis may not be detected by updated programs.
  • the disadvantages of antivirus software include the inability to detect new or unknown viruses.
  • heuristic analysis means that the program being analyzed is launched in some isolated and safe environment, and the method collects information about its execution. The specified method evaluates the maximum possible amount of information and allows to draw conclusions about the legitimacy of the analyzed program, or the program’s focus on something non-standard or malicious. Heuristic analysis has several advantages. It works whether the specific code has been analyzed or not previously. It can also recognize new viruses and Trojan programs.
  • the invention is known (RU 2417429, 04/27/11) for a method of minimizing an attacker's use of vulnerabilities in software installed on a target computer by examining network traffic there and identifying malicious code before it can be executed and / or installed.
  • transport level for example, the Transmission Control Protocol (TCP) socket level
  • TCP Transmission Control Protocol
  • component security installed on the target computer.
  • TCP Transmission Control Protocol
  • the data included in the message is compared with the exploit features (code exploiting vulnerabilities in software produced by third parties) used to identify the malicious code.
  • the signs of an exploit are provided to the security component by a security service that collects information about the malicious code. Based on a comparison of the data in the message with the signs of the exploit, the rules are identified that instruct the security component to take the appropriate action on the received message.
  • a heuristic method of code analysis (RU 2526716, 08/27/2014), which includes the following steps: using a processor of a computing device, perform a static evaluation of program instructions in a program containing a sequence of program instructions stored on a machine-readable medium, functionally connected with a processor, moreover, a static evaluation is performed without executing said program instructions, and each instruction in the aforementioned sequence to each of a group of suspicion criteria, wherein criteria used to evaluate the suspicion of each instruction based on expected results during instruction execution, it is determined by said processor, whether each instruction satisfies sequence in any of the criteria of a group of suspicion criteria; appoint, by means of said processor, a quantitative indicator at the level of instructions for each instruction that violates any of the criteria for suspiciousness, and a quantitative indicator at the level of instructions reflects one or more of the experience 00773
  • the aforementioned method is characterized by the aforementioned disadvantages of heuristic methods — insufficient reliability of detection of malicious elements.
  • the main task solved by the claimed invention is to provide a method for detecting malware and elements on a website and traffic capable of detecting malware and elements with high reliability.
  • the technical result is achieved due to the fact that in the known method for detecting malicious programs, including analyzing a program or message elements that satisfy a criterion or group of criteria for suspiciousness and creating a message indicating the result of detection of malicious programs and elements, to a server, browser or communication channel a filtering system is built in between, which analyzes the transmitted documents in accordance with a database including data on known safe elements ents, and if the document contains potentially harmful elements that are not in the safe database elements carried decompose the received document into a plurality of individual elements which create a plurality of files from the decomposed elements whose number corresponds to the number of decomposed elements produce a composition ⁇ a ⁇ a 'multiple filesets of decomposed elements, which are subjected to dynamic detection for tracking deviations from normal the behavior of the client program as a result of the actions of malicious elements, moreover, upon detection of one or more x harmful elements, include them in the database as malicious, and other elements, as safe, and the document is transmitted to
  • compositional set of files from decomposed elements is performed.
  • the number of composite files generated on the basis of the functional set is equal to the number of functional blocks and one base file compiled on the basis of the original file from which all potentially harmful elements are removed.
  • the number of composite files generated on the basis of an incremental set is equal to the number of decomposed elements and one base file composed on the basis of the original file from which all potentially harmful elements are removed.
  • composite files are formed on the basis of a complete combinatorial search of potentially harmful elements so that each combination set file contains a unique combination of decomposed elements.
  • the analysis of the document outgoing from the server can be carried out in conjunction with the analysis of metadata received on the server, for example, the User Agent and IP address and sent back from the server, for example, the status code and redirection address.
  • the method may use a detection system configured to enable the operation of malicious codes in the process of working with appropriate type of interpreted files, for example, vulnerable versions of Microsoft Office for opening DOC (X), Adobe Acrobat Reader for PDF, Adobe Flash Player for SWF.
  • DOC X
  • Adobe Acrobat Reader for PDF
  • Adobe Flash Player for SWF.
  • the distinguishing features of the invention are the decomposition and subsequent composition of one or several sets of composite files from decomposed elements, which allow an unambiguous verdict to establish the harmfulness of website elements, interpreted files and traffic by opening and interpreting each of these files using software designed to work with this type of file under the control of a specialized software detector code so that any deviation to normal oh the aforesaid software would be recorded by the detector and, based on the fixation of the anomalous behavior of the client program would be submitted unambiguous verdict on the presence or absence of harmful elements in the open file.
  • the increase in the reliability of detection of malicious programs and elements is also achieved through the use of dynamic (rather than static, on the emulator) real-time detection using a set of files based on a composition of elements extracted by decomposition from the original file.
  • the drawing schematically shows a device with which the method can be implemented.
  • a device for implementing the method in one embodiment comprises a filtering unit 1 connected to a decomposition and composition unit 2, with a browser 8 and with a server 9 connected to each other.
  • the filtering unit 1 and the decomposition and composition unit 2 are also connected to the global databases of 4 harmful elements and the database of 5 safe elements.
  • the filtering unit 1 is connected to a local database of 6 safe elements and a local database of 7 malicious elements.
  • the decomposition and composition unit 2 is connected to the dynamic detection unit 3.
  • inventive method is implemented as follows. Moreover, the inventive method is not limited to the specific described implementation options, as they may vary.
  • the browser sends a request for a document to the server, the server accepts the request, processes it, generates a document and sends it in response.
  • synchronous and asynchronous options are possible.
  • the asynchronous option is needed to reduce delays for the user when analyzing data, since the documents that he downloads have already been received and checked by the system itself.
  • a document HTML pages, for example
  • Filtering unit 1 checks the document for the presence of potentially harmful elements against local databases of known safe 6 and 7 harmful elements.
  • filtering unit 1 updates the local databases of safe 6 and malicious 7 elements using global databases of safe 5 and malicious 4 elements, and then checks the document for both local databases 6 and 7 safe and malicious elements again. If after checking the updated local databases 6 and 7 of known malicious and safe elements in the document there are elements that are not in the specified databases, the document is sent to server 9 to check and qualify unknown potentially harmful elements. This check takes some time, and therefore the user will have to wait until the analysis is complete.
  • the site security system installed on the server itself initiates the first request for a document, analyzes it and qualifies all unknown potentially dangerous elements.
  • the first user will not feel any delays in receiving the requested document, that is, they will be, but only for the analysis of all potentially dangerous elements of the document based on local databases of safe and malicious elements.
  • the wait time for the first user is saved.
  • the delay is only for the first user, the subsequent ones already use the results of the initial analysis, and therefore the delay for them is minimal, because there is only an analysis of the local databases of malicious and safe elements to analyze unknown potentially harmful elements of the document.
  • the filtering unit 1 built into the server, browser or communication channel between them, analyzes the transmitted documents in accordance with the local database 6, which includes data on known safe elements.
  • Local databases of safe and malicious elements are initially created by fully replicating data from the corresponding global databases 4 and 5 located on the protection system server. These databases can be updated using filtering unit 1 if unknown elements are detected in outgoing documents, the types of which, according to the current settings of the block, can be used to attack a browser or other user software, as well as by a signal from the server, after analysis, malicious elements on servers with installed protection systems and according to the schedule according to the current settings of the filtering unit 1.
  • the filtering unit mainly made in the form of software embedded in the server, or a browser, or a communication channel between the browser and the server, analyzes the sent document using a local database of 6 secure elements, also installed in the server, or a browser, or a communication channel between the browser and a server in read-only mode, in which the local database of 6 safe elements is not updated with new data so as not to disrupt the coherence of the database.
  • a computer program is also built into server 9, or browser 8, or into the communication channel between them, which is a local database of 7 malicious elements that is also used as part of this operation in read-only mode. If the sent document contains unknown elements that are absent both in the local database of 7 known malicious elements and in the local database of 6 safe elements, and the types of which, after conducting a comparative analysis according to the settings of the filtering block, can be used to attack the browser or other application software on the user side, updating in the "write only" mode of local databases 6 and 7 by adding to them from global databases 4 and 5 implemented mainly in the form of software and installed on server 9. After this, another check is performed in read-only mode the sent document on both local databases - malicious 7 and safe 6 elements.
  • filtering unit 1 checks the potentially harmful elements of the received file for compliance with elements already known as malicious and safe.
  • filtering unit 1 sends such a document to the decomposition and composition unit 2.
  • a document containing unknown potentially harmful elements is sent by sending the corresponding packet more of a set of data packets to server 9, where data is received and processed by decomposition and composition mainly using a program installed on server 9.
  • the decomposition of the resulting document is carried out by splitting it into many separate elements containing unknown potentially harmful elements, from which create many files with decomposed elements. After decomposition of the received document into individual constituent elements, a set of files is compiled based on a functional, incremental or complete set as follows:
  • the functional relationships between decomposed elements are preliminarily analyzed. At the same time, all elements that are functionally connected with each other are revealed, and a functional block is formed from them.
  • the number of files in the functional set must be equal to the number of functional blocks and one base file, compiled on the basis of the original file, from which all unknown potentially harmful elements were deleted;
  • the number of composites is a set of composites from the original decomposed elements, assembled in such a way as to include all possible unique combinations of decomposed elements, (2 ⁇ ⁇ -1), (two to the power of the number of decomposed elements without a unit) plus one base file;
  • the following are examples of the implementation of the method in various ways when implementing the decomposition of the document with the subsequent composition.
  • the original file intercepted by the filtering unit.
  • compositional kits in the following embodiments.
  • Both potentially harmful elements such as ⁇ script>, b) and c) are functionally in no way connected with each other, they are independently working scripts, so we get three composition files created by embedding function blocks in the base composition file, one after the other, inserted into the positions of the files of the composition set in which they were in the original file. This is necessary to detect malware. elements and separating them from safe. In this case, three composite files were obtained.
  • Incremental composition In the presence of two unknown potentially harmful elements, b) and c), we create three composite files by adding, one after the other, data elements to the previous composite file, inserting them at the positions where they were present in the original file.
  • composition of the functional (1 - M + 1), incremental (1 - N + 1) or complete compositional (1 - 2 ⁇ ⁇ ) file sets from decomposed elements is performed, where M is the number of functional blocks and ⁇ is the number of decomposed elements .
  • compiled file set compositions are subjected to dynamic detection.
  • those functionally related blocks of elements from all unknowns to the system are detected as malicious elements that received the verdict “the malicious code was triggered” when analyzed in the dynamic detection unit 3.
  • the element that causes the verdict “malicious code was triggered” by the dynamic detection unit is detected as a malicious element.
  • the data obtained is analyzed in a single frame, i.e. all unknown potentially dangerous file elements are identified simultaneously with the addition of each of them, according to the verdict, to the global database of malicious 7 and safe 6 elements, respectively.
  • Elements in the set can be modified to eliminate delays in the operation of the interpreted code.
  • JavaScript may be delayed for a certain time in order to pass the check of dynamic detection block 3, which is time limited, but the user would have worked a malicious element.
  • a composite set of decomposed elements obtained from the original file is subjected to dynamic detection to detect deviations from the normal behavior of the client program into which the file is downloaded from the composite set for its interpretation as a result of the actions of malicious elements.
  • each file from the composition set is downloaded using a special loader program implemented as software installed on the server of the security system and implementing dynamic detection.
  • the dynamic detection unit can be made in the form of software installed on the server of the security system, which is based on a program for working with the corresponding type of documents and having or emulating vulnerabilities associated with the interpretation of this type of documents, working under the control of additional a software layer whose task is to identify anomalies in the execution of the software client or its behavior.
  • a dynamic detector 3 it is possible to use special software installed on the server and emulate, partially or completely, the progress of the client software associated with the interpretation of the corresponding file type.
  • the program for working with the corresponding type of documents installed on the server and which is part of the dynamic detection unit is able to work with a certain type of file, interpreting its internal structure in such a way as to trigger the malicious code in the file if it is present there.
  • the abnormal course of execution of program code is characterized by a deviation of the paths for executing client software instructions from those prescribed by the developers of this software so that malicious code contained in one form or another in a file from a composition set can be executed in the same way as client program code providing.
  • the abnormal behavior of client software is characterized by the use of tools provided by the operating system to perform operations that are not required to interpret the internal structure of the file from the composition set and, therefore, go beyond the predefined set of allowed actions and calls of the operating system tools for this client software.
  • Filtering unit 1 After decomposition and composition, as well as dynamic detection, which allows to separate safe elements from malicious ones, the resulting file containing only safe elements is returned to filtering unit 1.
  • Filtering unit 1 also updates the local databases of safe 6 and malicious 7 elements. If the filtering unit 1 is interfaced with the automatic treatment unit (not shown in the drawing), then it sends to the automatic treatment unit all the information about the detected malicious elements, which will be necessary for the unambiguous identification of the malicious code or data on the website itself or related with it are resources that transmit a document with malicious elements in the original file previously sent from the server to the user.
  • the filtering unit 1 replaces the original outgoing document with the one that was transferred back from the decomposition unit and composition 2, and also adjusts, if necessary, the outgoing metadata of the user’s request, for example, changing the size of the outgoing file from the original to a new one, not containing malicious elements.
  • filtering unit 1 updates both local malware databases 7 and safe 6 elements, receiving data for updating them from the corresponding global databases 4 and 5.
  • the received file is tested for the validity of document files with deleted malicious elements. Validation is carried out after the removal of elements identified as malicious, but before the transmission of the adjusted document to browser 8.
  • the file may be corrupted as a result of the removal of malicious elements.
  • the validity check can also be carried out at the filtering stage after the removal of known malicious elements from the document with its subsequent adjustment if necessary.
  • the validity of the document is checked in filtering unit 1 if malicious elements are removed from the document.
  • the file is received from the filtering unit 1, it is checked for validity, according to predefined rules and standards, after which, if necessary, the file is adjusted according to predefined algorithms and transferred back to the filtering unit.
  • malware elements are detected in the outgoing document, which was analyzed by the decomposition and composition unit 2 based on the verdicts rendered by the dynamic detection unit 3 (for example, “the malicious code was detected” - “the malicious code was not detected”) for of a particular composition set file that was loaded into it for verification, those elements that were identified as malicious are entered by the decomposition and composition unit 2 in the glo ballroom database of 4 malicious elements.
  • the specified database is implemented as software and installed on server 9 so that in the future such elements in outgoing traffic could be unambiguously identified as malicious.
  • the outgoing document is rearranged in such a way as to exclude from its structure those elements that have been identified as malicious.
  • the document is transferred to the filtering system 1, which receives the given file and checks its validity, after which it prepares the document for transfer to the browser 8 to the user, modifying, if necessary, meta-data in the original response to the client’s browser request.
  • the original outgoing file is replaced with a new one, as a result of which a safe version of the requested original document is sent to the user.
  • the shell executes code on a site located in a large number of files that also operate with values from local or located remotely on other database servers.
  • Each operation executed by the command interpreter is logged, as well as each value of the incoming and outgoing parameters for this operation. For example, if there is a malicious insertion into the HTML code of the page, then this insertion begins in the interpreted file that was received for the user, from position 444.
  • the shell of the command interpreter is raised in order to identify the set of commands on the site that it inserted into file this malicious element.
  • an automated treatment block as a result of analyzing data on the server’s operation and the history of changes in the do_not_do_eval.php file we are interested in, for the line “eua1 something inside ”)
  • the automated treatment unit can also reach a verdict on exactly what means the attacker used to infect the website, and also provide the decision maker on the website, a conclusion on the steps to be taken to prevent similar incidents in the future.
  • the claimed invention can be widely used to identify, detect and analyze malicious elements on a website and in traffic. At the same time, the reliability of detection of malicious programs and elements is significantly increased and the time required to detect them is reduced.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention relates to a method for detecting malicious programs and elements which are transmitted over a network. The method involves analyzing a program or messages which satisfy criteria for being suspicious, and creating a message which indicates the result of the malicious element detection. In the claimed method, a filter system is installed in a server, browser or communication channel between same, said filter system analyzing transmitted documents while taking into consideration a database which includes data regarding known secure elements, and, if a document includes unknown potentially-malicious elements which are not included in the database of secure elements, the document is decomposed into a plurality of separate documents containing the unknown potentially-malicious elements, which are then used to create files, the number of which files is correlated to the number of decomposed elements; files are composed from the decomposed elements, and then one or a plurality of sets of files made of decomposed elements are composed and are then subjected to dynamic detection in order to track the deviation of a client program from normal behavior as a result of the effects of malicious elements, and the document is transmitted to the browser without the identified malicious elements.

Description

Способ обнаружения вредоносных программ и элементов  Method for detecting malware and elements
Область техники Technical field
Изобретение относится к области идентификации и анализа данных, передаваемых через сеть связи, в частности к идентификации, обнаружению и анализу вредоносных программ и элементов или злонамеренного программного обеспечения. Предшествующий уровень техники The invention relates to the field of identification and analysis of data transmitted through a communication network, in particular to the identification, detection and analysis of malicious programs and elements or malicious software. State of the art
По мере того как технологии и инфраструктура компьютерных сетей совершенствуются, объем и скорость данных, передаваемых между устройствами компьютерной сети, стремительно возрастает. При этом передаваемые данные могут содержать вредоносные программы и элементы. Вредоносная программа - это компьютерный программный продукт, выполненный с возможностью проникать в вычислительное устройство без ведома или согласия владельца устройства. Вредоносные программы стали общеупотребительным термином и означают общий класс программного обеспечения, включающий в себя множество вредоносных, навязчивых или иным образом мешающих работе форм программного обеспечения или машинного кода. Вредоносные программы включают в себя различные вирусы, программы-черви, программы типа "троянский конь" (или программы - "трояны"), руткиты. программы-шпионы, программы с навязчивой рекламой, программы, эксплуатирующие уязвимости в программном обеспечении третьих сторон и любое другое нежелательное злонамеренное программное обеспечение. Различные типы вредоносных программ могут собирать персональную информацию, связанную с пользователем, и отправлять эту информацию обратно в устройство сбора информации. Другие типы вредоносных программ могут приводить к тому, что вычислительное устройство работает с ошибками или вообще не работает. As the technology and infrastructure of computer networks improves, the volume and speed of data transmitted between devices on a computer network is growing rapidly. At the same time, the transmitted data may contain malicious programs and elements. A malicious program is a computer software product that is capable of penetrating a computing device without the knowledge or consent of the owner of the device. Malicious programs have become a common term and mean a general class of software, which includes many malicious, intrusive or otherwise interfering forms of software or machine code. Malicious programs include various viruses, worms, Trojan horses (or Trojans), and rootkits. spyware, adware, exploit programs for third-party software, and any other unwanted malicious software. Various types of malware can collect personal information related to the user and send this information back to the information collection device. Other types of malware can cause the computing device to fail or not work at all.
Широко известны способы и средства идентификации и удаления вредоносных элементов с помощью антивирусного программного обеспечения. Традиционное антивирусное программное обеспечение использует последовательности поиска и предустановленный анаяитический подход для поиска известных вредоносных программ.  Widely known are methods and means of identifying and removing malicious elements using anti-virus software. Traditional antivirus software uses search sequences and a predefined anayahitic approach to search for known malware.
Однако с учетом того, что код вредоносных программ может довольно часто изменяться автором вредоносной программы, предустановленная 2016/000773 However, given the fact that the malware code can quite often be changed by the malware author, preinstalled 2016/000773
2  2
последовательность поиска и основанный на правилах анализ могут не обнаруживать обновленные программы. the search sequence and rule-based analysis may not be detected by updated programs.
Таким образом, к недостаткам антивирусного программного обеспечения можно отнести неспособность обнаружения новых или неизвестных вирусов.  Thus, the disadvantages of antivirus software include the inability to detect new or unknown viruses.
Указанные проблемы решаются также широко известными способами обнаружения в антивирусном программном обеспечении подозрительного режима работы программы и ее оценки. Если антивирусное программное обеспечение находит существенные корелляции кода либо поведения с уже известными вредоносными кодами, антивирусное приложение может допускать, что оно обнаруживает новый вирус или вредоносную программу. Эти способы подпадают под обобщенный термин - "эвристические" способы обнаружения вредоносных программ. Как правило, эвристический анализ означает, что анализируемая программа запускается в некотором изолированном и безопасном окружении, и способ собирает сведения о ее выполнении. Указанный способ подвергает оценке максимально возможный объем информации и позволяет сделать выводы о легитимности анализируемой программы, либо нацеленности программы на что-либо нестандартное или вредоносное. Эвристический анализ имеет ряд преимуществ. Он работает независимо от того, анализировался или нет конкретный код ранее. Он также может распознавать новые вирусы и программы - "трояны".  These problems are also solved by well-known methods for detecting a suspicious mode of operation of a program in antivirus software and evaluating it. If anti-virus software finds significant correlations of code or behavior with already known malicious codes, the anti-virus application may assume that it detects a new virus or malware. These methods fall under the generic term “heuristic” malware detection methods. As a rule, heuristic analysis means that the program being analyzed is launched in some isolated and safe environment, and the method collects information about its execution. The specified method evaluates the maximum possible amount of information and allows to draw conclusions about the legitimacy of the analyzed program, or the program’s focus on something non-standard or malicious. Heuristic analysis has several advantages. It works whether the specific code has been analyzed or not previously. It can also recognize new viruses and Trojan programs.
Однако указанному способу присущи такие недостатки, как недостаточная достоверность анализа, поскольку грань между корректным и наносящим вред режимом работы программного обеспечения может быть неопределенной, степень сходства с уже известным вредоносным кодом либо поведением может быть преднамеренно скрыта. При этом нужны значительные затраты времени, связанные с необходимостью проверки программы в безопасном окружении, в котором можно быть уверенным, что вред не будет нанесен. К тому же следует учитывать набор разнообразных приемов авторов вредоносных программ, направленных на предотвращение эвристического типа анализа.  However, such a method has inherent disadvantages such as insufficient reliability of the analysis, since the line between the correct and harmful mode of operation of the software may be uncertain, the degree of similarity with already known malicious code or behavior may be deliberately hidden. At the same time, considerable time is required associated with the need to check the program in a safe environment, in which you can be sure that the harm will not be done. In addition, one should take into account a set of various techniques of malware authors aimed at preventing the heuristic type of analysis.
Известно изобретение (RU 2417429, 27.04.11) на способ минимизации использования злоумышленником уязвимостей в программном обеспечении, установленном в целевом компьютере, посредством изучения сетевого трафика туда и идентификации злонамеренного кода перед тем, как он может быть выполнен и/или установлен. На транспортном уровне (например, уровне сокетов протокола управления передачей (TCP) сетевой трафик наблюдается с помощью компонента безопасности, установленного в целевом компьютере. Когда принимается сообщение, предназначенное для вычислительной системы, данные, включенные в сообщение, сравниваются с признаками эксплойта (код, эксплуатирующий уязвимости в программном обеспечении, произведённого третьими сторонами), используемыми для того, чтобы идентифицировать злонамеренный код. Признаки эксплойта предоставляются компоненту безопасности службой безопасности, которая собирает информацию о злонамеренном коде. На основе сравнения данных в сообщении с признаками эксплойта идентифицируются правила, которые инструктируют компонент безопасности, чтобы предпринять соответствующее действие по принятому сообщению. The invention is known (RU 2417429, 04/27/11) for a method of minimizing an attacker's use of vulnerabilities in software installed on a target computer by examining network traffic there and identifying malicious code before it can be executed and / or installed. At the transport level (for example, the Transmission Control Protocol (TCP) socket level, network traffic is monitored using the component security installed on the target computer. When a message intended for a computer system is received, the data included in the message is compared with the exploit features (code exploiting vulnerabilities in software produced by third parties) used to identify the malicious code. The signs of an exploit are provided to the security component by a security service that collects information about the malicious code. Based on a comparison of the data in the message with the signs of the exploit, the rules are identified that instruct the security component to take the appropriate action on the received message.
Однако в указанном способе отсутствует возможность селективного наблюдения за интерпретируемыми объектами веб-сайтов, а не за всем трафиком на транспортном уровне, отсутствует контроль и анализ корелляций передаваемых мета-данных, отсутствует возможность анализа отдельных интерпретируемых файлов, возможность асинхронного выявления вредоносных элементов на веб-сайте, то есть, выявления не в режиме реального времени, а также не выполняется функция корелляций данных, полученных в синхронном (режиме реального времени) и асинхронных режимах работы.  However, in this method there is no possibility of selective monitoring of interpreted objects of websites, and not all traffic at the transport level, there is no monitoring and analysis of correlations of transmitted meta-data, there is no possibility of analyzing individual interpreted files, the ability to asynchronously detect malicious elements on a website , that is, the detection is not in real time, and the function of correlating data received in synchronous (real time) and asynchronous modes is also not performed max work.
Наиболее близким к заявляемому способу является эвристический способ анализа кода (RU 2526716, 27.08.2014 г.), включающий следующие этапы: посредством процессора вычислительного устройства, выполняют статическую оценку программных инструкций в программе, содержащей последовательность программных инструкций, сохраненных на машиночитаемом носителе, функционально соединенном с процессором, причем статическую оценку выполняют без выполнения упомянутых программных инструкций, сравнивают, посредством упомянутого процессора, каждую инструкцию в упомянутой последовательности с каждым из группы критериев подозрительности, причем критерии подозрительности используют для оценки каждой инструкции на основании ожидаемого результата инструкции в ходе выполнения, определяют, посредством упомянутого процессора, удовлетворяет ли каждая инструкция в последовательности какому-либо критерию из группы критериев подозрительности; назначают, посредством упомянутого процессора, количественный показатель на уровне инструкций для каждой инструкции, которая нарушает какой-либо из критериев подозрительности, причем количественный показатель на уровне инструкций отражает одно или более из опыта 00773 Closest to the claimed method is a heuristic method of code analysis (RU 2526716, 08/27/2014), which includes the following steps: using a processor of a computing device, perform a static evaluation of program instructions in a program containing a sequence of program instructions stored on a machine-readable medium, functionally connected with a processor, moreover, a static evaluation is performed without executing said program instructions, and each instruction in the aforementioned sequence to each of a group of suspicion criteria, wherein criteria used to evaluate the suspicion of each instruction based on expected results during instruction execution, it is determined by said processor, whether each instruction satisfies sequence in any of the criteria of a group of suspicion criteria; appoint, by means of said processor, a quantitative indicator at the level of instructions for each instruction that violates any of the criteria for suspiciousness, and a quantitative indicator at the level of instructions reflects one or more of the experience 00773
4  four
использования, сравнения с /другим кодом, сформированным посредством официального инструментального средства, и сравнения с другой последовательностью инструкций, сформированной посредством официального инструментального средства; суммируют, посредством упомянутого процессора, количественные показатели на уровне инструкций для каждой инструкции для получения в результате количественного показателя на уровне программы; определяют, посредством упомянутого процессора, превышает ли количественньш показатель на уровне программы пороговое значение; и если количественный показатель на уровне программы превышает пороговое значение, создают посредством упомянутого процессора сообщение, указывающее результат обнаружения вредоносных программ. use, comparison with / another code generated by the official tool, and comparison with another sequence of instructions generated by the official tool; summarize, by means of said processor, quantitative indicators at the instruction level for each instruction to obtain a quantitative indicator at the program level; determining by means of said processor whether the quantitative indicator at the program level exceeds a threshold value; and if the quantitative indicator at the program level exceeds a threshold value, a message is generated by said processor indicating the result of malware detection.
Однако указанному способу присущи вышеуказанные недостатки эвристических способов - недостаточная достоверность обнаружения вредоносных элементов.  However, the aforementioned method is characterized by the aforementioned disadvantages of heuristic methods — insufficient reliability of detection of malicious elements.
Общие признаки: осуществление работы с сетевым трафиком и базами данных безопасных и небезопасных объектов, а выявленные вредоносные элементы не передаются на компьютер пользователя.  Common signs: working with network traffic and databases of safe and insecure objects, and detected malicious elements are not transmitted to the user's computer.
Раскрытие изобретения Основной задачей, решаемой заявляемым изобретением, является создание способа обнаружения вредоносных программ и элементов на веб- сайте и трафике, способных с высокой достоверностью обнаруживать вредоносные программы и элементы. SUMMARY OF THE INVENTION The main task solved by the claimed invention is to provide a method for detecting malware and elements on a website and traffic capable of detecting malware and elements with high reliability.
. Технический результат - повышение достоверности обнаружения вредоносных программ и элементов.  . EFFECT: increased reliability of detection of malicious programs and elements.
Технический результат достигается за счет того, что в известном способе обнаружения вредоносных программ, включающем анализ программы, или элементов сообщений, которые удовлетворяет критерию или группе критериев подозрительности и создание сообщения, указывающего на результат обнаружения вредоносных программ и элементов, в сервер, браузер или канал коммуникаций между ними встраивают систему фильтрации, которая осуществляет анализ передаваемых доклтментов в соответствии с базой данных, включающей данные об известных безопасных элементах, и в случае, если в документе присутствуют потенциально вредоносные элементы, отсутствующие в базе данных безопасных элементов, осуществляют декомпозицию полученного документа на множество отдельных элементов, из которых создают множество файлов из декомпозированных элементов, число которых соответствует числу декомпозированных элементов, производят композицию · одного · либо ' нескольких наборов файлов из декомпозированных элементов, которые подвергают динамическому детектированию для отслеживания отклонений от нормального поведения клиентской программы в результате действий вредоносных элементов, причем при обнаружении одного либо нескольких вредоносных элементов, включают их в базу данных как вредоносные, а остальные элементы, как безопасные, а документ передают в браузер без выявленных вредоносных элементов. The technical result is achieved due to the fact that in the known method for detecting malicious programs, including analyzing a program or message elements that satisfy a criterion or group of criteria for suspiciousness and creating a message indicating the result of detection of malicious programs and elements, to a server, browser or communication channel a filtering system is built in between, which analyzes the transmitted documents in accordance with a database including data on known safe elements ents, and if the document contains potentially harmful elements that are not in the safe database elements carried decompose the received document into a plurality of individual elements which create a plurality of files from the decomposed elements whose number corresponds to the number of decomposed elements produce a composition · a · a 'multiple filesets of decomposed elements, which are subjected to dynamic detection for tracking deviations from normal the behavior of the client program as a result of the actions of malicious elements, moreover, upon detection of one or more x harmful elements, include them in the database as malicious, and other elements, as safe, and the document is transmitted to the browser without the detection of malicious elements.
При композиции осуществляют функциональный, или инкрементальный, или полный композиционный набор файлов из декомпозированных элементов.  When composing, a functional, or incremental, or complete compositional set of files from decomposed elements is performed.
В случае композиции на основе функционального набора, анализируют функциональные связи между декомпозированными элементами и формируют функциональные блоки, каждый из которых содержит декомпозированные элементы, связанные функционально друг с другом  In the case of a composition based on a functional set, the functional relationships between decomposed elements are analyzed and functional blocks are formed, each of which contains decomposed elements connected functionally to each other
Количество композиционных файлов, сформированных на основе функционального набора, равно количеству функциональных блоков и одному базовому файлу, составленному на основе оригинального файла, из которого удалены все потенциально вредоносные элементы.  The number of composite files generated on the basis of the functional set is equal to the number of functional blocks and one base file compiled on the basis of the original file from which all potentially harmful elements are removed.
Количество композиционных файлов, сформированных на основе инкрементального набора, равно количеству декомпозированных элементов и одному базовому файлу, составленному на основе оригинального файла, из которого удалены все потенциально вредоносные элементы.  The number of composite files generated on the basis of an incremental set is equal to the number of decomposed elements and one base file composed on the basis of the original file from which all potentially harmful elements are removed.
При композиции на основе полного комбинационного набора композиционные файлы формируют на основе полного комбинаторного перебора потенциально вредоносных элементов так, чтобы каждый файл комбинационного набора содержал уникальную комбинацию из декомпозированных элементов.  When compositing based on a complete combination set, composite files are formed on the basis of a complete combinatorial search of potentially harmful elements so that each combination set file contains a unique combination of decomposed elements.
В одном из вариантов реализации способа анализ исходящего с сервера документа можно осуществлять совместно с анализом мета- данных, принимаемых на сервер, например, User Agent и IP-адрес и направляемых с сервера обратно, например, код статуса и адрес перенаправления.  In one embodiment of the method, the analysis of the document outgoing from the server can be carried out in conjunction with the analysis of metadata received on the server, for example, the User Agent and IP address and sent back from the server, for example, the status code and redirection address.
В способе может использоваться система детектирования, выполненная с возможностью обеспечения срабатывания вредоносных кодов в процессе работы с соответствующим типом интерпретируемых файлов, например, уязвимые версии Microsoft Office для открытия DOC(X), Adobe Acrobat Reader для PDF, Adobe Flash Player для SWF. The method may use a detection system configured to enable the operation of malicious codes in the process of working with appropriate type of interpreted files, for example, vulnerable versions of Microsoft Office for opening DOC (X), Adobe Acrobat Reader for PDF, Adobe Flash Player for SWF.
Отличительные признаки изобретения - декомпозиция и последующая композиция одного либо нескольких наборов композиционных файлов из декомпозированных элементов, позволяют выносить однозначный вердикт по установлению вредоносности элементов веб-сайта, интерпретируемых файлов и трафика за счет открытия и интерпретации каждого из этих файлов с помощью программного обеспечения, предназначенного для работы с данным типом файлов под контролем специализированного программного кода- детектора таким образом, что любое отклонение в нормальной работе вышеозначенного программного обеспечения было бы зафиксировано детектором и, на основании фиксации аномального поведения клиентской программы, был бы вынесен однозначный вердикт о наличии либо отсутствии вредоносного элемента в открытом файле.  The distinguishing features of the invention are the decomposition and subsequent composition of one or several sets of composite files from decomposed elements, which allow an unambiguous verdict to establish the harmfulness of website elements, interpreted files and traffic by opening and interpreting each of these files using software designed to work with this type of file under the control of a specialized software detector code so that any deviation to normal oh the aforesaid software would be recorded by the detector and, based on the fixation of the anomalous behavior of the client program would be submitted unambiguous verdict on the presence or absence of harmful elements in the open file.
. При этом повышение достоверности обнаружения вредоносных программ и элементов достигается также за счёт использования динамического (а не статического, на эмуляторе) детектирования в режиме реального времени с использованием набора файлов, составленных на основе композиции элементов, выделенных путём декомпозиции из первоначального файла. . At the same time, the increase in the reliability of detection of malicious programs and elements is also achieved through the use of dynamic (rather than static, on the emulator) real-time detection using a set of files based on a composition of elements extracted by decomposition from the original file.
На чертеже схематически представлено устройство, с помощью которого может быть реализован способ.  The drawing schematically shows a device with which the method can be implemented.
Примеры осуществления изобретения Устройство для реализации способа в одном из вариантов исполнения содержит блок фильтрации 1, соединенный с блоком декомпозиции и композиции 2, с браузером 8 и с сервером 9, связанными друг с другом. Блок фильтрации 1 и блок декомпозиции и композиции 2 подсоединены также к глобальным базам данных 4 вредоносных элементов и базе данных 5 безопасных элементов. Кроме того, блок фильтрации 1 соединен с локальной базой 6 безопасных элементов и локальной базой 7 вредоносных элементов. При этом блок декомпозиции и композиции 2 соединен с блоком динамического детектирования 3. Examples of carrying out the invention A device for implementing the method in one embodiment comprises a filtering unit 1 connected to a decomposition and composition unit 2, with a browser 8 and with a server 9 connected to each other. The filtering unit 1 and the decomposition and composition unit 2 are also connected to the global databases of 4 harmful elements and the database of 5 safe elements. In addition, the filtering unit 1 is connected to a local database of 6 safe elements and a local database of 7 malicious elements. In this case, the decomposition and composition unit 2 is connected to the dynamic detection unit 3.
Заявляемый способ реализуется следующим образом. При этом заявляемый способ не ограничен конкретными описанными вариантами реализации, поскольку они могут варьироваться. The inventive method is implemented as follows. Moreover, the inventive method is not limited to the specific described implementation options, as they may vary.
Браузер посылает запрос на получение документа на сервер, сервер принимает запрос, обрабатывает его, формирует документ и отсылает его в ответ.  The browser sends a request for a document to the server, the server accepts the request, processes it, generates a document and sends it in response.
При этом возможна работа по синхронному и асинхронному вариантам. Асинхронный вариант нужен для уменьшения задержек для пользователя при анализе данных, поскольку документы, которые он загружает, уже были предварительно получены и проверены самой системой. Таким образом, имеются два варианта развития событий для пользователя: в первом случае, пользователь через свой браузер посылает запрос на получение документа (HTML-странички, к примеру), который формируется сервером и отправляется обратно пользователю. Но сначала, до отправки пользователю, документ направляется в блок фильтрации 1. Блок фильтрации 1 производит проверку документа на наличие потенциально вредоносных элементов по локальным базам известных безопасных 6 и вредоносных 7 элементов. В случае если в документе присутствуют потенциально вредоносные элементы, отсутствующие в обеих базах, блок фильтрации 1 производит обновление локальных баз безопасных 6 и вредоносных 7 элементов с использованием глобальных баз безопасных 5 и вредоносных 4 элементов, после чего проверяет документ по обеим локальным базам 6 и 7 безопасных и вредоносных элементов ещё раз. Если после проверки по обновлённым локальным базам 6 и 7 известных вредоносных и безопасных элементов в документе присутствуют элементы, отсутствующие в указанных базах, документ отправляется на сервер 9 для проверки и квалификации неизвестных потенциально вредоносных элементов. Указанная проверка отнимает некоторое время, в связи с чем пользователю придётся подождать окончания анализа. At the same time, synchronous and asynchronous options are possible. The asynchronous option is needed to reduce delays for the user when analyzing data, since the documents that he downloads have already been received and checked by the system itself. Thus, there are two options for the development of events for the user: in the first case, the user sends a request through his browser to receive a document (HTML pages, for example), which is generated by the server and sent back to the user. But first, before being sent to the user, the document is sent to filtering unit 1. Filtering unit 1 checks the document for the presence of potentially harmful elements against local databases of known safe 6 and 7 harmful elements. If the document contains potentially harmful elements that are absent in both databases, filtering unit 1 updates the local databases of safe 6 and malicious 7 elements using global databases of safe 5 and malicious 4 elements, and then checks the document for both local databases 6 and 7 safe and malicious elements again. If after checking the updated local databases 6 and 7 of known malicious and safe elements in the document there are elements that are not in the specified databases, the document is sent to server 9 to check and qualify unknown potentially harmful elements. This check takes some time, and therefore the user will have to wait until the analysis is complete.
В асинхронном варианте работы система защиты сайта, установленная на сервере, сама инициирует первый запрос на получение документа, анализирует его и квалифицирует все неизвестные потенциально опасные элементы. В таком случае первый пользователь никаких задержек при получении запрашиваемого документа просто не почувствует, то есть, они будут, но только на анализ всех потенциально опасных элементов документа по локальным базам безопасных и вредоносных элементов. В этом случае экономится время ожидания для первого пользователя. При синхронной обработке задержка идёт только для первого пользователя, последующие уже пользуются результатами первичного анализа, в связи с чем задержка для них минимальна, потому что идёт только анализ по локальным базам вредоносных и безопасных элементов на анализ неизвестных потенциально вредоносных элементов документа. In the asynchronous mode of operation, the site security system installed on the server itself initiates the first request for a document, analyzes it and qualifies all unknown potentially dangerous elements. In this case, the first user will not feel any delays in receiving the requested document, that is, they will be, but only for the analysis of all potentially dangerous elements of the document based on local databases of safe and malicious elements. In this case, the wait time for the first user is saved. With synchronous processing, the delay is only for the first user, the subsequent ones already use the results of the initial analysis, and therefore the delay for them is minimal, because there is only an analysis of the local databases of malicious and safe elements to analyze unknown potentially harmful elements of the document.
Блок фильтрации 1, встроенный в сервер, браузер или канал коммуникаций между ними, осуществляет анализ передаваемых документов в соответствии с локальной базой данных 6, включающей данные об известных безопасных элементах. Локальные базы данных безопасных и вредоносных элементов первоначально создают путём полной репликации данных из соответствующих глобальных баз данных 4 и 5, находящихся на сервере системы защиты. Эти базы данных могут быть обновлены с помощью блока фильтрации 1 в случае обнаружения неизвестных элементов в исходящих документах, типы которых, согласно текущим настройкам блока, могут быть использованы для атаки на браузер либо иное ПО пользователя, а также по сигналу с сервера, после анализа потенциально вредоносных элементов на серверах с установленными системами защиты и по расписанию согласно текущим настройкам блока фильтрации 1.  The filtering unit 1, built into the server, browser or communication channel between them, analyzes the transmitted documents in accordance with the local database 6, which includes data on known safe elements. Local databases of safe and malicious elements are initially created by fully replicating data from the corresponding global databases 4 and 5 located on the protection system server. These databases can be updated using filtering unit 1 if unknown elements are detected in outgoing documents, the types of which, according to the current settings of the block, can be used to attack a browser or other user software, as well as by a signal from the server, after analysis, malicious elements on servers with installed protection systems and according to the schedule according to the current settings of the filtering unit 1.
Блок фильтрации 1, преимущественно выполненный в виде программного обеспечения, встроенного в сервер, либо браузер, либо канал связи между браузером и сервером, анализирует отсылаемый документ с помощью локальной базы 6 безопасных элементов, также установленной в сервер, либо браузер, либо канал связи между браузером и сервером в режиме «только чтение», при котором локальная база данных 6 безопасных элементов не пополняется новыми данными, чтобы не сбивать когерентность базы данных.  The filtering unit 1, mainly made in the form of software embedded in the server, or a browser, or a communication channel between the browser and the server, analyzes the sent document using a local database of 6 secure elements, also installed in the server, or a browser, or a communication channel between the browser and a server in read-only mode, in which the local database of 6 safe elements is not updated with new data so as not to disrupt the coherence of the database.
Кроме того, в сервер 9, либо браузер 8, либо в канал связи между ними, встроена также программа для ЭВМ, представляющая собой локальную базу 7 вредоносных элементов, также используемую в рамках данной операции в режиме «только чтение». В случае если в отправленном документе присутствуют неизвестные элементы, отсутствующие как в локальной базе 7 известных вредоносных элементов, так и в локальной базе 6 безопасных элементов, и типы которых, после проведения сравнительного анализа согласно настройкам блока фильтрации, могут быть использованы для атаки на браузер либо иное прикладное программное обеспечение на стороне пользователя, производится обновление в режиме «только запись» локальных баз данных 6 и 7 путём добавления к ним из глобальных баз данных 4 и 5, реализованных преимущественно в виде ПО и установленных на сервере 9. После этого производится еще одна проверка в режиме «только чтение» отсылаемого документа по обеим локальным базам данных - вредоносных 7 и безопасных 6 элементов. При этом в локальную базу данных 7 вредоносных элементов на данном этапе проверки документа добавляются только те новые элементы, что присутствуют в глобальной базе 4 вредоносных элементов, но которых нет в локальной. Аналогичным образом пополняется и база данных 6 безопасных элементов. Неизвестные элементы на данном этапе проверки документа не добавляются в локальные базы данных, а подлежат лишь дальнейшей классификации на сервере. In addition, a computer program is also built into server 9, or browser 8, or into the communication channel between them, which is a local database of 7 malicious elements that is also used as part of this operation in read-only mode. If the sent document contains unknown elements that are absent both in the local database of 7 known malicious elements and in the local database of 6 safe elements, and the types of which, after conducting a comparative analysis according to the settings of the filtering block, can be used to attack the browser or other application software on the user side, updating in the "write only" mode of local databases 6 and 7 by adding to them from global databases 4 and 5 implemented mainly in the form of software and installed on server 9. After this, another check is performed in read-only mode the sent document on both local databases - malicious 7 and safe 6 elements. In this case, at the current stage of document verification, only those new elements are added to the local database of 7 malicious elements that are present in the global database of 4 malicious elements, but which are not in the local one. Similarly, the database of 6 safe elements is updated. Unknown elements at this stage of document verification are not added to local databases, but only subject to further classification on the server.
Таким образом, блок фильтрации 1 проверяет потенциально вредоносные элементы полученного файла на соответствие элементам, уже известным как вредоносные и безопасные.  Thus, filtering unit 1 checks the potentially harmful elements of the received file for compliance with elements already known as malicious and safe.
Если даже после этого устанавливается, что в отсылаемом документе присутствуют неизвестные элементы, которые могут быть потенциально вредоносными, и типы которых, после проведения сравнительного анализа согласно настройкам блока фильтрации, могут быть использованы для атаки на браузер либо иное ПО на стороне пользователя, блок фильтрации 1 отсылает такой документ в блок декомпозиции и композиции 2. Отправка документа, содержащего неизвестные потенциально вредоносные элементы, производится путём направления соответствующего пакета либо набора пакетов данных на сервер 9, где данные принимаются и обрабатывается путем декомпозиции и композиции преимущественно с помощью программы, установленной на сервере 9. If even after this it is established that the document to be sent contains unknown elements that may be potentially harmful, and whose types, after conducting a comparative analysis according to the settings of the filtering unit, can be used to attack a browser or other software on the user side, filtering unit 1 sends such a document to the decomposition and composition unit 2. A document containing unknown potentially harmful elements is sent by sending the corresponding packet more of a set of data packets to server 9, where data is received and processed by decomposition and composition mainly using a program installed on server 9.
Декомпозиция полученного документа осуществляется путем его разбиения на множество отдельных элементов, содержащих неизвестные потенциально вредоносные элементы, из которых создают множество файлов с декомпозированными элементами. После декомпозиции полученного документа на отдельные составляющие элементы, осуществляется композиция набора файлов на основе функционального, инкрементального или полного набора следующим образом:  The decomposition of the resulting document is carried out by splitting it into many separate elements containing unknown potentially harmful elements, from which create many files with decomposed elements. After decomposition of the received document into individual constituent elements, a set of files is compiled based on a functional, incremental or complete set as follows:
- в случае выбора композиции на основе функционального набора, предварительно анализируют функциональные связи между декомпозированными элементами. При этом выявляют все элементы, которые связаны функционально друг с другом, и формируют из них функциональный блок. Количество файлов в функциональном наборе должно быть равно количеству функциональных блоков и одному базовому файлу, составленному на основе оригинального файла, из которого удалены все неизвестные потенциально вредоносные элементы; - in the case of choosing a composition based on a functional set, the functional relationships between decomposed elements are preliminarily analyzed. At the same time, all elements that are functionally connected with each other are revealed, and a functional block is formed from them. The number of files in the functional set must be equal to the number of functional blocks and one base file, compiled on the basis of the original file, from which all unknown potentially harmful elements were deleted;
- в случае выбора композиции на основе инкрементального набора, потенциально вредоносные элементы добавляют по одному в каждый последующий композиционный файл, количество которых равно количеству декомпозированных элементов плюс один базовый файл, составленный на основе оригинального файла, из которого удалены все неизвестные потенциально вредоносные элементы;  - in the case of choosing a composition based on an incremental set, potentially harmful elements are added one to each subsequent composition file, the number of which is equal to the number of decomposed elements plus one base file based on the original file from which all unknown potentially harmful elements were deleted;
в случае выбора полного композиционного набора, количество композированных файлов представляет собой набор композированных файлов из изначальных декомпозированных элементов, собранных таким образом, чтобы включать в себя все возможные уникальные комбинации декомпозированных элементов, (2ΛΝ-1), (два в степени от числа декомпозированных элементов без единицы) плюс один базовый файл; Ниже приведены примеры реализации способа в различных вариантах при осуществлении декомпозиции документа с последующей композицией. in the case of choosing a complete composite set, the number of composites is a set of composites from the original decomposed elements, assembled in such a way as to include all possible unique combinations of decomposed elements, (2 Λ Ν-1), (two to the power of the number of decomposed elements without a unit) plus one base file; The following are examples of the implementation of the method in various ways when implementing the decomposition of the document with the subsequent composition.
Например, изначальный файл, перехваченный блоком фильтрации.  For example, the original file intercepted by the filtering unit.
<html>  <html>
<head> <head>
<title>Clock in status bar</title> <title> Clock in status bar </title>
Ocript language="JavaScript "> Ocript language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} }
</script> </script>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
<script type="text/javascript "> <script type = "text / javascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
</body> </body>
</html> </html>
В данном файле имеются два неизвестных потенциально вредоносных элемента типа <script>. Первый из них:  There are two unknown potentially malicious <script> elements in this file. The first one is:
<script language="JavaScript "> <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} </script> } </script>
Второй из них Second of them
<script type="text/j avascript">  <script type = "text / j avascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
В результате декомпозиции исходного файла имеем два декомпозированных элемента плюс базовый композиционный файл.  As a result of decomposition of the source file, we have two decomposed elements plus the base composition file.
а) Базовый композиционный файл, представляющий собой основу для составления композиционного набора, в котором отсутствуют неизвестные потенциально вредоносные элементы:  a) The basic composition file, which is the basis for the compilation of the composition set, in which there are no unknown potentially harmful elements:
<html>  <html>
<head> <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) "> <body background = "ffffff" onLoad = "clock_status ()">
</body> </body>
</html> </html>
б) Первый из неизвестных потенциально вредоносных элементов:  b) The first of the unknown potentially harmful elements:
<script language="JavaScript ">  <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} }
</script>  </script>
в) Второй из неизвестных потенциально вредоносных элементов:  c) The second of the unknown potentially harmful elements:
<script type="text/javascript"> <script type = "text / javascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
Полученные декомпозированные потенциально вредоносные элементы в дальнейшем используют для составления различных композиционных наборов в следующих вариантах.  The resulting decomposed potentially harmful elements are subsequently used to compile various compositional kits in the following embodiments.
1) Функциональная композиция.  1) Functional composition.
Оба потенциально вредоносных элемента типа <script>, б) и в), функционально никак не связаны друг с другом, это независимо работающие скрипты, поэтому у нас получается три композиционных файла, созданных путём встраивания функциональных блоков в базовый композиционный файл, одного за другим, вставляемых в те позиции файлов композиционного набора, в которых они находились в оригинальном файле. Это необходимо для выявления вредоносных элементов и отделения их от безопасных. При этом получены три композиционных файла. Both potentially harmful elements such as <script>, b) and c) are functionally in no way connected with each other, they are independently working scripts, so we get three composition files created by embedding function blocks in the base composition file, one after the other, inserted into the positions of the files of the composition set in which they were in the original file. This is necessary to detect malware. elements and separating them from safe. In this case, three composite files were obtained.
Композиционный файл N°l :  Composition file N ° l:
<html>  <html>
<head> <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> </html>
Композиционный файл N°2:  Composition file N ° 2:
<html>  <html>
<head>  <head>
<title>Clock in status bar</title> <title> Clock in status bar </title>
<script language="JavaScript"> <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} }
</script> </script>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> </html>
Композиционный файл N°3:  Composition file N ° 3:
<html>  <html>
<head>  <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
<script type="text /j avascript "> <script type = "text / j avascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
</body> </body>
</html> </html>
2) Инкрементальная композиция. При наличии двух неизвестных потенциально вредоносных элементов, б) и в), создаём три композиционных файла путём добавления, один за другим, данных элементов к предьщущему композиционному файлу, вставляя их в те позиции, где они присутствовали в оригинальном файле. 2) Incremental composition. In the presence of two unknown potentially harmful elements, b) and c), we create three composite files by adding, one after the other, data elements to the previous composite file, inserting them at the positions where they were present in the original file.
Композиционный файл N°l : Composition file N ° l:
<html>  <html>
<head> <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> </html>
Композиционный файл N°2:  Composition file N ° 2:
<html>  <html>
<head>  <head>
<title>Clock in status bar</title> <title> Clock in status bar </title>
<script language="JavaScript "> <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} }
</script> </script>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> </html>
Композиционный файл Ne3:  Ne3 Composition File:
<html>  <html>
<head>  <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
<script language="JavaScript"> <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
} }
</head>  </head>
<body background="ffffff" onLoad="clock_status ( ) "> <body background = "ffffff" onLoad = "clock_status ()">
<script type="text/javascript">  <script type = "text / javascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script>  </script>
</body>  </body>
</html> </html>
3) Полный композиционный набор При обнаружении двух неизвестных потенциально вредоносных элементов, б) и в) создают соответственно следующий полный комбинационный набор из этих элементов с учётом базового композиционного файла, создаваемого путём полного комбинаторного перебора, такого, чтобы каждый файл из комбинаторного набора был уникален, и вставки неизвестных потенциально вредоносных элементов в те позиции, в которых они присугствовали в первоначальном файле. 3) Full compositional kit Upon detection of two unknown potentially harmful elements, b) and c) respectively create the following complete combination set of these elements taking into account the basic composition file created by complete combinatorial enumeration, such that each file from the combinatorial set is unique, and inserts of unknown potentially harmful elements to the positions in which they were present in the original file.
Композиционный файл 1 Composition File 1
<htmi> <htmi>
<head> - . <head> -.
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> '- .... . . ' .. · '·" -</html>'- ..... . '.. ·' · " -
Композиционный файл Г«2: Composition file G "2:
<html>  <html>
<head>  <head>
<title>Clcck in status bar</title> <title> Clcck in status bar </title>
<script language="JavaScript "> <script language = "JavaScript">
function clock__status ( ) { function clock__status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
}. ' .. ' } . ' . . ''
</script> </script>
</head> </head>
i  i
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
</script> </script>
</body> </body>
</html> </html>
Композиционный файл еЗ :  Composite file eZ:
<html>  <html>
<head> <head>
<title>Clock in status bar</title>  <title> Clock in status bar </title>
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
<script type="text/javascript "> <script type = "text / javascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
</body> </body>
</html> Композиционный файл N°4: </html> Composition file N ° 4:
<html>' <html>'
<head>  <head>
<title>Clock in status bar</title> <title> Clock in status bar </title>
<script language="JavaScript"> <script language = "JavaScript">
function clock_status ( ) { function clock_status () {
alert ("A wolf is in here!") alert ("A wolf is in here!")
}  }
</head> </head>
<body background="ffffff" onLoad="clock_status ( ) ">  <body background = "ffffff" onLoad = "clock_status ()">
<script type="text/javascript "> <script type = "text / javascript">
alert ("A rabbit is in here!") alert ("A rabbit is in here!")
</script> </script>
</body> </body>
</html> </html>
Появление 4 композиционных файлов вызвано необходимостью представления полного комбинаторного набора из 2 элементов, например: Базовый файл, базовый файл + элемент Nsl, базовый файл + элемент Ν_>2, базовый файл + элемент N°l + элемент N°2. Если таких элементов три, то тогда имеем: базовый файл, базовый файл + элемент N°l, базовый файл + элемент N°2, базовый файл + элемент N°3, базовый файл + элемент N°l + элемент N°2, базовый файл + элемент N°l + элемент N°3, базовый файл + элемент Ν°3 + элемент N°2, базовый файл + элемент N«l + элемент N°2+ элемент N°3. Указанное определяет выражение 2 в степени количества декомпозированных элементов без единицы плюс один базовый тестовый файл.  The appearance of 4 composite files is caused by the need to present a complete combinatorial set of 2 elements, for example: Base file, base file + element Nsl, base file + element Ν_> 2, base file + element N ° l + element N ° 2. If there are three such elements, then we have: a basic file, a basic file + element N ° l, a basic file + element N ° 2, a basic file + element N ° 3, a basic file + element N ° l + element N ° 2, basic file + element N ° l + element N ° 3, basic file + element Ν ° 3 + element N ° 2, basic file + element N «l + element N ° 2 + element N ° 3. The above determines expression 2 in the degree of the number of decomposed elements without a unit plus one basic test file.
После этого производят композицию функционального (1 - М+1), инкрементальных (1 - N+1) либо полного композиционного (1 - 2ΛΝ) наборов файлов из декомпозированных элементов, где М - число функциональных блоков, а Ν -число декомпозированных элементов. After this, the composition of the functional (1 - M + 1), incremental (1 - N + 1) or complete compositional (1 - 2 Λ Ν) file sets from decomposed elements is performed, where M is the number of functional blocks and Ν is the number of decomposed elements .
В дальнейшем составленные композиции набора файлов подвергают динамическому детектированию. Subsequently, compiled file set compositions are subjected to dynamic detection.
При этом в случае осуществления композиции на основе функционального набора, в качестве вредоносных элементов выявляют те функционально связанные блоки элементов из всех неизвестных системе, что получили вердикт «было зафиксировано срабатывание вредоносного кода» при анализе в блоке динамического детектирования 3. В случае инкрементального набора в качестве вредоносного элемента выявляют тот элемент, что вызвал вердикт «было зафиксировано срабатывание вредоносного кода» со стороны блока динамического детектирования. Moreover, in the case of a composition based on a functional set, those functionally related blocks of elements from all unknowns to the system are detected as malicious elements that received the verdict “the malicious code was triggered” when analyzed in the dynamic detection unit 3. In the case of incremental dialing, the element that causes the verdict “malicious code was triggered” by the dynamic detection unit is detected as a malicious element.
В случае полного композиционного набора, вредоносные элементы выявляют путём соотнесения вынесенных блоком динамического детектирования 2 вердиктов по каждому конкретному файлу композиционного набора. Поскольку каждый файл композиционного набора уникален, а все вместе они содержат все неизвестные потенциально вредоносные элементы, то в случае получения вердикта со стороны блока 2 на каждый файл полного композиционного набора в отдельности можно сразу выявить все элементы, являющиеся вредоносными. Также, возможен вариант получения файла, который лишён всех элементов, идентифицированных как вредоносные, для передачи его в блок фильтрации.  In the case of a complete compositional set, malicious elements are detected by correlating 2 verdicts handed down by the dynamic detection unit for each specific file of the compositional set. Since each file of the composition set is unique, and together they contain all unknown potentially harmful elements, if a verdict is received from block 2 on each file of the complete composition set individually, all elements that are harmful can be immediately identified. Also, it is possible to obtain a file that is devoid of all elements identified as malicious for transferring it to the filtering unit.
Если была использована инкрементальная композиция и вредоносное поведение было выявлено, начиная с некоторого файла, в котором использовался неизвестный потенциально вредоносный элемент, то такой идентифицированный элемент добавляется в базу вредоносных элементов, удаляется из композиционного набора, все протестированные неизвестные элементы перед ним добавляются в базу данных безопасных, после чего строится новый инкрементальный композиционный набор из оставшихся элементов, начиная с последнего безопасного, а файлы композиционного набора снова направляются для детектирования. Все указанные операции повторяются до того момента, когда все неизвестные элементы не окажутся идентифицированы и будут находиться в соответствующих базах данных. В случае, когда вредоносное поведение не зафиксировано ни для одного из файлов инкрементального набора, все неизвестные потенциально вредоносные элементы, входившие в набор, добавляются в глобальную базу безопасных элементов.  If incremental composition was used and malicious behavior was detected, starting with a file in which an unknown potentially harmful element was used, then such an identified element is added to the database of malicious elements, removed from the composition set, all tested unknown elements before it are added to the safe database , after which a new incremental compositional set of the remaining elements is built, starting with the last safe, and the files are compositional -set again sent for detection. All these operations are repeated until all unknown elements are identified and will be in the corresponding databases. In the case when no malicious behavior has been detected for any of the incremental set files, all unknown potentially harmful elements included in the set are added to the global database of safe elements.
При использовании полного композиционного набора осуществляется анализ полученных данных единым кадром, т.е. одномоментно идентифицируются все неизвестные потенциально опасные элементы файла с добавлением каждого из них, согласно вьшесенному вердикту, в глобальные базы вредоносных 7 и безопасных 6 элементов соответственно.  When using the full compositional set, the data obtained is analyzed in a single frame, i.e. all unknown potentially dangerous file elements are identified simultaneously with the addition of each of them, according to the verdict, to the global database of malicious 7 and safe 6 elements, respectively.
При использовании композиции на основе функционального набора, анализируются связанные функционально блоки внутри изначального документа. В дальнейшем, возможен и поэлементный анализ внутри функционального блока, получившего вердикт со стороны блока 3 динамического детектирования - «было зафиксировано срабатывание вредоносного кода». When using a composition based on a functional set, the functionally related blocks within the original document are analyzed. In the future, element-wise analysis within the functional block is also possible, received a verdict from block 3 of dynamic detection - "the operation of malicious code was detected."
Элементы в наборе могут быть модифицированы для устранения задержек срабатывания интерпретируемого кода. Например, в состав JavaScript может идти задержка на определённое время для того, чтобы пройти проверку блока 3 динамического детектирования, которая ограничена по времени, но у пользователя вредоносный элемент сработал бы. Для исключения такого варианта развития событий, можно модифицировать JavaScript-элемент для того, чтобы убрать из кода задержку по времени, осуществив это на этапе составления композиционного набора. Композиционный набор из декомпозированных элементов, полученных из оригинального файла, подвергают динамическому детектированию для выявления отклонений от нормального поведения клиентской программы, в которую загружают файл из композиционного набора для его интерпретации, в результате действий вредоносных элементов. При этом каждый файл из композиционного набора загружают с помощью специальной программы-загрузчика, реализованного в качестве программного обеспечения, установленного на сервере системы защиты и реализующего динамическое детектирование. Процесс динамического детектирования, необходим для того, чтобы произошло срабатывание вредоносного кода, содержащегося в файле, причем он должен сработать за время, которое отводится на детектирование. При этом должен быть зафиксирован факт срабатывания эксплойта, идентифицировав ход исполнения клиентского программного обеспечения, как аномальное. Для достижения поставленной задачи, блок динамического детектирования может быть выполнен в виде программного обеспечения, установленного на сервере системы защиты, которое составлено на основе программы для работы с соответствующим типом документов и имеющего либо эмулирующего уязвимости, связанные с интерпретацией подобного вида документов, работающего под контролем дополнительного программного слоя, задачей которого является выявление аномалий хода исполнения программного клиента либо его поведения.  Elements in the set can be modified to eliminate delays in the operation of the interpreted code. For example, JavaScript may be delayed for a certain time in order to pass the check of dynamic detection block 3, which is time limited, but the user would have worked a malicious element. To exclude this scenario, you can modify the JavaScript element in order to remove the time delay from the code by doing this at the stage of composing the composition set. A composite set of decomposed elements obtained from the original file is subjected to dynamic detection to detect deviations from the normal behavior of the client program into which the file is downloaded from the composite set for its interpretation as a result of the actions of malicious elements. At the same time, each file from the composition set is downloaded using a special loader program implemented as software installed on the server of the security system and implementing dynamic detection. The process of dynamic detection is necessary in order for the malicious code contained in the file to trigger, and it should work in the time it takes to detect. At the same time, the fact of the exploit’s response should be recorded, identifying the progress of the client software as abnormal. To achieve the task, the dynamic detection unit can be made in the form of software installed on the server of the security system, which is based on a program for working with the corresponding type of documents and having or emulating vulnerabilities associated with the interpretation of this type of documents, working under the control of additional a software layer whose task is to identify anomalies in the execution of the software client or its behavior.
Также, в качестве динамического детектора 3 возможен вариант использования специального программного обеспечения, установленного на сервере и эмулирующего, частично либо полностью, ход работы клиентского программного обеспечения, связанного с интерпретацией соответствующего типа файлов. Программа для работы с соответствующим типом документов, установленная на сервере и являющаяся частью блока динамического детектирования, способна работать с определенным типом файлов, интерпретируя его внутреннюю структуру таким образом, чтобы вызвать срабатывание вредоносного кода в файле в случае, если он там присутствует. Аномальный ход исполнения программного кода характеризуется отклонением путей выполнения инструкций клиентского программного обеспечения от предписанной разработчиками данного программного обеспечения для того, чтобы вредоносный код, содержащийся в той или иной форме в файле из композиционного набора, получил возможность быть исполненным так же, как и код клиентского программного обеспечения. Аномальное поведение клиентского программного обеспечения характеризуется использованием средств, предоставляемых операционной системой, для выполнения операций, не требующихся для интерпретации внутренней структуры файла из композиционного набора и, потому, выходящего за рамки предопределённого набора разрешённых действий и вызовов средств операционной системы для данного клиентского программного обеспечения. Also, as a dynamic detector 3, it is possible to use special software installed on the server and emulate, partially or completely, the progress of the client software associated with the interpretation of the corresponding file type. The program for working with the corresponding type of documents installed on the server and which is part of the dynamic detection unit is able to work with a certain type of file, interpreting its internal structure in such a way as to trigger the malicious code in the file if it is present there. The abnormal course of execution of program code is characterized by a deviation of the paths for executing client software instructions from those prescribed by the developers of this software so that malicious code contained in one form or another in a file from a composition set can be executed in the same way as client program code providing. The abnormal behavior of client software is characterized by the use of tools provided by the operating system to perform operations that are not required to interpret the internal structure of the file from the composition set and, therefore, go beyond the predefined set of allowed actions and calls of the operating system tools for this client software.
После осуществления декомпозиции и композиции, а также динамического детектирования, позволяющего отделить безопасные элементы от вредоносных, полученный файл, содержащий только безопасные элементы, возвращается в блок фильтрации 1. Блок фильтрации 1 также обновляет локальные базы безопасных 6 и вредоносных 7 элементов. Если блок фильтрации 1 имеет сопряжение с блоком автоматического лечения, (на чертеже не показан) то он направляет в блок автоматического лечения всю ту информацию о найденных вредоносных, элементах, которая будет необходима для однозначной идентификации вредоносного кода либо данных на самом веб-сайте либо смежных с ним ресурсах, которые передают документ с вредоносными элементами в первоначальном файле, ранее направлявшийся с сервера к пользователю.  After decomposition and composition, as well as dynamic detection, which allows to separate safe elements from malicious ones, the resulting file containing only safe elements is returned to filtering unit 1. Filtering unit 1 also updates the local databases of safe 6 and malicious 7 elements. If the filtering unit 1 is interfaced with the automatic treatment unit (not shown in the drawing), then it sends to the automatic treatment unit all the information about the detected malicious elements, which will be necessary for the unambiguous identification of the malicious code or data on the website itself or related with it are resources that transmit a document with malicious elements in the original file previously sent from the server to the user.
При этом блок фильтрации 1 осуществляет замену изначального исходящего документа на тот, что был передан обратно от блока декомпозиции и композиции 2, а также корректирует, если необходимо, исходящие мета-даняые пользовательского запроса, например, меняя размер исходящего файла с оригинального на новый, не содержащий вредоносных элементов. После того, как файл отправлен, блок фильтрации 1 обновляет обе локальные базы данных вредоносных 7 и безопасных 6 элементов, получая данные для их обновления из соответствующих глобальных баз данных 4 и 5. In this case, the filtering unit 1 replaces the original outgoing document with the one that was transferred back from the decomposition unit and composition 2, and also adjusts, if necessary, the outgoing metadata of the user’s request, for example, changing the size of the outgoing file from the original to a new one, not containing malicious elements. After the file is sent, filtering unit 1 updates both local malware databases 7 and safe 6 elements, receiving data for updating them from the corresponding global databases 4 and 5.
В случае идентификации одного либо нескольких вредоносных: элементов, они заносятся в базу как вредоносные, остальные - как безопасные. Те элементы, что были выявлены как вредоносные, удаляются из документа таким образом, чтобы документ открывался у пользователя без ошибок.  In case of identification of one or several malicious: elements, they are entered into the database as malicious, the rest as safe. Those elements that were identified as malicious are deleted from the document so that the document opens without errors for the user.
Для этого, полученный файл проходит проверку валидности файлов документа с удаленными вредоносными элементами. Проверка валидности осуществляется после удаления элементов, идентифицированных как вредоносные, но до передачи скорректированного документа в браузер 8.  To do this, the received file is tested for the validity of document files with deleted malicious elements. Validation is carried out after the removal of elements identified as malicious, but before the transmission of the adjusted document to browser 8.
Без проверки валидности файл может быть испорчен в результате удаления вредоносных элементов. При этом проверку валидности можно осуществлять и на этапе фильтрации после удаления известных вредоносных элементов из документа с последующей его корректировкой в случае необходимости. Проверка валидности документа осуществляется в блоке фильтрации 1, если из документа удалены вредоносные элементы. При этом происходит получение файла из блока фильтрации 1, проводится его проверка на валидность, согласно предопределенным правилам и стандартам, после чего, если есть необходимость, осуществляется корректировка файла согласно предопределенным алгоритмам и передача его обратно в блок фильтрации.  Without validation, the file may be corrupted as a result of the removal of malicious elements. At the same time, the validity check can also be carried out at the filtering stage after the removal of known malicious elements from the document with its subsequent adjustment if necessary. The validity of the document is checked in filtering unit 1 if malicious elements are removed from the document. In this case, the file is received from the filtering unit 1, it is checked for validity, according to predefined rules and standards, after which, if necessary, the file is adjusted according to predefined algorithms and transferred back to the filtering unit.
В случае обнаружения одного либо нескольких вредоносных элементов в исходящем документе, который был проанализирован блоком декомпозиции и композиции 2 на основании вердиктов, вынесенных блоком динамического детектирования 3 (например, «было зафиксировано срабатывание вредоносного кода»- «не было зафиксировано срабатывание вредоносного кода») для конкретного файла композиционного набора, который был в него загружен для проверки, те элементы, что были идентифицированы как вредоносные, заносятся блоком декомпозиции и композиции 2 в глобальную базу данных 4 вредоносных элементов. Указанная база данных реализована в качестве программного обеспечения и установлена на сервере 9 таким образом, чтобы в дальнейшем подобные элементы в исходящем трафике могли однозначно идентифицироваться как вредоносные. Все остальные неизвестные потенциально вредоносные элементы идентифицируются как безопасные, и после декомпозиции и композиции записи о новых элементах, идентифицированных как безопасные в режиме «только запись», включают в глобальную базу данных безопасных элементов 5 таким образом, чтобы в дальнейшем подобные элементы в исходящем трафике могли однозначно интерпретироваться как безопасные. If one or more malicious elements are detected in the outgoing document, which was analyzed by the decomposition and composition unit 2 based on the verdicts rendered by the dynamic detection unit 3 (for example, “the malicious code was detected” - “the malicious code was not detected”) for of a particular composition set file that was loaded into it for verification, those elements that were identified as malicious are entered by the decomposition and composition unit 2 in the glo ballroom database of 4 malicious elements. The specified database is implemented as software and installed on server 9 so that in the future such elements in outgoing traffic could be unambiguously identified as malicious. All other unknown potentially harmful elements are identified as safe, and after decomposition and composition, records of new elements identified as safe in the "write-only" mode are included in global database of safe elements 5 so that in the future such elements in outgoing traffic can be unambiguously interpreted as safe.
Исходящий документ после динамического детектирования перекомпоновывается таким образом, чтобы исключить из его структуры те элементы, что были идентифицированы как вредоносные. После этого документ передаётся в систему фильтрации 1 , которая принимает данный файл и проверяет его на валидность, после чего готовит документ для передачи в браузер 8 пользователю, модифицируя в случае необходимости мета-данные в оригинальном ответе на запрос браузера клиента. Далее осуществляется замена оригинального исходящего файла на новый, вследствие чего пользователю направляется безопасный вариант запрошенного изначального документа.  After dynamic detection, the outgoing document is rearranged in such a way as to exclude from its structure those elements that have been identified as malicious. After that, the document is transferred to the filtering system 1, which receives the given file and checks its validity, after which it prepares the document for transfer to the browser 8 to the user, modifying, if necessary, meta-data in the original response to the client’s browser request. Next, the original outgoing file is replaced with a new one, as a result of which a safe version of the requested original document is sent to the user.
При выявлении вредоносных элементов реализуют следующее.  When malicious elements are detected, the following is implemented.
Командный интерпретатор исполняет код на сайте, расположенный в большом количестве файлов, которые оперируют также значениями из локальных или расположенных удалённо на других серверах баз данных. Каждая операция, исполняемая командным интерпретатором, заносится в лог, а также каждое значение входящих и исходящих параметров для данной операции. Например, если идёт вредоносная вставка в HTML код странички, то данная вставка начинается в том интерпретируемом файле, что получен для выдачи пользователю, с позиции 444. При этом поднимают лог командного интерпретатора для того, чтобы идентифицировать тот набор команд на сайте, который вставил в файл этот вредоносный элемент. Предположим, это файл do_not_do_eval.php, строка 34, это команда «еуа1(«что-то там внутри»)». В таком случае лицо, принимающее решения на данном веб-сайте, информируется о том, что команда в строке 34 «еуа1(«что-то там внутри»)» из файла do_not_do_eval.php является вредоносным кодом на сайте, с предложением её удалить.  The shell executes code on a site located in a large number of files that also operate with values from local or located remotely on other database servers. Each operation executed by the command interpreter is logged, as well as each value of the incoming and outgoing parameters for this operation. For example, if there is a malicious insertion into the HTML code of the page, then this insertion begins in the interpreted file that was received for the user, from position 444. At the same time, the shell of the command interpreter is raised in order to identify the set of commands on the site that it inserted into file this malicious element. Suppose this is the file do_not_do_eval.php, line 34, this is the command "eua1 (" something is inside ")." In this case, the decision-maker on this website is informed that the command on line 34 “eua1 (“ something is inside ”) from the do_not_do_eval.php file is malicious code on the site, with a proposal to delete it.
В случае наличия блока истории изменений файлов на сервере 9 и блока сбора логов командного интерпретатора и сервера, блок автоматизированного лечения, в результате анализа данных о работе сервера и истории изменения интересующего нас файла do_not_do_eval.php на предмет появления в нём строчки «еуа1(«что-то там внутри»)», блок автоматизированного лечения также может вынести вердикт по поводу того, какие именно средства использовал злоумышленник для инфицирования веб-сайта, и также предоставить лицу, принимающему решения на веб-сайте, заключение о шагах, которые нужно принять для предотвращения подобных инцидентов в будущем. If there is a block for the history of changes to files on server 9 and a block for collecting logs of the command interpreter and server, an automated treatment block, as a result of analyzing data on the server’s operation and the history of changes in the do_not_do_eval.php file we are interested in, for the line “eua1 something inside ")", the automated treatment unit can also reach a verdict on exactly what means the attacker used to infect the website, and also provide the decision maker on the website, a conclusion on the steps to be taken to prevent similar incidents in the future.
Известно, что иногда автоматизированная система не сможет сама произвести лечение в случаях, например, новых видов заражения сервера, но она сможет подсказать персоналу сайта (или приглашённым специалистам), где именно нужно искать причину проблемы, что немаловажно, так как на сайте может быть огромное количество файлов с командами и данными, а также многие миллионы записей в сопряжённых базах данных.  It is known that sometimes an automated system will not be able to treat itself in cases of, for example, new types of server infections, but it will be able to tell the site staff (or invited specialists) where exactly you need to look for the cause of the problem, which is important, since there can be a huge amount on the site the number of files with commands and data, as well as many millions of records in related databases.
Также, во всех режимах можно выявлять атаки типа «перенаправление пользователя», для этого необходимо добавить к анализу исходящего с сервера документа также и анализ мета-данных, принимаемых на сервер (например, User Agent и IP-адрес) и отсылаемых с сервера обратно (например, код статуса и адрес перенаправления). Возможно динамическое перенаправление пользователя осуществлять с помощью тегов и данных внутри выдаваемой странички, иногда- через мета-данные, вьщавая ответ сервера «301» (переадресация 301) с адресом перенаправления. Можно анализировать выдаваемый код на предмет вердикта детектора «переадресация по адресу, не связанного с оригинальным сайтом», можно анализировать мета- данные 301-го ответа сервера для вынесения вердикта «переадресация по адресу, не связанному с оригинальным сайтом».  Also, in all modes, it is possible to detect attacks such as "user redirection", for this it is necessary to add to the analysis of the outgoing document from the server also the analysis of meta-data received on the server (for example, User Agent and IP address) and sent from the server back ( e.g. status code and redirect address). It is possible to dynamically redirect the user using tags and data inside the issued page, sometimes through meta-data, getting the server response “301” (301 redirect) with the redirect address. You can analyze the issued code for the verdict of the “redirect to an address not associated with the original site” detector; you can analyze the metadata of the server’s 301th response to render the verdict “redirect to an address not associated with the original site”.
Промышленная применимость Industrial applicability
Заявляемое изобретение может найти широкое применение для идентификации, обнаружения и анализа вредоносных элементов на веб-сайте и в трафике. При этом значительно повышается достоверность обнаружения вредоносных программ и элементов и снижаются затраты времени на их обнаружение. The claimed invention can be widely used to identify, detect and analyze malicious elements on a website and in traffic. At the same time, the reliability of detection of malicious programs and elements is significantly increased and the time required to detect them is reduced.

Claims

ФОРМУЛА FORMULA
1. Способ обнаружения вредоносных программ и элементов, включающий анализ программы или сообщений, которые удовлетворяют критерию или группе критериев подозрительности и создание сообщения, указывающего на результат обнаружения вредоносных элементов, отличающийся тем, что в сервер, браузер или канал коммуникаций между ними встраивают систему фильтрации, которая осуществляет анализ передаваемых документов с учетом базы данных, включающей данные об известных безопасных элементах, и в случае, если в документе присутствуют потенциально вредоносные элементы, отсутствующие в базе данных безопасных элементов, осуществляют декомпозицию полученного документа на множество декомпозированных элементов, содержащих потенциально вредоносные элементы, из которых создают файлы, число которых коррелирует с числом декомпозированных элементов, после чего производят композицию одного либо нескольких наборов файлов из декомпозированных элементов, которые подвергают динамическому детектированию для отслеживания отклонений от нормального поведения клиентской программы в результате действий вредоносных элементов, а передачу документа в браузер осуществляют без выявленных вредоносных элементов. 1. A method for detecting malicious programs and elements, including analyzing a program or messages that satisfy a criterion or group of criteria for suspiciousness and creating a message indicating the result of detection of malicious elements, characterized in that a filtering system is built into the server, browser or communication channel between them, which analyzes the transmitted documents taking into account a database including data on known safe elements, and if the document contains potentially spawning elements that are not in the database of safe elements decompose the resulting document into many decomposed elements containing potentially harmful elements, from which they create files, the number of which correlates with the number of decomposed elements, and then compose one or more sets of files from decomposed elements, which are dynamically detected to track deviations from the normal behavior of the client program as a result at the expense of the actions of malicious elements, and the transfer of the document to the browser is carried out without any detected malicious elements.
2. Способ по п.1, отличающийся тем, что при обнаружении вредоносных элементов включают их в базу данных вредоносных элементов, а остальные элементы в базу данных безопасных элементов,  2. The method according to claim 1, characterized in that when detecting malicious elements include them in the database of malicious elements, and the remaining elements in the database of safe elements,
3. Способ по п.1, отличающийся тем, что при композиции осуществляют функциональный, или инкрементальный, или полный композиционный набор файлов из декомпозированных элементов.  3. The method according to claim 1, characterized in that when the composition is carried out a functional, or incremental, or a complete compositional set of files from decomposed elements.
4. Способ по п.З, отличающийся тем, что при композиции на основе функционального набора, анализируют функциональные связи между декомпозированными элементами и формируют функциональные блоки, каждый из которых содержит декомпозированные элементы, связанные функционально друг с другом.  4. The method according to claim 3, characterized in that, when composing on the basis of a functional set, the functional relationships between decomposed elements are analyzed and functional blocks are formed, each of which contains decomposed elements that are functionally connected to each other.
5. Способ по п.4, отличающийся тем, что количество композиционных файлов, сформированных на основе функционального набора, равно количеству функциональных блоков и одному базовому файлу, составленному на основе оригинального файла, из которого удалены все неизвестные потенциально вредоносные элементы. 5. The method according to claim 4, characterized in that the number of composite files generated on the basis of the functional set is equal to the number of functional blocks and one base file composed on the basis of the original file from which all unknown potentially harmful elements have been removed.
6. Способ по п.З, отличающийся тем, что количество композиционных файлов, сформированных на основе инкрементального набора, равно количеству декомпозированных элементов и одному базовому файлу, составленному на основе оригинального файла, из которого удалены все потенциально вредоносные элементы. 6. The method according to claim 3, characterized in that the number of composite files generated on the basis of an incremental set is equal to the number of decomposed elements and one base file composed on the basis of the original file from which all potentially harmful elements have been removed.
7. Способ по п.З, отличающийся тем, что при композиции на основе полного комбинационного набора композиционные файлы формируют на основе полного комбинаторного перебора потенциально вредоносных элементов.  7. The method according to p. 3, characterized in that when compositing based on a complete combination set, composite files are generated based on a complete combinatorial search of potentially harmful elements.
8. Способ по п.1 , отличающийся тем, что при обнаружении вредоносных элементов дополнительно осуществляют автоматическое лечение сайта.  8. The method according to claim 1, characterized in that when the detection of malicious elements additionally carry out automatic treatment of the site.
9. Способ по п.1 , отличающийся тем, что проверку исходящего с сервера документа осуществляют совместно с проверкой мета-данных, принимаемых на сервер, например, User Agent и IP-адрес, и направляемых с сервера обратно, например, код статуса и адрес перенаправления.  9. The method according to claim 1, characterized in that the verification of the document outgoing from the server is carried out together with the verification of meta-data received on the server, for example, User Agent and IP address, and sent back from the server, for example, status code and address redirects.
10. Способ по п.1, отличающийся тем, что детектирование осуществляют с помощью программ, которые могут обеспечить возможность срабатывания вредоносных кодов в процессе работы с соответствующим типом интерпретируемых файлов, например, уязвимые версии Microsoft Office для открытия DOC(X), Adobe Acrobat Reader для PDF, Adobe Flash Player для SWF. 10. The method according to claim 1, characterized in that the detection is carried out using programs that can provide the ability to trigger malicious codes in the process of working with the corresponding type of interpreted files, for example, vulnerable versions of Microsoft Office to open DOC (X), Adobe Acrobat Reader for PDF, Adobe Flash Player for SWF.
11. Способ по п.1, отличающийся тем, что для отслеживания отклонений от нормального поведения клиентской программы, на ее вход подаются файлы из композиционного набора. 11. The method according to claim 1, characterized in that for tracking deviations from the normal behavior of the client program, files from the composition set are fed to its input.
12. Способ по п.1 , отличающийся тем, что осуществляют проверку валидности файлов документа с удаленными вредоносными элементами.  12. The method according to claim 1, characterized in that they verify the validity of the document files with the deleted malicious elements.
PCT/RU2016/000773 2015-11-20 2016-11-14 Method for detecting malicious programs and elements WO2017086837A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2015150022A RU2613535C1 (en) 2015-11-20 2015-11-20 Method for detecting malicious software and elements
RU2015150022 2015-11-20

Publications (1)

Publication Number Publication Date
WO2017086837A1 true WO2017086837A1 (en) 2017-05-26

Family

ID=58458484

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2016/000773 WO2017086837A1 (en) 2015-11-20 2016-11-14 Method for detecting malicious programs and elements

Country Status (2)

Country Link
RU (1) RU2613535C1 (en)
WO (1) WO2017086837A1 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2634211C1 (en) 2016-07-06 2017-10-24 Общество с ограниченной ответственностью "Траст" Method and system of protocols analysis of harmful programs interaction with control centers and detection of computer attacks
RU2649793C2 (en) 2016-08-03 2018-04-04 ООО "Группа АйБи" Method and system of detecting remote connection when working on web resource pages
RU2634209C1 (en) 2016-09-19 2017-10-24 Общество с ограниченной ответственностью "Группа АйБи ТДС" System and method of autogeneration of decision rules for intrusion detection systems with feedback
RU2671991C2 (en) 2016-12-29 2018-11-08 Общество с ограниченной ответственностью "Траст" System and method for collecting information for detecting phishing
RU2637477C1 (en) 2016-12-29 2017-12-04 Общество с ограниченной ответственностью "Траст" System and method for detecting phishing web pages
RU2689816C2 (en) 2017-11-21 2019-05-29 ООО "Группа АйБи" Method for classifying sequence of user actions (embodiments)
RU2680736C1 (en) * 2018-01-17 2019-02-26 Общество с ограниченной ответственностью "Группа АйБи ТДС" Malware files in network traffic detection server and method
RU2668710C1 (en) 2018-01-17 2018-10-02 Общество с ограниченной ответственностью "Группа АйБи ТДС" Computing device and method for detecting malicious domain names in network traffic
RU2677368C1 (en) 2018-01-17 2019-01-16 Общество С Ограниченной Ответственностью "Группа Айби" Method and system for automatic determination of fuzzy duplicates of video content
RU2677361C1 (en) 2018-01-17 2019-01-16 Общество с ограниченной ответственностью "Траст" Method and system of decentralized identification of malware programs
RU2676247C1 (en) 2018-01-17 2018-12-26 Общество С Ограниченной Ответственностью "Группа Айби" Web resources clustering method and computer device
RU2681699C1 (en) 2018-02-13 2019-03-12 Общество с ограниченной ответственностью "Траст" Method and server for searching related network resources
RU2708508C1 (en) 2018-12-17 2019-12-09 Общество с ограниченной ответственностью "Траст" Method and a computing device for detecting suspicious users in messaging systems
RU2701040C1 (en) 2018-12-28 2019-09-24 Общество с ограниченной ответственностью "Траст" Method and a computer for informing on malicious web resources
WO2020176005A1 (en) 2019-02-27 2020-09-03 Общество С Ограниченной Ответственностью "Группа Айби" Method and system for identifying a user according to keystroke dynamics
RU2728497C1 (en) 2019-12-05 2020-07-29 Общество с ограниченной ответственностью "Группа АйБи ТДС" Method and system for determining belonging of software by its machine code
RU2728498C1 (en) 2019-12-05 2020-07-29 Общество с ограниченной ответственностью "Группа АйБи ТДС" Method and system for determining software belonging by its source code
RU2743974C1 (en) 2019-12-19 2021-03-01 Общество с ограниченной ответственностью "Группа АйБи ТДС" System and method for scanning security of elements of network architecture
SG10202001963TA (en) 2020-03-04 2021-10-28 Group Ib Global Private Ltd System and method for brand protection based on the search results
US11475090B2 (en) 2020-07-15 2022-10-18 Group-Ib Global Private Limited Method and system for identifying clusters of affiliated web resources
RU2743619C1 (en) 2020-08-06 2021-02-20 Общество с ограниченной ответственностью "Группа АйБи ТДС" Method and system for generating the list of compromise indicators
RU2762079C1 (en) * 2021-03-24 2021-12-15 Федеральное государственное бюджетное образовательное учреждение высшего образования "Владивостокский государственный университет экономики и сервиса" (ВГУЭС) Method for detecting malware and malware components
US11947572B2 (en) 2021-03-29 2024-04-02 Group IB TDS, Ltd Method and system for clustering executable files
NL2030861B1 (en) 2021-06-01 2023-03-14 Trust Ltd System and method for external monitoring a cyberattack surface

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2214623C2 (en) * 2000-12-29 2003-10-20 Купреенко Сергей Витальевич Computer network with internet screen and internet screen
EA200500347A1 (en) * 2002-08-14 2005-08-25 Соспита Ас A METHOD FOR CREATING AND PROCESSING DATA FLOWS THAT CONTAINS ENCRYPTED AND DECRYPTED DATA
RU91202U1 (en) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" UNKNOWN Malicious Software Detection System
RU2417429C2 (en) * 2006-03-24 2011-04-27 ЭйВиДжи ТЕКНОЛОДЖИЗ СиУай ЛИМИТЕД Protection from exploitation of software vulnerability
RU2526716C2 (en) * 2008-08-28 2014-08-27 Авг Текнолоджиз Сз, С.Р.О. Heuristic code analysis method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7287279B2 (en) * 2004-10-01 2007-10-23 Webroot Software, Inc. System and method for locating malware
US7962756B2 (en) * 2006-10-31 2011-06-14 At&T Intellectual Property Ii, L.P. Method and apparatus for providing automatic generation of webpages
US20100058474A1 (en) * 2008-08-29 2010-03-04 Avg Technologies Cz, S.R.O. System and method for the detection of malware
US8677481B1 (en) * 2008-09-30 2014-03-18 Trend Micro Incorporated Verification of web page integrity
RU94016U1 (en) * 2009-12-02 2010-05-10 Закрытое акционерное общество "Лаборатория Касперского" OBFUSIONED MALICIOUS SOFTWARE DETECTION DETECTION SYSTEM
RU2446459C1 (en) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" System and method for checking web resources for presence of malicious components
US8832836B2 (en) * 2010-12-30 2014-09-09 Verisign, Inc. Systems and methods for malware detection and scanning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2214623C2 (en) * 2000-12-29 2003-10-20 Купреенко Сергей Витальевич Computer network with internet screen and internet screen
EA200500347A1 (en) * 2002-08-14 2005-08-25 Соспита Ас A METHOD FOR CREATING AND PROCESSING DATA FLOWS THAT CONTAINS ENCRYPTED AND DECRYPTED DATA
RU2417429C2 (en) * 2006-03-24 2011-04-27 ЭйВиДжи ТЕКНОЛОДЖИЗ СиУай ЛИМИТЕД Protection from exploitation of software vulnerability
RU2526716C2 (en) * 2008-08-28 2014-08-27 Авг Текнолоджиз Сз, С.Р.О. Heuristic code analysis method
RU91202U1 (en) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" UNKNOWN Malicious Software Detection System

Also Published As

Publication number Publication date
RU2613535C1 (en) 2017-03-16

Similar Documents

Publication Publication Date Title
RU2613535C1 (en) Method for detecting malicious software and elements
RU2680736C1 (en) Malware files in network traffic detection server and method
US11562068B2 (en) Performing threat detection by synergistically combining results of static file analysis and behavior analysis
US9596255B2 (en) Honey monkey network exploration
US9294486B1 (en) Malware detection and analysis
Shabtai et al. F-sign: Automatic, function-based signature generation for malware
US7934261B1 (en) On-demand cleanup system
Rathnayaka et al. An efficient approach for advanced malware analysis using memory forensic technique
Wang et al. Jsdc: A hybrid approach for javascript malware detection and classification
CN103279710B (en) Method and system for detecting malicious codes of Internet information system
CN105491053A (en) Web malicious code detection method and system
CN107911355B (en) Website backdoor utilization event identification method based on attack chain
US11973780B2 (en) Deobfuscating and decloaking web-based malware with abstract execution
RU2677361C1 (en) Method and system of decentralized identification of malware programs
WO2013082437A1 (en) Methods and apparatus for control and detection of malicious content using a sandbox environment
CN108369541B (en) System and method for threat risk scoring of security threats
WO2017056121A1 (en) Method for the identification and prevention of client-side web attacks
Xu et al. PeerPress: utilizing enemies' P2P strength against them
Abuzaid et al. An efficient trojan horse classification (ETC)
CN105791250B (en) Application program detection method and device
Wang et al. {MetaSymploit}:{Day-One} Defense against Script-based Attacks with {Security-Enhanced} Symbolic Analysis
Satrya et al. The detection of 8 type malware botnet using hybrid malware analysis in executable file windows operating systems
Takata et al. Minespider: Extracting urls from environment-dependent drive-by download attacks
Shabtai et al. Monitoring, analysis, and filtering system for purifying network traffic of known and unknown malicious content
Khan et al. A dynamic method of detecting malicious scripts using classifiers

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16866737

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16866737

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 26/11/2018)

122 Ep: pct application non-entry in european phase

Ref document number: 16866737

Country of ref document: EP

Kind code of ref document: A1