Система и способ обнаружения вредоносных программ с алгоритмом генерации доменных имен и систем, зараженных такими вредоносными программами - заявка 2017101889 на патент на изобретение в РФ

1. По меньшей мере один машиночитаемый носитель, на котором хранятся команды, содержащие команды, которые при исполнении вызывают выполнение программируемым устройством:
идентификации доменного имени путем отслеживания сетевой активности;
идентификации части доменного имени в качестве имени;
вычисления балла лексической сложности для имени; и
определения, сгенерировано ли доменное имя алгоритмом (DGA) генерации доменных имен, на основе по меньшей мере балла лексической сложности.
2. Машиночитаемый носитель по п. 1, в котором команды для идентификации части доменного имени в качестве имени дополнительно вызывают выполнение программируемым устройством:
идентификации и удаления домена (TLD) верхнего уровня;
удаления домена (FLD) первого уровня в ответ на определение того, что длина FLD меньше заданного порогового значения; и
удаления предлога, если определено, что доменное имя начинается с предлога; и
идентификации оставшейся части доменного имени в качестве имени.
3. Машиночитаемый носитель по п. 1 или 2, в котором предлог содержит символы www.
4. Машиночитаемый носитель по п. 2, в котором команды для идентификации части доменного имени в качестве имени дополнительно вызывают выполнение программируемым устройством удаления FLD, если определено, что длина FLD меньше или равна заданному пороговому значению.
5. Машиночитаемый носитель по п. 1 или 2, в котором команды для вычисления балла лексической сложности для имени дополнительно содержат команды, вызывающие выполнение программируемым устройством:
анализа имени для идентификации допустимых слов;
создания комбинации допустимых слов;
вычисления общей длины идентифицированных допустимых слов;
вычитания общей длины из длины имени для определения длины оставшейся части; и
вычисления балла лексической сложности путем деления длины оставшейся части на длину имени.
6. Машиночитаемый носитель по п. 5, в котором команды для определения, является ли доменное имя сгенерированным с помощью DGA, дополнительно содержат команды, вызывающие выполнение программируемым устройством:
определения, указывает ли ответ сервера (DNS) доменных имен для доменного имени на неудачное прохождение процедуры разрешения;
добавления доменного имени в список несуществующих доменов, если определено, что балл лексической сложности меньше порогового значения лексической сложности;
вычисления временной разности между временем первой записи, сделанной в списке несуществующих доменов, и временем текущей записи;
определения количества записей в списке несуществующих доменов; и
идентификации доменного имени в качестве доменного имени, сгенерированного DGA, если временная разность меньше заданного порогового значения времени и количество записей больше заданного порогового значения счетчика.
7. Машиночитаемый носитель по п. 6, в котором команды для определения, является ли доменное имя сгенерированным с помощью DGA, дополнительно содержат команды, вызывающие выполнение программируемым устройством неидентификации доменного имени в качестве доменного имени, сгенерированного DGA, если доменное имя идентифицировано в списке благонадежных доменных имен.
8. Машиночитаемый носитель по п. 6, в котором команды для определения, является ли доменное имя сгенерированным с помощью DGA, дополнительно содержат команды, вызывающие выполнение программируемым устройством неидентификации доменного имени в качестве доменного имени, сгенерированного DGA, если длина доменного имени больше заданного порогового значения.
9. Машиночитаемый носитель по п. 6, в котором команды для определения, является ли доменное имя сгенерированным с помощью DGA, дополнительно содержат команды, вызывающие выполнение программируемым устройством создания нового списка несуществующих доменов, если определено, что вычисленное количество уровней для доменного имени ранее не встречалось.
10. Сетевое устройство, характеризующееся тем, что выполнено с возможностью осуществления анализа мультимедийных файлов, при этом сетевое устройство содержит:
процессор;
память, связанную с процессором; и
программное обеспечение, хранящееся в памяти и содержащее команды, которые при исполнении вызывают выполнение процессором:
определения, находится ли доменное имя, для которого процедура разрешения закончилась неудачей, в списке отслеживания IP источников;
вычисления возраста доменного имени, когда длина доменного имени находится в заданном диапазоне и балл лексической сложности доменного имени меньше среднего балла лексической сложности; и
определения, меньше ли возраст заданного значения; и
идентификации доменного имени в качестве домена управления и контроля, когда возраст меньше заданного значения.
11. Сетевое устройство по п. 10, в котором команды при исполнении вызывают выполнение процессором вычисления балла лексической сложности.
12. Сетевое устройство по п. 10, в котором заданный диапазон находится между наименьшей длиной доменного имени и наибольшей длиной доменного имени среди доменных имен, перечисленных в заданном списке.
13. Сетевое устройство по п. 12, в котором заданный список является списком имен несуществующих доменов (NX).
14. Сетевое устройство по п. 10, в котором команды при исполнении вызывают выполнение процессором получения ответа сервера (DNS) доменных имен для определения завершилась ли неудачей процедура разрешения доменного имени.
15. Способ идентификации вредоносной программы с алгоритмом (DGA) генерации доменных имен, содержащий этапы, на которых:
идентифицируют доменное имя путем отслеживания активности сети с помощью программируемого устройства;
идентифицируют часть доменного имени в качестве имени;
вычисляют балл лексической сложности для имени; и
определяют, сгенерировано ли доменное имя с помощью DGA, на основе по меньшей мере балла лексической сложности.
16. Способ по п. 15, в котором на этапе идентификации части доменного имени в качестве имени:
идентифицируют и удаляют домен (TLD) верхнего уровня;
удаляют домен (FLD) первого уровня, если определено, что длина FLD меньше заданного порогового значения; и
удаляют предлог, если определено, что доменное имя начинается с предлога;
и идентифицируют оставшуюся часть доменного имени в качестве имени.
17. Способ по п. 16, в котором на этапе идентификации части доменного имени в качестве имени: удаляют FLD, если определено, что длина FLD меньше или равна заданному пороговому значению.
18. Способ по п. 15, в котором на этапе вычисления балла лексической сложности для имени:
анализируют имя для идентификации допустимых слов;
создают комбинацию допустимых слов;
вычисляют общую длину идентифицированных допустимых слов;
вычитают общую длину из длины имени для определения длины оставшейся части; и
вычисляют балл лексической сложности путем деления длины оставшейся части на длину имени.
19. Способ по п. 15, в котором на этапе определения, сгенерировано ли доменное имя именем с помощью DGA:
определяют, указывает ли ответ сервера (DNS) доменных имен для доменного имени на неудачное прохождение процедуры разрешения;
добавляют доменное имя в список несуществующих доменных имен, если определено, что балл лексической сложности меньше порогового значения лексической сложности;
вычисляют временную разность между временем первой записи, сделанной в списке несуществующих доменных имен, и временем текущей записи;
определяют количество записей в списке несуществующих доменов; и
идентифицируют доменное имя в качестве имени, сгенерированного DGA, если временная разность меньше заданного порогового значения времени и количество записей больше заданного порогового значения счетчика.
20. Способ по п. 19, в котором на этапе определения, сгенерировано ли доменное имя с помощью DGA: создают новый список несуществующих доменов, если определено, что вычисленное количество уровней доменного имени ранее не встречалось.
21. Сетевое устройство, выполненное с возможностью осуществления анализа мультимедийных файлов, при этом сетевое устройство содержит:
средство для определения, находится ли доменное имя, для которого процедура разрешения закончилась неудачей, в списке отслеживания IP источников;
средство для вычисления возраста доменного имени, когда длина доменного имени находится в заданном диапазоне и балл лексической сложности доменного имени меньше среднего балла лексической сложности;
средство для определения, меньше ли возраст заданного значения; и
средство для идентификации доменного имени в качестве домена управления и контроля, когда возраст меньше определенного значения.
22. Сетевое устройство по п. 21, дополнительно содержащее средство для вычисления балла лексической сложности.
23. Сетевое устройство по п. 21, в котором заданный диапазон находится между наименьшей длиной доменного имени и наибольшей длиной доменного имени среди доменных имен, перечисленных в заданном списке.
24. Сетевое устройство по п. 21, в котором заданный список является списком несуществующих доменных имен (NX).
25. Сетевое устройство по п. 21, в котором команды при исполнении вызывают выполнение процессором получения ответа DNS для определения, завершена ли неудачей процедура разрешения доменного имени.
Наверх