RU2638710C1 - Способы обнаружения вредоносных элементов веб-страниц - Google Patents

Способы обнаружения вредоносных элементов веб-страниц Download PDF

Info

Publication number
RU2638710C1
RU2638710C1 RU2016139468A RU2016139468A RU2638710C1 RU 2638710 C1 RU2638710 C1 RU 2638710C1 RU 2016139468 A RU2016139468 A RU 2016139468A RU 2016139468 A RU2016139468 A RU 2016139468A RU 2638710 C1 RU2638710 C1 RU 2638710C1
Authority
RU
Russia
Prior art keywords
web page
web
elements
cluster
information
Prior art date
Application number
RU2016139468A
Other languages
English (en)
Inventor
Олег Викторович Купреев
Антон Борисович Гальченко
Михаил Валерьевич Устинов
Виталий Викторович Кондратов
Владимир Анатольевич Кусков
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 Акционерное общество "Лаборатория Касперского"
Priority to RU2016139468A priority Critical patent/RU2638710C1/ru
Priority to US15/475,885 priority patent/US10505973B2/en
Priority to EP17176269.3A priority patent/EP3306511B1/en
Priority to CN201710480802.0A priority patent/CN107918733B/zh
Priority to JP2017126120A priority patent/JP6530786B2/ja
Application granted granted Critical
Publication of RU2638710C1 publication Critical patent/RU2638710C1/ru
Priority to US16/671,316 priority patent/US11038917B2/en

Links

Images

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
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • 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
    • 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/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • 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
    • G06F21/562Static detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Изобретение относится к способам обнаружения вредоносных элементов веб-страниц. Технический результат заключается в обеспечении обнаружения вредоносных элементов веб-страницы, возникших на стороне пользователя, без установки дополнительного программного обеспечения. Другой технический результат заключается в снижении количества ошибок первого рода при обнаружении вредоносных элементов веб-страниц. В первом способе для обнаружения вредоносных элементов веб-страницы используют кластерные статистические модели вредоносных элементов веб-страниц. Во втором способе сравнивают хеш, вычисленный по сведениям о содержимом элемента, полученным от компьютерного устройства пользователя, с хешем, вычисленным по сведениям о содержимом заведомо вредоносного элемента веб-страницы. При этом как в первом, так и во втором способах сведения о содержимом элементов, используемые для обнаружения вредоносных элементов, собираются скриптом на стороне веб-клиента, содержащимся непосредственно на веб-странице, сведения о содержимом элементов которой собираются. 2 н. и 20 з.п. ф-лы, 7 ил.

Description

