Patent RU-2624552-C2 (RU)
Title: Способ обнаружения вредоносных файлов, исполняемых с помощью стековой виртуальной машины
Inventor: Ivanov Anton Mikhajlovich
IPC: G06F21/56
Filed: 2015-06-30
Granted: 2017-07-04
Abstract: Изобретение предназначено для обнаружения вредоносных файлов, исполняемых с помощью стековой виртуальной машины. Технический результат настоящего изобретения заключается в обнаружении вредоносных файлов, исполняемых с помощью стековой виртуальной машины, работающей на компьютерной системе, за счет создания и использования кластеров данных анализируемых файлов с использованием данных из кластеров, найденных в базе кластеров безопасных файлов, для обеспечения безопасности компьютерной системы. Способ обнаружения вредоносных файлов, исполняемых с помощью стековой виртуальной машины, в которой все операнды выполняемых функций размещаются лишь в одной структуре данных, в качестве которой выступает стек виртуальной машины, в котором: а) выделяют данные по меньшей мере из одного файла, исполняемого с помощью стековой виртуальной машины, при этом в качестве данных, выделяемых из файла, исполняемого с помощью стековой виртуальной машины, выступают по меньшей мере: параметры секции файла, в качестве которых выступают по меньшей мере: код секции, название секции, тип заголовка секции, смещение на данные в секции, размер данных секции; параметры функции, выполняемой с помощью стековой виртуальной машины, в качестве которых выступают по меньшей мере: индекс тела функции, позиция и длина кода функции в секции, индекс описателя функции, максимальная глубина стека при исполнении функции, количество используемых функцией локальных переменных, название функции, количество операндов, возвращаемый тип данных; б) осуществляют поиск в базе кластеров безопасных файлов по данным, выделенным на этапе а), по меньшей мере одного кластера, который содержит: значение одного из параметров секций файла, превышающее заданный порог; значение одного из параметров функций, выполняемых с помощью стековой виртуальной машины, превышающее заданный порог; в) у каждого найденного на этапе б) кластера выделяют данные, при этом в качестве данных выступают по меньшей мере: параметры секции файла, такие как: код секции, название секции, тип заголовка секции, смещение на данные в секции, размер данных секции; параметры функции, выполняемой с помощью стековой виртуальной машины, такие как: индекс тела функции, позиция и длина кода функции в секции, индекс описателя функции, максимальная глубина стека при исполнении функции, количество используемых функцией локальных переменных, название функции, количество операндов, возвращаемый тип данных; г) создают при помощи правил кластеризации по меньшей мере один кластер из выделенных на этапе а) данных за исключением данных, которые соответствуют данным, выделенным на этапе в); д) вычисляют контрольную сумму по меньшей мере одного созданного кластера; е) осуществляют поиск вычисленной контрольной суммы в базе контрольных сумм кластеров вредоносных файлов; ж) выносят вердикт об обнаружении по меньшей мере одного вредоносного файла в случае обнаружения в результате поиска, осуществленного на этапе е), в базе контрольных сумм кластеров вредоносных файлов вычисленной контрольной суммы. 2 з.п. ф-лы, 3 ил.