Область техники
Изобретение относится к способам обнаружения аномальных элементов веб-страницы.
Уровень техники
В последнее время банки и другие финансовые организации активно внедряют в процесс банковского обслуживания системы веб-банкинга (интернет банкинга). Веб-банкинг - это общее название технологий дистанционного банковского обслуживания, а также доступа к счетам и операциям (по ним), предоставляющийся в любое время и с любого компьютера, имеющего доступ в Интернет. Для выполнения операций используется веб-клиент (например, браузер).
Широкое применение указанных технологий закономерно привлекает злоумышленников, которые заинтересованы в хищении средств со счетов пользователей систем дистанционного обслуживания. Одной из популярных атак на пользователя веб-банкинга является атака, при которой вредоносным программным обеспечением (далее ПО) подменяется содержимое веб-страницы, отображаемой пользователю. Вредоносное ПО производит внедрение HTML-кода в веб-страницу. Часто эту атаку называют «человек в браузере» (англ. main in the browser) или «внедрение веб-кода» (англ. web injection). Атака может начинаться с использования, например, троянского приложения, устанавливающего в браузер жертвы вредоносное расширение, запускающееся при перезапуске браузера. После происходит перехват трафика пользователя, направляемого на определенный веб-сайт (чаще всего банковский). Далее происходит изменение веб-страницы (на этапе загрузки или открытия), отображаемой пользователю, что позволяет модифицировать внешний вид того или иного элемента веб-страницы, похищать вводимые аутентификационные данные жертвы или перенаправлять переводимые пользователем средства на сторонний счет.
В настоящее время существуют решения, направленные на повышение безопасности работы пользователя в сети с учетом атак, внедряющих сторонний код в веб-страницу.
Так, публикация ЕР2199940 описывает способ определения атаки «man in the browser» с помощью «отпечатка» (англ. fingerprint) транзакции, ассоциированного с веб-сайтом. Отпечатком в частном случае может являться количество ожидаемых транзакций вывода-вывода. Если есть отклонение, транзакция прерывается.
Публикация ЕР2529304 описывает систему, которая сравнивает поведение пользователя в текущей сессии с усредненным поведением. Поддерживается определение атаки «man in the browser)). Во время данной атаки выделяются атрибуты пользователя (например, логин и IP-адрес), и по ним в дальнейшем анализируется поведение пользователя.
Однако в настоящий момент уровень техники не содержит решений, которые могли бы эффективно определить, была ли изменена веб-страница вредоносным ПО, и отыскать вредоносные элементы в версии веб-страницы на стороне пользователя без установки дополнительного программного обеспечения. В тоже время дополнительное программное обеспечение, такое как различные клиенты безопасности, тонкие клиенты (англ. light agent) и другие антивирусные средства, не всегда возможно установить на стороне пользователя, что в результате приводит к ошибкам первого и второго рода в работе антивирусного приложения. Так, например, ошибкой первого рода является пропуск атаки типа «man in the browser)) на вычислительную систему (компьютера) с целью захвата канал передачи данных и получения доступа ко всей передаваемой информации, а ошибкой второго рода является ошибочное определение легального изменения веб-страницы на стороне пользователя, как аномальное.
Раскрытие изобретения
Настоящее изобретение предназначено для обнаружения аномальных элементов веб-страницы, возникших на клиентской стороне, без установки дополнительного (помимо уже установленного веб-клиента) программного обеспечения на стороне клиента.
Один технический результат настоящей группы изобретений заключается в обеспечении обнаружения вредоносных элементов веб-страницы, возникших на стороне пользователя, без установки дополнительного программного обеспечения. Первым изобретением группы технический результат достигается путем использования кластерных статистических моделей вредоносных элементов веб-страниц, при этом сведения о содержимом элементов, используемые для обнаружения вредоносных элементов собираются скриптом на стороне веб-клиента, содержащимся непосредственно на веб-странице, сведения о содержимом элементов которой собираются. Вторым изобретением группы технический результат достигается путем сравнения хеша вычисленного по сведениям о содержимом элемента, полученным от компьютерного устройства пользователя, с хешем вычисленным по сведениям о содержимом заведомо вредоносного элемента веб-страницы. При этом сведения о содержимом элементов, по которым вычисляются хеши также собираются скриптом на стороне веб-клиента, содержащимся непосредственно на веб-странице, сведения о содержимом элементов которой собираются.
Другой технический результат, который достигается группой изобретений, заключается в снижении количества ошибок первого рода при обнаружении вредоносных элементов веб-страниц. Указанный технический результат достигается за счет того, что сведения о содержимом элементов, используемые для обнаружения вредоносных элементов собираются скриптом на стороне веб-клиента, содержащимся непосредственно на веб-странице, сведения о содержимом элементов которой собираются. За счет получения сведений о содержимом веб-страницы на стороне веб-клиента, вероятность пропустить атаку типа «man in the browser» снижается, таким образом снижается количество ошибок первого рода.
Объектами настоящей группы изобретений (варианты) являются способы. Первое изобретение группы - способ обнаружения вредоносного элемента веб-страницы с помощью статистических моделей в котором, собирают сервером управления сведения о содержимом элементов веб-страницы с компьютерных устройств пользователя, где во время сбора сведений получают, по меньшей мере одним, веб-клиентом, реализованным на компьютерном устройстве пользователя веб-страницу от веб-сервера, при этом веб-страница содержит скрипт, который при выполнении собирает сведения о содержимом, по меньшей мере, одного элемента веб-страницы на стороне веб-клиента и оправляет собранные сведения с компьютерного устройства пользователя серверу управления. Далее выполняют вышеуказанный скрипт с помощью веб-клиента, который собирает сведения о содержимом, по меньшей мере, одного элемента веб-страницы на стороне веб-клиента и отправляет собранные сведения с компьютерного устройства пользователя серверу управления. Потом анализируют собранные сведения, для этого во время анализа получают из базы данных статистическую модель вредоносных элементов веб-страниц и преобразуют с помощью сервера управления полученные сведения в, по меньшей мере, один N-мерный вектор, где N-мерный вектор характеризуют содержимое, по меньшей мере одного элемента веб-страницы. Затем сравнивают с помощью сервера управления созданный N-мерный вектор с кластерами статистической модели вредоносных элементов веб-страницы, где определяют расстояние между полученным N-мерным вектором элемента и центрами всех кластеров статистической модели. И в итоге обнаруживают сервером управления вредоносный элемент в результате анализа собранных сведений, где вредоносным признается элемент, когда выполняется в процессе сравнения, по крайней мере, одно из следующих условий:
Figure 00000001
расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше радиусов этих кластеров;
Figure 00000002
расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве равно радиусу этих кластеров;
Figure 00000001
мера близости между полученным N-мерным вектором и центром по меньшей мере одного кластера модели в N-мерном пространстве меньше порогового значения;
Figure 00000001
мера близости между полученным N-мерным вектором и по меньшей мере одним наиболее удаленными от центра кластера N-мерными векторами по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше порогового значения.
В частном случае скрипт, собирающий информацию о содержимом веб-страницы и отправляющий собранную информацию серверу управления внедряется в веб-страницу на стороне веб-сервера или промежуточном узле, расположенным между веб-клиентом и веб-сервером промежуточным узлом может являться, например, прокси-сервер.
Элементами веб-страницы, о содержимом которых собирают сведения, являются элементы, по меньшей мере, следующих видов:
• объекты:
• апплеты;
• скрипты;
• native код;
• формы.
В частном случае сведения собираются о содержимом, по меньшей мере, двух элементах веб-страницы, при этом элементы относятся к разным видам элементов или элементы относятся к одному виду элементов.
Для создания кластеров могут использоваться иерархические методы, например, кластер создают агломеративным методом, в котором наиболее близкие (по расстоянию) N-мерные векторы элементов выделяются в кластеры или наиболее близкие (по расстоянию) кластеры объединяют в один кластер. При применении этого метода используется расстояние: линейное или евклидово или обобщенное степенное Минковского или Чебышева или Манхэттенское. А наиболее близкими признаются векторы, имеющие наименьшее взаимное расстояние, и кластер могут выделять до тех пор, пока радиус кластера максимально не приблизится к пороговому значению радиуса, где максимальным приближенным является радиус, который при следующем акте выделения кластера превысит пороговое значение радиуса. В другом случае выделяют кластер до тех пор, пока не останется кластеров или векторов с допустимой мерой близости, где допустимой мерой близости считается мера, не превышающая установленное пороговое значение. Наиболее близкими признаются кластеры, имеющие наименьшее расстояние между центрами.
В другом частном случае кластеры создают дивизимным методом, где кластер образуют векторы, взаимное расстояние которых меньше предельно допустимого расстояния, при этом предельная допустимость расстояния определяется пороговым значением, а кластеры отделяют, например, до тех пор, пока радиус кластера не станет равным или меньше порогового значения радиуса.
Для создания кластера могут использоваться и неиерархические методы.
Для обнаружения вредоносных элементов используется модель. Для построения статистической модели вредоносных элементов веб-страниц получают из базы данных сведения о по меньшей мере одном, заведомо вредоносном элементе и преобразуют с помощью сервера управления полученные сведения в, по меньшей мере, один N-мерный вектор, где N-мерный вектор характеризует содержимое, по меньшей мере одного элемента веб-страницы. Создают с помощью сервера управления статистическую модель веб-страницы, которая представляет собой, по крайней мере, один кластер в N-мерном пространстве, при этом кластер содержит, по крайней мере, один N-мерный вектор;
Второе изобретение группы способ обнаружения вредоносного элемента веб-страницы с помощью хешей, в котором собирают сервером управления сведения о содержимом элементов веб-страницы с компьютерных устройств пользователя, где во время сбора сведений получают, по меньшей мере одним, веб-клиентом, реализованным на компьютерном устройстве пользователя веб-страницу от веб-сервера, при этом веб-страница содержит скрипт, который при выполнении собирает сведения о содержимом, по меньшей мере, одного элемента веб-страницы на стороне веб-клиента и оправляет собранные сведения с компьютерного устройства пользователя серверу управления и выполняют вышеуказанный скрипт с помощью веб-клиента, который собирает сведения о содержимом, по меньшей мере, одного элемента веб-страницы на стороне веб-клиента и отправляет собранные сведения с компьютерного устройства пользователя серверу управления. Далее анализируют собранные сведения, при этом во время анализа получают из базы данных, по меньшей мере, один хеш, вычисленный по сведениям о содержимом заведомо вредоносного элемента веб-страницы и вычисляют с помощью сервера управления по сведениям о содержимом элемента, полученным от компьютерного устройства пользователя, хеш тем же алгоритмом хеширования, который использовали при вычислении хеша полученного из базы данных. Затем сравнивают с помощью сервера управления вычисленный хеш с хешем полученным из базы данных. В итоге обнаруживают сервером управления вредоносный элемент в результате анализа собранных сведений, где вредоносным признается элемент, когда хеш, вычисленный по собранным сведениям о его содержимом, совпадает в результате сравнения с хешем, полученным из базы данных.
В частном случае для вычисления хеша применяется алгоритм хеширования CRC или MD5 или MD6 или SHA1 или SHA2 или ГОСТ Р 34.11-2012.
В частном случае скрипт, собирающий информацию о содержимом веб-страницы и отправляющий собранную информацию серверу управления внедряется в веб-страницу на стороне веб-сервера или промежуточном узле, расположенным между веб-клиентом и веб-сервером промежуточным узлом может являться, например, прокси-сервер.
Краткое описание чертежей
Сопровождающие чертежи включены для обеспечения дополнительного понимания изобретения и составляют часть этого описания, показывают варианты осуществления изобретения и совместно с описанием служат для объяснения принципов изобретения.
Заявленное изобретение поясняется чертежами, где на:
Фиг. 1 изображена система обнаружения аномалий и вредоносных элементов, предназначенная для построения статистических моделей веб-страниц 100 и статистических моделей вредоносных элементов веб страниц, а также для обнаружения аномальных элементов и вредоносных элементов веб-страницы;
Фиг. 2 изображен пример N-мерного пространства со статистическими моделями и метриками кластера;
Фиг. 3 изображены способы, осуществляемые системой обнаружения аномалий;
Фиг. 4 изображены визуализации статистических моделей;
Фиг. 5 изображена компьютерная система общего назначения.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Осуществление изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Приведенное описание предназначено для помощи специалисту в области техники для исчерпывающего понимания изобретения, которое определяется только в объеме приложенной формулы.
Веб-страница - данные (код), созданные веб-сервером для обработки веб-клиентом (браузером) и организованные с применением языков гипертекстовой разметки (HTML, XHTML, XML, WML, VML, PGML, SVG, XBRL и др.) и сценарных языков (JScript, JavaScript, ActionScript, Tel, Lua, Perl, PHP, Python, REBOL, Ruby и др.).
Контент - содержимое веб-страницы.
Скрипт (сценарий) - исполняемая процедура, написанная на сценарном языке, которая запускается на исполнение на стороны сервера или клиента по запросу, поступившему при отображении строго определенной веб-страницы.
Встроенный скрипт (inline скрипт) - скрипт, исполняемый код которого (тело) является частью контента веб-страницы. В частном случае располагается между тегами <script></script>.
Тег (метка) - специальная конструкция языка разметки гипертекста.
Представляет собой текст, заключенный в угловые скобки <имя_тега>. Каждый тег несет определенную команду браузеру, как его (тег) и последующее содержимое отобразить. Теги в частном случае имеют атрибуты, которые уточняют тег, расширяют возможности тега и позволяют более гибко управлять, например, содержимым тега-контейнера. Например, <script src="URL">...</script>. Атрибут src указывает на расположение тела скрипта.
Тег-контейнер - парный тег, имеет открывающий и закрывающий теги. Может содержать как текст, так и другие элементы гипертекстового языка.
Элемент веб-страницы (элемент языка разметки) - комбинация начального тега, конечного тега (в некоторых случаях, начальный и конечные теги совпадают, например, в случае тега <br>) и содержимого между тегами. Совокупность элементов веб-страницы образуют содержимое веб-страницы. Существуют, по меньшей мере, следующие виды элементов, которые отличаются именами соответствующих тегов:
• гиперссылки;
• текстовые блоки;
• форматирование текста;
• списки;
• объекты:
Figure 00000003
медиа файлы;
Figure 00000003
апплеты;
Figure 00000003
скрипты;
Figure 00000003
native код;
Figure 00000003
и др;
• изображения;
• карта изображений;
• таблицы;
• формы;
• символы.
N-мерный вектор элемента - упорядоченный набор из n действительных чисел, где числа есть координаты вектора. Количество координат вектора называется размерностью вектора. Координаты определяют положение соответствующего элемента (например, скрипта) или группы элементов одного вида (например, элементов форм) веб-страницы в N-мерном пространстве (на Фиг. 2 приведен пример двумерного пространства). Вектор получают преобразованием сведений о содержимом элемента или группы элементов. Вектор отражает некоторую информацию о содержимом элемента или группы элементов. В частном случае каждая координата отражает одну из характеристик содержимого элемента, например, одна координата характеризует число операторов в скрипте, другая - число операторов eval. Также числа могут отражать лексикографический порядок строковых параметров содержания элементов или расстояние Левенштейна между строковыми параметрами разных элементов. Например, на Фиг. 2 изображены примеры векторов, в частности двумерные векторы с координатами (1666, 1889) и (1686, 1789)
Кластер - совокупность допустимых значений координат векторов для строго определенного элемента или группы элементов в N-мерном пространстве. Рассматриваемый элемент или группа элементов относится к некоторому кластеру, если расстояние от N-мерного вектора элемента до центра данного кластера меньше радиуса кластера в направлении N-мерного вектора. На Фиг. 2 показан пример кластера 210'. В частном случае элемент относится к некоторому кластеру, если значение расстояния (на Фиг. 2 «d'») от N мерного вектора элемента до ближайшего N-мерного вектора элемента данного кластера меньше предельно допустимого (порогового значения расстояния [d']) или если значение расстояния (на Фиг. 2 «d») от N-мерного вектора элемента до центра данного кластера меньше радиуса этого кластера. Например, расстояние от вектора (1666, 1889) до центра кластера меньше радиуса кластера, следовательно, элемент или группа элементов, содержание которых отражает вектор принадлежат данному кластеру и напротив - расстояние от вектора (1686, 1789) до центра кластера больше и радиуса кластера, и расстояния до ближайшего N-мерного вектора больше порогового значения, следовательно, элемент или группа элементов, содержание которых отражает вектор не принадлежат данному кластеру. Варианты расстояний для оценки близости:
• линейное расстояние;
• евклидово расстояние;
• квадрат евклидова расстояния;
• обобщенное степенное расстояние Минковского;
• расстояние Чебышева;
• Манхэттенское расстояние.
Мера близости (степень сходства, коэффициент сходства) - безразмерный показатель для определения сходства элементов веб-страницы. Для определения меры близости используются меры:
• Охаи;
• Жаккара;
• Сокала-Снита;
• Кульчинского;
• симметричная Дайса.
Центр кластера (центроид) - это среднее геометрическое место N мерных векторов в N мерном пространстве. Для кластеров, состоящих из одного вектора, данный вектор будет являться центром кластера.
Радиус кластера (на Фиг. 2 «R») - максимальное расстояние N-мерных векторов, входящих в кластер, от центра кластера.
Для кластеризации используют различные известные алгоритмы и подходы, в том числе иерархические (агломеративные и дивизивные) и неиерархические.
Статистическая модель элементов веб-страницы (модель элементов веб-страницы) - совокупность кластеров 210 для элементов одного вида или групп элементов одного вида. Например, статистическая модель скриптов веб страницы, статистическая модель форм веб-страницы. На Фиг. 2 статистические модели элементов веб-страницы обозначены 220. Для моделей, состоящих из одного кластера, данный кластер будет являться моделью элементов.
Статистическая модель веб-страницы (модель веб-страницы) - совокупность кластеров элементов веб-страницы всех видов и/или групп элементов (в том числе групп элементов, содержащих элементы разных видов). Например, статистическая модель страницы авторизации. Иными словами, статистическая модель веб-страницы 230 есть совокупность моделей элементов веб-страницы 220. По аналогии статистической моделью веб-сайта будет совокупность кластеров элементов веб-страницы всех видов и/или групп элементов всех веб-страниц веб-сайта. Иными словами, статистическая модель веб-сайта (на фигурах не указана) есть совокупность моделей веб-страниц 230.
Статистическая модель вредоносных элементов веб-страницы - совокупность кластеров 210 для заведомо вредоносных элементов одного и/или разного вида или групп элементов одного и/или разного вида. Примеры моделей: статистическая модель вредоносных скриптов веб-страницы, статистическая модель вредоносных форм веб-страницы, статистическая модель вредоносных скриптов и форм веб-страницы. Для моделей, состоящих из одного кластера, данный кластер будет являться моделью вредоносных элементов. Для построения моделей данного вида используются заведомо вредоносные элементы, содержание которых преобразуется в N-мерные вектора с последующей кластеризацией и объединением в модель. По форме статистическая модель веб-страницы и статистическая модель вредоносных элементов веб-страницы не отличаются, отличаются элементы на основании которых строится модель, в первом случае модель строится из потенциально безопасных элементов, во втором случае из заведомо вредоносных.
Аномальный элемент веб-страницы - элемент веб-страницы, вектор которого не относится ни к одному из кластеров статистической модели веб-страницы, построенной для элементов данного типа, или имеет статистическую значимость ниже пороговой.
Статистическая значимость элемента - значение отношения числа встречаемости оцениваемого элемента в контенте веб-страниц к общему числу полученных для построения модели веб-страниц или к числу полученных для построения модели веб-страниц на некотором участке (участке оценивания), где длина участка определяется числом полученных для построения модели веб-страниц с некоторого момента, например, момента начала наблюдения за элементом. Например, если получено 100 страниц и оцениваемый элемент встретился 30 раз, то статистическая значимость составит 30%.
Статистическая значимость кластера - значение отношения количества элементов, вектора которых образуют оцениваемый кластер, в контенте веб-страницы к общему числу полученных для построения модели веб-страниц; или к числу полученных для построения модели веб-страниц на некотором участке, где длина участка определяется числом полученных для построения модели веб-страниц с некоторого момента, например, момента начала наблюдения за кластером.
Пороговое значение статистической значимости - значение статистической значимости элемента или кластера, при превышение которого элемент или кластер (и элементы кластера) признается статистически значимым, в том случае, если значение статистической значимости элемента кластера ниже установленного порогового значения, то элемент или кластер считаются аномальными.
Для создания кластеров могут использоваться иерархические методы, например, кластер создают агломеративным методом, в котором наиболее близкие (по расстоянию) N-мерные векторы элементов выделяются в кластеры или наиболее близкие (по расстоянию) кластеры объединяют в один кластер. При применении этого метода используется расстояние: линейное или евклидово или обобщенное степенное Минковского или Чебышева или Манхэттенское. А наиболее близкими признаются векторы, имеющие наименьшее взаимное расстояние, и кластер могут выделять до тех пор, пока радиус кластера максимально не приблизится к пороговому значению радиуса, где максимальным приближенным является радиус, который при следующем акте выделения кластера превысит пороговое значение радиуса. В другом случае выделяют кластер до тех пор, пока не останется кластеров или векторов с допустимой мерой близости, где допустимой мерой близости считается мера, не превышающая установленное пороговое значение. Наиболее близкими признаются кластеры, имеющие наименьшее расстояние между центрами.
В другом частном случае кластеры создают дивизимным методом, где кластер образуют векторы, взаимное расстояние которых меньше предельно допустимого расстояния, при этом предельная допустимость расстояния определяется пороговым значением, а кластеры отделяют, например, до тех пор, пока радиус кластера не станет равным или меньше порогового значения радиуса.
На Фиг. 1 изображена система обнаружения аномалий и вредоносных элементов, предназначенная для построения статистических моделей веб-страниц 100 и статистических моделей вредоносных элементов веб-страниц, а также, для обнаружения аномальных и вредоносных элементов веб-страницы. Система включает в себя: устройство пользователя 120, с установленным на нем веб-клиентом 110; веб-сервер 130; сервер управления 150 и базу данных 160.
На устройстве пользователя 120 реализован веб-клиент 110, в частном случае это браузер. Веб-клиент 110 предназначен для запроса, обработки, манипулирования и отображения содержания веб-сайтов, где веб-сайт является совокупностью логически связанных между собой веб-страниц 100. Веб-клиент 110 отправляет запросы на получение ресурсов, обозначенных, например, URL (uniform resource locator) адресами веб-серверу 130 и получает ответы, как правило, вместе с веб-страницей 100 или элементом веб-страницы от веб-сервера 130. Веб-сервер 130 по запросу от веб-клиента 110 выдает готовую веб-страницу 100 или формирует страницу динамически, в описываемом изобретении веб-сервером 130 к каждой веб-странице 100, отправляемой клиенту, дополнительно к обычному содержанию добавляется скрипт 140. Назначение скрипта 140, по меньшей мере, собирать на стороне веб-клиента 110 данные веб-страницы 100 (сведения об элементах или группе элементов веб-страницы, сведения об элементе в частном случае содержимое элемента), которая данный скрипт 140 содержит. В частном случае сведением об элементе веб-страницы 100 является содержимое данного элемента. Как упоминалось в уровне техники, элементы веб-страницы 100 и содержимое этих элементов веб-страницы 100 на стороне веб-клиента 100, могут отличаться от элементов и содержимого этих элементов той же версии веб-страницы 100 на стороне веб-сервера 130, по причине динамического обновления веб-страницы на стороне веб-клиента 110 или в результате атаки «man in the browser».
Сервер управления 150 получает собранные скриптом сведения об элементах или группе элементов веб-страницы. При этом скрипт может отправлять собранные данные как в «сыром» (англ. "raw"), так и в преобразованном виде, формат отправляемых данных определяется функциональностью скрипта 140, который добавлен веб-сервером 130 на веб-страницу 100, а именно:
• скрипт в процессе выполнения отправляет строго определенные сведения об элементах веб-страницы 100 в строго заданном виде, которые заданы функционалом скрипта; или
• скрипт отправляет данные веб-серверу 130 или серверу управления о своем успешном запуске на стороне клиента 110 и получает в ответ команду о том, о каких элементах веб-страницы 100 и в каком виде нужно собрать и отправить сведения приемнику (веб-серверу 130 или непосредственно серверу управления 150).
В частном случае скрипт 140 может быть внедрен в веб-страницу 100 на промежуточном узле (англ. «node»), например, корпоративным прокси-сервером.
Основными способами трансформирования (преобразования) данных являются:
• квантование;
• сортировка;
• слияние (склеивание);
• группировка;
• настройка набора данных;
• табличная подстановка значений;
• вычисляемые значения;
• кодирование данных;
• нормализация (масштабирование).
В частном случае в результате преобразования данных, данные приобретают свойства информации.
Одним из способов преобразования скриптов является построение абстрактного синтаксического дерева и передача приемнику (веб-серверу 130 или непосредственно серверу управления 150) только значимых операторов и конструкций, которые заранее предопределяются настройками скрипта 140 или командами от приемника.
Все собранные скриптом 140 данные передаются, в итоге, серверу управления 150. Сервер управления 150 может получать данные напрямую от веб-клиентов 110, либо через веб-сервер 130. В частном случае сервер управления 150 может находится в одной сети с веб-сервером 130. Собранные данные сервером управления 150 используются для построения статистической модели веб-страницы 230 (или статистической модели вредоносных элементов веб-страницы) и обнаружения аномальных (или вредоносных) элементов веб-страниц. На сервере управления 150 реализован ряд средств (на фигурах не указаны). Средство обработки, реализованное на сервере управления 150, преобразует собранные скриптами 140 данные в N-мерные векторы, полученные векторы хранятся в базе данных 160. Также средство обработки вычисляет по содержимому элемента хеш, одним из алгоритмов хеширования (CRC, MD5, MD6, SHA1, SHA2, ГОСТ Р 34.11-2012 и т.д)
Средство анализа, реализованное на сервере управления 150, предназначено для формирования кластеров 210 из полученных векторов и обнаружения аномальных элементов или групп элементов, содержимое которых отражают полученные векторы, данное назначение реализуется за счет взаимного сравнения N-мерных векторов и сформированных кластеров 210 в N-мерном пространстве.
База данных 160 хранит построенные модели и векторы. Также база данных хранит хеши заведомо вредоносных элементов. Записи о хешах вредоносных элементов попадают в базу из внешних источников (т.е. хеши уже предварительно вычисленные) или хеши рассчитываются средством обработки сервера управления по содержимому заведомо вредоносных элементов, которые обнаруживаются в результате антивирусной проверки аномальных элементов или выбираются из хранилища вредоносного программного обеспечения (на фигурах не указаны), хранящего экземпляры вредоносных элементов веб-страниц.
Описанная система осуществляет несколько способов: способ построения статистической модели веб-страницы 230, способ построения статистической модели вредоносных элементов веб-страницы, способ обнаружения аномальных элементов веб-страницы 100 с помощью построенной модели веб-страницы 230, способ обнаружения вредоносных элементов веб-страницы 100 с помощью построенной модели вредоносных элементов веб-страницы, способ обнаружения вредоносных элементов веб-страницы 100 с помощью хешей. Способы изображенны на Фиг. 3.
Способ построения статистической модели веб-страницы 230 осуществляется следующим образом. На этапе 300 пользователь со своего устройства получает доступ к веб-сайту, где веб-клиент 110 по запросу к вебсерверу 130, получает от веб-сервера 130 веб-страницу 100 сайта, на веб-страницу 100 веб-сервером 130 (или промежуточным узлом) при этом добавляется скрипт 140. На этапе 310 скрипт выполняется на стороне веб-клиента 110, собирая данные, содержащиеся в веб-странице 100. Данные, собираемые скриптом 140, могут содержать различные сведения, в частном случае скрипт 140 собирает содержимое, по меньшей мере, одного элемента веб-страницы (скрипта, формы и т.д.). Данные, собранные скриптом 140, при необходимости трансформируются, данные трансформируются либо самим скриптом 140, либо средством обработки на сервере управления 150 и на этапе 320 собранные данные преобразуются в, по меньшей мере, один N-мерный вектор, который сохраняется на этапе 330. Из по меньшей мере одного вектора, на этапе 350 создают, по меньшей мере один, кластер 210. На основании по меньшей мере одного созданного кластера 210 строят на этапе 360 статистическую модель веб-страницы 230.
В частном случае, после сохранения полученного N-мерного вектора, на этапе 301 получают веб-страницу 100 другим веб-клиентом 110 и на основании собранных данных с этой веб страницы получают дополнительно на этапе 320 N-мерные векторы, только после этого создают кластеры.
В другом частном случае после создания кластеров 210 и построения модели 230 на этапе 302 получают веб-страницу 100 другим веб-клиентом 110 и на основании собранных данных скриптом 140 с этой веб-страницы получают N-мерные векторы, и на основании полученных N-мерных векторов корректируют (обновляют) ранее созданные кластеры 210 (изменяют радиус, центр/центроид) или создают новые кластеры 210, тем самым уточняя (скорректированными кластерами 210) и дополняя (вновь созданными кластерами 210) статистическую модель веб-страницы 230. При этом данные собираемые скриптом 140 могут отличаться от данных собираемых скриптом 140 на предыдущей итерации, например, собираются сведения о других элементах веб-страницы 100.
Способ обнаружения аномальных элементов на основании статистической модели веб-страницы 230. На этапе 300 пользователь со своего устройства получает доступ к веб-сайту, где веб-клиент 110 по запросу к вебсерверу 130, получает от веб-севера 130 веб-страницу 100 сайта, на веб-страницу 100 веб-сервером 130 (или промежуточным узлом) при этом добавляется скрипт 140. На этапе 310 скрипт выполняется на стороне веб-клиента, собирая данные, содержащиеся в веб-странице 100. Данные, собираемые скриптом 140, могут содержать различные сведения, в частном случае скрипт собирает содержимое, по меньшей мере, одного элемента веб-страницы (скрипта, формы и т.д.). Данные, собранные скриптом 140, при необходимости трансформируются, при этом данные трансформируются либо самим скриптом 140, либо средством обработки сервера управления 150 и на этапе 320 собранные данные преобразуются в, по меньшей мере, один N-мерный вектор, который сохраняется на этапе 330. Полученный вектор на этапе 370 сравнивается (путем определения взаимного расстояния, например, между полученным вектором и центром кластера) с кластерами построенной статистической модели веб-страницы 230 и/или N-мерными векторами данной модели 230. На этапе 380 в результате сравнения анализируемый элемент признается аномальным, элемент признается аномальным, когда:
- расстояние, между N-мерным вектором элемента и центрами всех кластеров модели, в N-мерном пространстве, больше радиусов этих кластеров; или
- мера близости между N-мерным вектором элемента и центрами всех кластеров модели, в N-мерном пространстве, больше порогового значения; или
- мера близости между N-мерным вектором элемента и наиболее удаленными от центра кластеров N-мерными векторами кластеров модели, в N-мерном пространстве, больше порогового значения.
В частном случае, если элемент не признан аномальным, на этапе 351 N-мерный вектор данного элемента добавляется к статистической модели веб-страницы 230.
В частном случае при обнаружении аномального элемента веб-страницы 100 веб-сервер 130 разрывает соединение с веб-клиентом 110 и устройством пользователя 120 или соединение сохраняется, но веб-сервер 130 перестает отвечать на запросы клиента 110 (передача данных по соединению приостанавливается). В момент приостановки передачи данных обнаруженный аномальный элемент веб-страницы проверяется антивирусными средствами (на фигурах не указаны) на этапе 390 сервера управления 150 на наличие вредоносного функционала (опасности) или производят наблюдение за данным элементом и, если вокруг него сформируется кластер с статистической значимостью выше пороговой, то обнаруженный аномальный элемент признается безопасным и соединение размораживается, и сессия продолжается.
В частном случае, когда модель строится на основании веб-страниц, о которых заведомо неизвестно, содержат они аномальные элементы или нет, возможна коллизия: N-мерный вектор элемента не попадает ни в один из кластеров модели и возникает дилемма - создавать новый кластер на базе данного вектора или признавать элемент, содержимое которого отражает данный вектор, аномальным. Коллизия может быть разрешена на основании оценки статистической значимости элемента или кластера, который возможно создать на основании элементов подобных (близких) оцениваемому на участке оценивания. А именно на основании отношения числа веб-страниц, содержащих оцениваемый элемент (или близкие элементы, элементы расстояние между N-мерными векторами которых в N-мерном пространстве меньше некоторого порогового значения), к общему числу веб-страниц, используемых при построении модели на оцениваемом участке, где длина участка измеряется в количестве страниц или итераций. Если значение статистической значимости оцениваемого элемента веб-страницы на участке оценки близко (близость определяется пороговым значением) значению статистической значимости других элементов (или среднему значению статистической значимости других элементов) на данном участке или превышает некоторое пороговое значение, например, в 20%, то элемент признается статистически значимым, иначе (если не превышает) - аномальным. Например, на этапе построения модели, появился некоторый элемент веб-страницы 100, вектор которого не попадает ни в один из ранее созданных кластеров 210, необходимо определить является ли данный элемент аномальным. Для этого определим его статистическую значимость на участке, где длина участка составляет 200 веб-страниц 100. При этом пороговое значение статистической значимости для данного вида элемента равно 20%. При проверке выясняют, что на данной длине элементы, близкие оцениваемому, встретились 4 раза, что соответствует значению статистической значимости в 2%, что ниже порогового значения, следовательно, оцениваемый элемент и близкие ему (кластер который образуется вокруг оцениваемого элемента) являются аномальными. Пороговое значение статистической значимости, в частном случае, определяется как минимальное значение статистической значимости кластера для элемента того же вида. Например, модель содержит кластеры скриптов со значениями статистической значимости, 25%, 32%, 47%, 95%, следовательно, пороговое значение для данного вида элементов устанавливается равным 25%.
Статистическая значимость может использоваться также при обнаружении аномальных элементов. Это, например, используется, когда статистическая модель не построена или решается дилемма, описанная выше. На первом этапе получают веб-клиентам 110 и, реализованными на устройствах пользователей 120 веб-страницы 100 от веб-сервера 130, при этом веб-страницы 100 содержат скрипт 140, который при выполнении собирает сведения о содержимом, по меньшей мере, одного элемента веб-страницы 100 на стороне веб-клиента 110 и оправляет собранные сведения с устройства пользователя 120. Далее выполняют вышеуказанный скрипт с помощью веб-клиента 110 для сбора сведений о содержимом, по меньшей мере, одного элемента веб-страницы 100 на стороне веб-клиента 110 и отправки собранных сведений с устройств пользователей 120, веб-клиенты 110 которых получили веб-страницу 100. На стороне сервера управления 150 преобразуют сведения о содержимом полученные с устройств 120 в N-мерные векторы элементов, затем кластеризуют полученные N-мерные векторы любым известным из уровня техники способом. N-мерные векторы могут формироваться для каждого элемента веб-страницы, для группы элементов, при этом для группы элементов как одного вида, так и в группу могут входить элементы разных видов. После того как кластеры 210 сформированы, при этом кластер 210 может включать, по меньшей мере, один вектор, определяют статистическую значимость полученных кластеров 210, где статистическая значимость определяется как отношение числа N-мерных векторов в кластере 210 к числу веб-страниц 100 с которых собраны и отправлены сведения о содержимом их элементов серверу управления 150 или веб-серверу 130. В результате аномальными элементами признаются элементы N-мерные векторы которых образуют кластер со статистической значимостью меньше пороговой. Пороговая значимость задается способами, описанными выше, а также может зависеть от видов элементов, способов кластеризации, длины участка оценивания и т.д.
Приведем пример работы описанного выше изобретения. Пользователь запрашивает веб-страницу сайта веб-банка - https://my.KasperskyBank.ru/. На запрошенную веб-страницу добавляется скрипт 140, и страница 100 отправляется веб-клиенту 110, реализованному на устройстве пользователя 120. Скрипт 140 на стороне пользователя собирает имеющиеся на веб-странице элементы <script>:
Figure 00000004
Figure 00000005
Для элементов <script>, имеющих атрибут src, выполняется загрузка и нормализация тела скрипта, для inline-скриптов - только нормализация. Например, для приведенных выше inline-скриптов, нормализованная форма может быть следующей (сохранены только значимые конструкции языка и стандартные объекты/методы, литералы «обезличены»):
Figure 00000006
Далее скрипт 140 собирает имеющиеся на странице элементы <input>:
Figure 00000007
Скрипт 140 преобразует собранные данные элементов<input>, выполняя нормализацию, например, так (атрибуты сортируются по алфавиту, имя тэга вырезается, пробелы в значениях атрибутов вырезаются, атрибуты перечисляются через «;»):
Figure 00000008
Скрипт 140 отправляет собранные данные на сервер управления 150. Сервер управления 150 обрабатывает собранные данные элементов <script> в контексте соответствующей модели (единой для всех элементов script - статистическая модель элементов 220 вида скрипт), следующим образом:
• для каждого скрипта получают числовой вектор (для простоты в примере считаем, что вектор двумерный), где вектор рассчитывается из кодов символов строк (для получения кодов символов может использоваться любая известная кодировка, например, ASCII), составляющих собранные данные (для inline-скриптов эти данные - содержимое нормализованного скрипта, для остальных - содержание атрибута src). Тогда для элементов <script>, содержащихся в полученной веб-странице 100 могут быть получены следующие векторы:
Figure 00000009
16314,10816
Figure 00000010
2254,2598
Figure 00000009
16084,15036
Figure 00000009
356,822
Figure 00000009
20010,51838
• каждый вектор сохраняется в двумерном пространстве модели 230, в данном случае аномалии отсутствуют, все векторы попадают в сложившиеся ранее кластеры (т.е. совпадают с данными, поступившими от скрипта 140 с тех версий веб-страниц ранее). Для наглядности на Фиг. 4а приведена визуализация модели, где точками изображены анализируемые элементы <script>, закрашенными областями - созданные ранее кластеры 210 модели 220, как части модели 230:
Сервер управления 150 обрабатывает собранные данные элементов <input> аналогичным образом, в результате визуализация имеет вид, представленный на Фиг. 4б. Поскольку аномальных элементов не выявлено, обработка на этом завершается.
Теперь предположим, что у кого-то из пользователей на той же самой странице - https://my.KasperskyBank.ru/ появился вредоносный инжект (англ. inject) в виде дополнительного элемента <script>:
Figure 00000011
И для него вектор, рассчитанный способом, описанным выше, равен (4560,3192) и модель приобретает вид, представленный на Фиг. 4в (красным отмечен текущий вектор, отражающий содержание инжекта, это аномалия). Обнаруженный аномальный элемент на этапе 390 будет обработан антивирусными средствами сервера управления 150, а само соединение будет заморожено, параллельно за элементом в пространстве модели будет осуществляется наблюдение для определения его статистической значимости.
Описанное изобретение может использоваться не только для обнаружения аномальных элементов, но и, как указывалось выше, вредоносных элементов. Для обнаружения вредоносных элементов используются те же кластерные статистические модели. Отличие статистических кластерных моделей, используемых при обнаружении аномальных элементов, от статистических кластерных моделей используемых при обнаружении вредоносных элементов заключается в сведениях на основании которых создаются N-мерные векторы, которые кластеризуются при построении модели. При обнаружении аномальных элементов для создания кластеров используются сведения о потенциально безопасных элементах, при обнаружении вредоносных элементов для создания кластеров используются сведения о заведомо вредоносных элементах. Таким образом статистические модели отличаются лишь сведениями на основании которых строится модель. Поэтому для описания статистических моделей вредоносных элементов веб страницы будет использоваться сущность 230. А для построения моделей и обнаружения вредоносных элементов используется та же система, что изображена на Фиг. 1.
Способ построения статистической модели вредоносных элементов веб-страницы 230 осуществляется следующим образом. На этапе 311 из базы данных 160 сервером управления получают данные, содержащие сведения о заведомо вредоносных элементах веб-страниц. Указанные элементы были обнаружены ранее, в одном частном случае после антивирусной проверки на этапе 390 обнаруженного аномального элемента, который был признан вредоносным, в другом частном случае используется хранилище, содержащее экземпляры заведомо вредоносного программного обеспечения. Данные, получаемые на этапе 311 из базы данных 160 могут содержать различные сведения, в частном случае получают содержимое, вредоносного элемента веб-страницы (скрипта, формы и т.д.). Данные при необходимости трансформируются средством обработки на сервере управления 150 и на этапе 320 собранные данные преобразуются в, по меньшей мере, один N-мерный вектор, который сохраняется на этапе 330. Из по меньшей мере одного вектора, на этапе 350 создают, по меньшей мере один, кластер 210. На основании по меньшей мере одного созданного кластера 210 строят на этапе 360 статистическую модель вредоносных элементов веб-страницы 230.
Способ обнаружения вредоносных элементов на основании статистической модели вредоносных элементов веб-страницы 230. На этапе 300 пользователь со своего устройства получает доступ к веб-сайту, где веб-клиент 110 по запросу к веб-серверу 130, получает от веб-севера 130 веб-страницу 100 сайта, на веб-страницу 100 веб-сервером 130 (или промежуточным узлом) при этом добавляется скрипт 140. На этапе 310 скрипт выполняется на стороне веб-клиента 110, собирая данные, содержащиеся в веб-странице 100. Данные собираемые скриптом 140 могут содержать различные сведения, в частном случае скрипт собирает содержимое, по меньшей мере, одного элемента веб-страницы (скрипта, формы и т.д.). Данные собранные скриптом 140 при необходимости трансформируются, при этом данные трансформируются либо самим скриптом 140, либо средством обработки сервера управления 150 и на этапе 320 собранные данные преобразуются в, по меньшей мере, один N-мерный вектор, который сохраняется на этапе 330. Полученный вектор на этапе 370 сравнивается (путем определения взаимного расстояния, например, между полученным вектором и центром кластера) с кластерами построенной статистической модели вредоносных элементов веб-страницы 230 и/или N-мерными векторами данной модели 230. На этапе 381 в результате сравнения анализируемый элемент признается вредоносным, элемент признается вредоносным, когда:
- расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше радиусов этих кластеров;
- расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве равно радиусу этих кластеров;
- мера близости между полученным N-мерным вектором и центром по меньшей мере одного кластера модели в N-мерном пространстве меньше порогового значения;
- мера близости между полученным N-мерным вектором и по меньшей мере одним наиболее удаленными от центра кластера N-мерными векторами, по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше порогового значения.
Способ обнаружения вредоносных элементов на основании хешей. На этапе 300 пользователь со своего устройства получает доступ к веб-сайту, где веб-клиент 110 по запросу к веб-серверу 130, получает от веб-севера 130 веб-страницу 100 сайта, на веб-страницу 100 веб-сервером 130 (или промежуточным узлом) при этом добавляется скрипт 140. На этапе 310 скрипт выполняется на стороне веб-клиента, собирая данные, содержащиеся в веб-странице 100. Данные собираемые скриптом 140 могут содержать различные сведения, в частном случае скрипт собирает содержимое, по меньшей мере, одного элемента веб-страницы (скрипта, формы и т.д.). Получают из базы данных 160 на этапе 361, по меньшей мере, один хеш, вычисленный по сведениям о содержимом заведомо вредоносного элемента веб-страницы, сведения получаются теми же способами что были описаны выше. Данные собранные скриптом 140 при необходимости трансформируются, при этом данные трансформируются либо самим скриптом 140, либо средством обработки сервера управления 150 и на этапе 321 по собранным данным вычисляют хеш. На этапе 371 сервером управления сравнивают вычисленный хеш на этапе 321 с хешем полученным на этапе 361 из базы данных 160. На этапе 382 обнаруживают сервером управления 150 вредоносный элемент в результате анализа собранных сведений, где вредоносным признается элемент, когда хеш, вычисленный, по собранным сведениям, о его содержимом, совпадает в результате сравнения с хешем, полученным из базы данных 160 на этапе 361.
Под веб-сервером, веб-клиентом, базой данных, промежуточным узлом, сервером управления с реализованными на нем средством анализа и средством обработки в настоящем изобретении понимаются реальные устройства, системы, компоненты, группы компонентов, реализованные с использованием аппаратных средств, таких как интегральные микросхемы (англ. application-specific integrated circuit, ASIC) или программируемые вентильные матрицы (англ. field-programmable gate array, FPGA) или, например, в виде комбинации программных и аппаратных средств, таких как микропроцессорная система и набор программных инструкций, а также на нейроморфных чипах (англ. neurosynaptic chips) Функциональность указанных элементов системы может быть реализована исключительно аппаратными средствами, а также в виде комбинации, где часть функциональности элементов системы реализована программными средствами, а часть аппаратными. В некоторых вариантах реализации часть элементов, или все элементы, могут быть исполнены на процессоре компьютера общего назначения (например, который изображен на Фиг. 5).
Фиг. 5 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 5. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.

Claims (50)

1. Способ обнаружения вредоносного элемента веб-страницы, в котором:
а) собирают сервером управления сведения о содержимом элементов веб-страницы с компьютерных устройств пользователя, где во время сбора сведений
- получают по меньшей мере одним веб-клиентом, реализованным на компьютерном устройстве пользователя, веб-страницу от веб-сервера, при этом веб-страница содержит скрипт, который при выполнении собирает сведения о содержимом по меньшей мере одного элемента веб-страницы на стороне веб-клиента и оправляет собранные сведения с компьютерного устройства пользователя серверу управления;
- выполняют вышеуказанный скрипт с помощью веб-клиента, который собирает сведения о содержимом по меньшей мере одного элемента веб-страницы на стороне веб-клиента и отправляет собранные сведения с компьютерного устройства пользователя серверу управления;
б) анализируют собранные сведения, при этом во время анализа
- получают из базы данных статистическую модель вредоносных элементов веб-страниц;
- преобразуют с помощью сервера управления полученные сведения в по меньшей мере один N-мерный вектор, где N-мерный вектор характеризует содержимое по меньшей мере одного элемента веб-страницы;
- сравнивают с помощью сервера управления созданный N-мерный вектор с кластерами статистической модели вредоносных элементов веб-страницы, где определяют расстояние между полученным N-мерным вектором элемента и центрами всех кластеров статистической модели;
в) обнаруживают сервером управления вредоносный элемент в результате анализа собранных сведений, где вредоносным признается элемент, когда выполняется в процессе сравнения по крайней мере одно из следующих условий:
- расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше радиусов этих кластеров;
- расстояние между полученным N-мерным вектором и центром по меньшей мере одного кластера статистической модели в N-мерном пространстве равно радиусу этих кластеров;
- мера близости между полученным N-мерным вектором и центром по меньшей мере одного кластера модели в N-мерном пространстве меньше порогового значения;
- мера близости между полученным N-мерным вектором и по меньшей мере одним наиболее удаленным от центра кластера N-мерным вектором по меньшей мере одного кластера статистической модели в N-мерном пространстве меньше порогового значения.
2. Способ по п. 1, в котором скрипт, собирающий информацию о содержимом веб-страницы и отправляющий собранную информацию серверу управления, внедряется в веб-страницу на стороне веб-сервера или промежуточном узле, расположенном между веб-клиентом и веб-сервером.
3. Способ по п. 2, в котором промежуточным узлом является прокси-сервер.
4. Способ по п. 1, в котором элементами веб-страницы, о содержимом которых собирают сведения, являются элементы по меньшей мере следующих видов:
а) объекты:
- апплеты;
- скрипты;
- native код;
б) формы.
5. Способ по п. 4, в котором собираются сведения о содержимом по меньшей мере двух элементов веб-страницы.
6. Способ по п. 5, в котором элементы относятся к разным видам элементов.
7. Способ по п. 5, в котором элементы относятся к одному виду элементов.
8. Способ по п. 1, в котором для создания кластера используют иерархические методы.
9. Способ по п. 8, в котором кластер создают агломеративным методом, в котором наиболее близкие по расстоянию N-мерные векторы элементов выделяются в кластеры или наиболее близкие по расстоянию кластеры объединяют в один кластер.
10. Способ по п. 9, по которому расстояние для оценки близости: линейное, или евклидово, или обобщенное степенное Минковского, или Чебышева, или Манхэттенское.
11. Способ по п. 9, в котором наиболее близкими признаются векторы, имеющие наименьшее взаимное расстояние.
12. Способ по п. 9, в котором выделяют кластер до тех пор, пока радиус кластера максимально не приблизится к пороговому значению радиуса, где максимальным приближенным является радиус, который при следующем акте выделения кластера превысит пороговое значение радиуса.
13. Способ по п. 9, в котором выделяют кластер до тех пор, пока не останется кластеров или векторов с допустимой мерой близости, где допустимой мерой близости считается мера, не превышающая установленное пороговое значение.
14. Способ по п. 9, в котором наиболее близкими признаются кластеры, имеющие наименьшее расстояние между центрами.
15. Способ по п. 8, в котором кластер создают дивизимным методом, где кластер образуют векторы, взаимное расстояние которых меньше предельно допустимого расстояния, при этом предельная допустимость расстояния определяется пороговым значением.
16. Способ по п. 15, в котором отделяют кластеры до тех пор, пока радиус кластера не станет равным или меньше порогового значения радиуса.
17. Способ по п. 1, в котором для создания кластера используют неиерархические методы.
18. Способ по п. 1, в котором строят статистическую модель вредоносных элементов, где
- получают из базы данных сведения о по меньшей мере одном заведомо вредоносном элементе;
- преобразуют с помощью сервера управления полученные сведения в по меньшей мере один N-мерный вектор, где N-мерный вектор характеризует содержимое по меньшей мере одного элемента веб-страницы;
- создают с помощью сервера управления статистическую модель веб-страницы, которая представляет собой по крайней мере один кластер в N-мерном пространстве, при этом кластер содержит по крайней мере один N-мерный вектор.
19. Способ обнаружения вредоносного элемента веб-страницы, в котором:
а) собирают сервером управления сведения о содержимом элементов веб-страницы с компьютерных устройств пользователя, где во время сбора сведений:
- получают по меньшей мере одним веб-клиентом, реализованным на компьютерном устройстве пользователя, веб-страницу от веб-сервера, при этом веб-страница содержит скрипт, который при выполнении собирает сведения о содержимом по меньшей мере одного элемента веб-страницы на стороне веб-клиента и оправляет собранные сведения с компьютерного устройства пользователя серверу управления;
- выполняют вышеуказанный скрипт с помощью веб-клиента, который собирает сведения о содержимом по меньшей мере одного элемента веб-страницы на стороне веб-клиента и отправляет собранные сведения с компьютерного устройства пользователя серверу управления;
б) анализируют собранные сведения, при этом во время анализа
- получают из базы данных по меньшей мере один хеш, вычисленный по сведениям о содержимом заведомо вредоносного элемента веб-страницы;
- вычисляют с помощью сервера управления по сведениям о содержимом элемента, полученным от компьютерного устройства пользователя, хеш тем же алгоритмом хеширования, который использовали при вычислении хеша, полученного из базы данных;
- сравнивают с помощью сервера управления вычисленный хеш с хешем, полученным из базы данных;
в) обнаруживают сервером управления вредоносный элемент в результате анализа собранных сведений, где вредоносным признается элемент, когда хеш, вычисленный по собранным сведениям о его содержимом, совпадает в результате сравнения с хешем, полученным из базы данных.
20. Способ по п. 19, в котором применяется алгоритм хеширования CRC, или MD5, или MD6, или SHA1, или SHA2, или ГОСТ Р 34.11-2012.
21. Способ по п. 19, в котором скрипт, собирающий информацию о содержимом веб-страницы и отправляющий собранную информацию серверу управления, внедряется в веб-страницу на стороне веб-сервера или промежуточного узла, расположенного между веб-клиентом и веб-сервером.
22. Способ по п. 21, в котором промежуточным узлом является прокси-сервер.
RU2016139468A 2016-10-10 2016-10-10 Способы обнаружения вредоносных элементов веб-страниц RU2638710C1 (ru)

Priority Applications (6)

Application Number Priority Date Filing Date Title
RU2016139468A RU2638710C1 (ru) 2016-10-10 2016-10-10 Способы обнаружения вредоносных элементов веб-страниц
US15/475,885 US10505973B2 (en) 2016-10-10 2017-03-31 System and methods of detecting malicious elements of web pages
EP17176269.3A EP3306511B1 (en) 2016-10-10 2017-06-15 System and methods of detecting malicious elements of web pages
CN201710480802.0A CN107918733B (zh) 2016-10-10 2017-06-22 检测网页的恶意元素的系统和方法
JP2017126120A JP6530786B2 (ja) 2016-10-10 2017-06-28 Webページの悪意のある要素を検出するシステム及び方法
US16/671,316 US11038917B2 (en) 2016-10-10 2019-11-01 System and methods for building statistical models of malicious elements of web pages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2016139468A RU2638710C1 (ru) 2016-10-10 2016-10-10 Способы обнаружения вредоносных элементов веб-страниц

Publications (1)

Publication Number Publication Date
RU2638710C1 true RU2638710C1 (ru) 2017-12-15

Family

ID=60718915

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016139468A RU2638710C1 (ru) 2016-10-10 2016-10-10 Способы обнаружения вредоносных элементов веб-страниц

Country Status (4)

Country Link
US (2) US10505973B2 (ru)
JP (1) JP6530786B2 (ru)
CN (1) CN107918733B (ru)
RU (1) RU2638710C1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3547646A1 (en) * 2018-03-30 2019-10-02 AO Kaspersky Lab System and method of detecting a modification of a web resource
RU2702081C2 (ru) * 2018-03-30 2019-10-03 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения модификации веб-ресурса

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10805331B2 (en) 2010-09-24 2020-10-13 BitSight Technologies, Inc. Information technology security assessment system
US9438615B2 (en) 2013-09-09 2016-09-06 BitSight Technologies, Inc. Security risk management
US11182720B2 (en) 2016-02-16 2021-11-23 BitSight Technologies, Inc. Relationships among technology assets and services and the entities responsible for them
US10425380B2 (en) 2017-06-22 2019-09-24 BitSight Technologies, Inc. Methods for mapping IP addresses and domains to organizations using user activity data
EP3704616A1 (en) * 2017-10-31 2020-09-09 Bluvector, Inc. Malicious script detection
US10257219B1 (en) 2018-03-12 2019-04-09 BitSight Technologies, Inc. Correlated risk in cybersecurity
US10812520B2 (en) 2018-04-17 2020-10-20 BitSight Technologies, Inc. Systems and methods for external detection of misconfigured systems
US10831892B2 (en) * 2018-06-07 2020-11-10 Sap Se Web browser script monitoring
RU2702080C1 (ru) * 2018-06-29 2019-10-03 Акционерное общество "Лаборатория Касперского" Способ блокировки сетевых соединений с ресурсами из запрещенных категорий
US11200323B2 (en) 2018-10-17 2021-12-14 BitSight Technologies, Inc. Systems and methods for forecasting cybersecurity ratings based on event-rate scenarios
US10521583B1 (en) 2018-10-25 2019-12-31 BitSight Technologies, Inc. Systems and methods for remote detection of software through browser webinjects
CN109491896B (zh) * 2018-10-26 2022-06-21 深圳点猫科技有限公司 一种教育系统的微信小程序表单校验方法及电子设备
US20200137092A1 (en) * 2018-10-31 2020-04-30 Salesforce.Com, Inc. Detecting anomalous web browser sessions
US10726136B1 (en) 2019-07-17 2020-07-28 BitSight Technologies, Inc. Systems and methods for generating security improvement plans for entities
US11956265B2 (en) 2019-08-23 2024-04-09 BitSight Technologies, Inc. Systems and methods for inferring entity relationships via network communications of users or user devices
CN110659057B (zh) * 2019-09-24 2021-10-22 腾讯科技(深圳)有限公司 应用程序热更新方法、装置、存储介质及计算机设备
US10848382B1 (en) 2019-09-26 2020-11-24 BitSight Technologies, Inc. Systems and methods for network asset discovery and association thereof with entities
US11032244B2 (en) 2019-09-30 2021-06-08 BitSight Technologies, Inc. Systems and methods for determining asset importance in security risk management
US11270000B1 (en) * 2019-11-07 2022-03-08 Trend Micro Incorporated Generation of file digests for detecting malicious executable files
CN111221610B (zh) * 2020-01-03 2023-07-04 建信金融科技有限责任公司 一种页面元素采集方法和装置
US10791140B1 (en) 2020-01-29 2020-09-29 BitSight Technologies, Inc. Systems and methods for assessing cybersecurity state of entities based on computer network characterization
US10893067B1 (en) 2020-01-31 2021-01-12 BitSight Technologies, Inc. Systems and methods for rapidly generating security ratings
US10764298B1 (en) 2020-02-26 2020-09-01 BitSight Technologies, Inc. Systems and methods for improving a security profile of an entity based on peer security profiles
US11023585B1 (en) 2020-05-27 2021-06-01 BitSight Technologies, Inc. Systems and methods for managing cybersecurity alerts
US11716350B2 (en) * 2020-06-23 2023-08-01 IronNet Cybersecurity, Inc. Systems and methods of detecting anomalous websites
US11122073B1 (en) 2020-12-11 2021-09-14 BitSight Technologies, Inc. Systems and methods for cybersecurity risk mitigation and management
US11882152B2 (en) * 2021-07-30 2024-01-23 Bank Of America Corporation Information security system and method for phishing website identification based on image hashing
CN113688049B (zh) * 2021-08-31 2023-06-23 中国平安财产保险股份有限公司 基于录入信息的可回溯性检测方法、装置、设备及介质
CN114363082B (zh) * 2022-01-12 2024-05-03 南昌首页科技股份有限公司 网络攻击检测方法、装置、设备及计算机可读存储介质
US11934523B1 (en) * 2022-12-01 2024-03-19 Flexxon Pte. Ltd. System and method for securing data files

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2199940A2 (en) * 2008-12-18 2010-06-23 Symantec Corporation Methods and systems for detecting man-in-the-browser attacks
US20110185421A1 (en) * 2010-01-26 2011-07-28 Silver Tail Systems, Inc. System and method for network security including detection of man-in-the-browser attacks
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US20120198528A1 (en) * 2011-02-01 2012-08-02 Symbiotic Technologise Pty Ltd Methods and systems to detect attacks on internet transactions
US8826439B1 (en) * 2011-01-26 2014-09-02 Symantec Corporation Encoding machine code instructions for static feature based malware clustering
WO2015112301A1 (en) * 2014-01-24 2015-07-30 Mcafee, Inc. Automatic placeholder finder-filler

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3903613B2 (ja) 1998-11-04 2007-04-11 富士ゼロックス株式会社 検索装置及び検索プログラムを記録したコンピュータ読み取り可能な記録媒体
CN1176432C (zh) * 1999-07-28 2004-11-17 国际商业机器公司 提供本国语言查询服务的方法和系统
US6611925B1 (en) * 2000-06-13 2003-08-26 Networks Associates Technology, Inc. Single point of entry/origination item scanning within an enterprise or workgroup
JP4652741B2 (ja) * 2004-08-02 2011-03-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 異常検出装置、異常検出方法、異常検出プログラム、及び記録媒体
US7574409B2 (en) * 2004-11-04 2009-08-11 Vericept Corporation Method, apparatus, and system for clustering and classification
JP5208001B2 (ja) 2008-06-09 2013-06-12 ヤフー株式会社 ベクトルデータ検索装置
KR20100078081A (ko) * 2008-12-30 2010-07-08 (주) 세인트 시큐리티 커널 기반 시스템 행위 분석을 통한 알려지지 않은 악성코드 탐지 시스템 및 방법
US20100299430A1 (en) * 2009-05-22 2010-11-25 Architecture Technology Corporation Automated acquisition of volatile forensic evidence from network devices
JP2012088803A (ja) 2010-10-15 2012-05-10 Univ Of Aizu 悪性ウェブコード判別システム、悪性ウェブコード判別方法および悪性ウェブコード判別用プログラム
CN102811213A (zh) * 2011-11-23 2012-12-05 北京安天电子设备有限公司 基于模糊哈希算法的恶意代码检测系统及方法
US9386028B2 (en) * 2012-10-23 2016-07-05 Verint Systems Ltd. System and method for malware detection using multidimensional feature clustering
US20140201208A1 (en) * 2013-01-15 2014-07-17 Corporation Symantec Classifying Samples Using Clustering
US9225737B2 (en) 2013-03-15 2015-12-29 Shape Security, Inc. Detecting the introduction of alien content
US9264444B2 (en) * 2013-05-21 2016-02-16 Rapid7, Llc Systems and methods for determining an objective security assessment for a network of assets
US20150033336A1 (en) * 2013-07-24 2015-01-29 Fortinet, Inc. Logging attack context data
KR101632929B1 (ko) * 2014-06-16 2016-06-23 주식회사 예티소프트 단말, 및 이를 이용한 웹 페이지 위변조 검증 시스템 및 방법
US9979748B2 (en) * 2015-05-27 2018-05-22 Cisco Technology, Inc. Domain classification and routing using lexical and semantic processing
US9923916B1 (en) * 2015-06-17 2018-03-20 Amazon Technologies, Inc. Adaptive web application vulnerability scanner
US20170337376A1 (en) * 2016-05-19 2017-11-23 Scot Anthony Reader Adaptive Heuristic Behavioral Policing of Executable Objects
RU2652451C2 (ru) * 2016-09-08 2018-04-26 Акционерное общество "Лаборатория Касперского" Способы обнаружения аномальных элементов веб-страниц

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2199940A2 (en) * 2008-12-18 2010-06-23 Symantec Corporation Methods and systems for detecting man-in-the-browser attacks
US20110185421A1 (en) * 2010-01-26 2011-07-28 Silver Tail Systems, Inc. System and method for network security including detection of man-in-the-browser attacks
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US8826439B1 (en) * 2011-01-26 2014-09-02 Symantec Corporation Encoding machine code instructions for static feature based malware clustering
US20120198528A1 (en) * 2011-02-01 2012-08-02 Symbiotic Technologise Pty Ltd Methods and systems to detect attacks on internet transactions
WO2015112301A1 (en) * 2014-01-24 2015-07-30 Mcafee, Inc. Automatic placeholder finder-filler

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3547646A1 (en) * 2018-03-30 2019-10-02 AO Kaspersky Lab System and method of detecting a modification of a web resource
RU2702081C2 (ru) * 2018-03-30 2019-10-03 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения модификации веб-ресурса
CN110321702A (zh) * 2018-03-30 2019-10-11 卡巴斯基实验室股份制公司 检测网络资源的修改的系统和方法
JP2019194832A (ja) * 2018-03-30 2019-11-07 エーオー カスペルスキー ラボAO Kaspersky Lab ウェブリソースの変更を検出するシステムおよび方法

Also Published As

Publication number Publication date
US20200092305A1 (en) 2020-03-19
CN107918733B (zh) 2021-06-04
JP6530786B2 (ja) 2019-06-12
CN107918733A (zh) 2018-04-17
US11038917B2 (en) 2021-06-15
JP2018063694A (ja) 2018-04-19
US20180103043A1 (en) 2018-04-12
US10505973B2 (en) 2019-12-10

Similar Documents

Publication Publication Date Title
RU2638710C1 (ru) Способы обнаружения вредоносных элементов веб-страниц
RU2610254C2 (ru) Система и способ определения измененных веб-страниц
US11188649B2 (en) System and method for classification of objects of a computer system
RU2654146C1 (ru) Система и способ обнаружения вредоносных файлов с использованием элементов статического анализа
RU2652451C2 (ru) Способы обнаружения аномальных элементов веб-страниц
CN111382434B (zh) 用于检测恶意文件的系统和方法
RU2637477C1 (ru) Система и способ обнаружения фишинговых веб-страниц
CN109768992B (zh) 网页恶意扫描处理方法及装置、终端设备、可读存储介质
US11212297B2 (en) Access classification device, access classification method, and recording medium
JP2019079493A (ja) 機械学習を用いる悪意のあるファイルを検出するシステムおよび方法
US20230353585A1 (en) Malicious traffic identification method and related apparatus
JP6708794B2 (ja) 判定装置、判定方法、および、判定プログラム
CN107566392B (zh) 一种报错型sql注入的检测方法、代理服务器和存储介质
JP6691240B2 (ja) 判定装置、判定方法、および、判定プログラム
CN109948335B (zh) 用于检测计算机系统中的恶意活动的系统和方法
EP3306511B1 (en) System and methods of detecting malicious elements of web pages
RU2659741C1 (ru) Способы обнаружения аномальных элементов веб-страниц на основании статистической значимости
EP3293661A1 (en) System and method for detecting anomalous elements of web pages
JP2020109611A (ja) コンピュータシステム内の悪意のあるアクティビティの源を検出するシステムおよび方法
RU2813242C1 (ru) Способ обнаружения фишинговых сайтов и система его реализующая
RU2811375C1 (ru) Система и способ формирования классификатора для обнаружения фишинговых сайтов при помощи хешей объектов DOM
RU2739833C1 (ru) Система и способ снижения нагрузки на сервис обнаружения вредоносных приложений
CN118054960A (zh) 基于图注意力神经网络的钓鱼网站检测方法、装置、设备及介质
CN115514539A (zh) 一种网络攻击的防护方法及装置、存储介质及电子设备