RU2702081C2 - Система и способ обнаружения модификации веб-ресурса - Google Patents

Система и способ обнаружения модификации веб-ресурса Download PDF

Info

Publication number
RU2702081C2
RU2702081C2 RU2018111479A RU2018111479A RU2702081C2 RU 2702081 C2 RU2702081 C2 RU 2702081C2 RU 2018111479 A RU2018111479 A RU 2018111479A RU 2018111479 A RU2018111479 A RU 2018111479A RU 2702081 C2 RU2702081 C2 RU 2702081C2
Authority
RU
Russia
Prior art keywords
web resource
web
resource
integrity
convolution
Prior art date
Application number
RU2018111479A
Other languages
English (en)
Other versions
RU2018111479A (ru
RU2018111479A3 (ru
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 RU2018111479A priority Critical patent/RU2702081C2/ru
Priority to US16/128,703 priority patent/US10878095B2/en
Priority to EP18199566.3A priority patent/EP3547646B1/en
Priority to JP2018199254A priority patent/JP6840708B2/ja
Priority to CN201811243638.2A priority patent/CN110321702A/zh
Publication of RU2018111479A publication Critical patent/RU2018111479A/ru
Publication of RU2018111479A3 publication Critical patent/RU2018111479A3/ru
Application granted granted Critical
Publication of RU2702081C2 publication Critical patent/RU2702081C2/ru
Priority to US16/951,014 priority patent/US11481489B2/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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
    • 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
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/561Virus type analysis
    • 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/565Static detection by checking file integrity
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Virology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Signal Processing (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioethics (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Изобретение относится к системе и способу обнаружения модификации веб-ресурса. Техническим результатом является расширение арсенала технических средств определения факта модификации веб-ресурса. Система обнаружения модификации веб-ресурса содержит: средство защиты веб-ресурса; средство исполнения веб-ресурса; средство выборки объектов; средство формирования образа веб-ресурса; средство анализа. Способ обнаружения модификации веб-ресурса содержит этапы, на которых: формируют на основании данных о структуре и содержимом веб-ресурса сценарий проверки целостности веб-ресурса; внедряют сформированный сценарий в упомянутый веб-ресурс; исполняют веб-ресурс; вычисляют по меньшей мере одну свертку веб-ресурса в соответствии со сценарием проверки целостности веб-ресурса; формируют образ веб-ресурса на основании по меньшей мере одной вычисленной свертки; определяют характеристики модификации веб-ресурса на основании сформированного образа веб-ресурса с использованием обученной модели проверки целостности; выносят решение о модификации веб-ресурса на основании определенных характеристик модификации веб-ресурса. 2 н. и 18 з.п. ф-лы, 3 ил.

Description

Область техники
Изобретение относится к антивирусным технологиям, а более конкретно к системам и способам обнаружения модификаций веб-ресурсов.
Уровень техники
Бурное развитие компьютерных технологий в последнее десятилетие, а также широкое распространение разнообразных вычислительных устройств (персональных компьютеров, ноутбуков, планшетов, смартфонов и т.д.) стали мощным стимулом для использования упомянутых устройств в разнообразных сферах деятельности и для огромного количества задач (от интернет-серфинга до банковских переводов и ведения электронного документооборота). Параллельно с ростом количества вычислительных устройств и программного обеспечения, работающего на этих устройствах, быстрыми темпами росло и количество вредоносных программ.
В настоящий момент существует огромное количество разновидностей вредоносных программ. Одни крадут с устройств пользователей их персональные и конфиденциальные данные (например, логины и пароли, банковские реквизиты, электронные документы). Другие формируют из устройств пользователей так называемые бот-сети (англ. botnet) для атак таких, как отказ в обслуживании (англ. DDoS - Distributed Denial of Service) на другие компьютеры или компьютерные сети или для перебора паролей методом грубой силы (англ. bruteforce). Третьи предлагают пользователям платный контент через навязчивую рекламу, платные подписки, отправку CMC на платные номера и т.д.
Различаются и способы внедрения вредоносных программ на компьютеры пользователей. Одни скачиваются и устанавливаются на сервера или клиенты (компьютеры пользователей) скрытно (например, с использованием уязвимостей программного обеспечения) или явно (например, с использованием технологий социальной инженерии силами самих пользователей). Другие встраиваются в перехватываемые на третьей стороне данные, передаваемые между серверами и клиентами.
Одними из популярных объектов атак вредоносных программ являются веб-ресурсы (сайты банков, результаты запросов к серверам и т.д.), цель атак - конфиденциальные данные пользователей (логины и пароли, номера счетов и т.д.), вычислительные ресурсы (используемые для атак на другие компьютеры, например, участия в DDOS атаках, несанкционированных вычисления, например, добыча криптовалют и т.д.) и т.п. Активность описанных атак начинается с подмены данных, передаваемых между серверами и клиентами (например, подмена содержимого личного кабинета банка на поддельный личный кабинет, встраивание вредоносных сценариев и т.д.).
Основным элементом борьбы с описанным видом атак является определение модификации передаваемых данных веб-ресурсов, для чего применяют разнообразные технологии, в том числе:
• сигнатурный анализ, в результате которого пытаются определить модификации веб-ресурсов на основании сравнения с заранее заданными шаблонами веб-ресурсов;
• эвристический анализ, в результате которого пытаются определить модификации веб-ресурсов на основании проверки выполнения заранее заданных правил формирования веб-ресурсов;
• черные и белые списки, используя которые пытаются определить вставки ссылок и адресов в веб-ресурсы.
В патентной публикации RU2638710 описана технология обнаружения вредоносных элементов веб-сайта. С этой целью собирают на клиенте (компьютере пользователя) сведения о веб-сайте (содержимое веб-сайта), передают на сервер и анализируют собранные данные и сравнивают с заранее подготовленной статистической моделью вредоносных элементов вебстраниц. Данные и упомянутую статистическую модель преобразуют в многомерные вектора, между которыми определяют схожесть как критерий «вредоносности» элементов веб-сайта.
Хотя описанная выше технология обнаружения хорошо справляется с обнаружением известных вредоносных элементов веб-сайтов, она менее эффективно справляется с задачами обнаружения неизвестных модификаций веб-сайтов. Кроме того, в описанной технологии для анализа от клиентов на сервера могут передаваться персональные данные пользователей (которые могут содержаться в элементах веб-сайтов). Такая передача данных потенциально уязвима и может считаться незаконной по законодательствам некоторых стран.
Настоящее изобретение позволяет решать задачу обнаружения модификации веб-ресурса.
Раскрытие изобретения
Изобретение предназначено для обеспечения информационной безопасности данных.
Технический результат настоящего изобретения заключается в определении факта модификации веб-ресурса за счет анализа образа веб-ресурса.
Данные результаты достигаются с помощью использования системы обнаружения модификации веб-ресурса, содержащего по меньшей мере один объект, которая содержит средство защиты веб-ресурса, предназначенное для: формирования на основании данных о структуре и содержимом веб-ресурса сценария проверки целостности веб-ресурса, при этом сценарий проверки целостности веб-ресурса включает определение характеристик объектов упомянутого веб-ресурса; внедрения сформированного сценария проверки целостности веб-ресурса в упомянутый веб-ресурс; средство исполнения веб-ресурса, предназначенное для исполнения веб-ресурса; средство выборки объектов, предназначенное для: вычисления свертки по меньшей мере одного объекта веб-ресурса, при этом свертка определяется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс; передачи вычисленных сверток средству формирования образа веб-ресурса, средство формирования образа веб-ресурса, предназначенное для: формирования образа веб-ресурса на основании полученных сверток, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса; передачи сформированного образа веб-ресурса средству анализа; средство анализа, предназначенное для: определения характеристик модификации веб-ресурса на основании полученного образа веб-ресурса с использованием модели проверки целостности, при этом в качестве модели проверки целостности выступает совокупность правил вычисления вероятности модификации веб-ресурса; вынесения решения о модификации веб-ресурса на основании определенных характеристик модификации веб-ресурса.
В другом частном случае реализации системы упомянутая система обнаружения модификации веб-ресурса представляет собой клиент-серверную архитектуру, при этом на стороне клиента функционирует средство исполнения веб-ресурса, средство выборки объектов, на стороне сервера -средство защиты веб-ресурса, средство формирования образа веб-ресурсов, средство анализа.
Еще в одном частном случае реализации системы в качестве характеристик объекта веб-ресурса выступает по меньшей мере: параметры, описывающие объект веб-ресурса среди совокупности всех объектов упомянутого веб-ресурса; правила формирования свертки объекта веб-ресурса; свертка объекта веб-ресурса.
В другом частном случае реализации системы свертка объекта веб-ресурса включает по меньшей мере: свертку параметров, описывающих объект веб-ресурса; свертку данных, содержащихся в объекте веб-ресурса.
Еще в одном частном случае реализации системы исполнение веб-ресурса включает в себя по меньшей мере: выполнение сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс; анализ веб-ресурса: интерпретацию веб-ресурса; визуализацию веб-ресурса.
В другом частном случае реализации системы в качестве объектов веб-ресурса выступают по меньшей мере: сценарии; формы; HTML данные; XHR запросы; DOM события.
Еще в одном частном случае реализации системы средство выборки дополнительно предназначено для выборки по меньшей мере одного объекта из веб-ресурса, при этом выборка объекта из веб-ресурса выполняется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс.
В другом частном случае реализации системы в качестве характеристик модификации веб-ресурса выступает по меньшей мере: вероятность того, что веб-ресурс был модифицирован в том числе по меньшей мере: для заранее заданных групп пользователей веб-ресурса; для конкретного пользователя веб-ресурса; параметры модификации веб-ресурса: способ модификации веб-ресурса; данные, используемые при модификации веб-ресурса.
Еще в одном частном случае реализации системы анализ веб-ресурса осуществляется в течении онлайн-сессии, во время которой исполняется упомянутый веб-ресурс.
В другом частном случае реализации системы дополнительно присутствует средство сбора статистики, предназначенное для машинного обучения модели проверки целостности на основании образа веб-ресурса, сформированного по меньшей мере по: ранее проанализированным веб-ресурсам; анализируемому веб-ресурсу до того, как он был исполнен.
Данные результаты достигаются с помощью использования способа обнаружения модификации веб-ресурса, при этом способ содержит этапы, которые реализуются с помощью средств из системы обнаружения модификации веб-ресурса, и на которых: формируют на основании данных о структуре и содержимом веб-ресурса сценарий проверки целостности веб-ресурса, при этом сценарий проверки целостности веб-ресурса представляет собой описание процесса вычисления характеристик объектов упомянутого веб-ресурса; внедряют сформированный сценарий проверки целостности веб-ресурса в упомянутый веб-ресурс; исполняют веб-ресурс; вычисляют по меньшей мере одну свертку веб-ресурса в соответствии со сценарием проверки целостности веб-ресурса, внедренного в исполняемый веб-ресурс; формируют образ веб-ресурса на основании по меньшей мере одной вычисленной свертки, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса; определяют характеристики модификации веб-ресурса на основании сформированного образа веб-ресурса с использованием обученной модели проверки целостности, при этом в качестве модели проверки целостности выступает совокупность правил вычисления вероятности модификации веб-ресурса; выносят решение о модификации веб-ресурса на основании определенных характеристик модификации веб-ресурса.
В другом частном случае реализации способа упомянутый способ обнаружения модификации веб-ресурса выполняется на клиент-серверной архитектуре, при этом на стороне клиента выполняются этапы в), г), на стороне сервера - этапы а), б), д) - ж).
Еще в одном частном случае реализации способа в качестве характеристик объекта веб-ресурса выступает по меньшей мере: параметры, описывающие объект веб-ресурса среди совокупности всех объектов упомянутого веб-ресурса; правила формирования свертки объекта веб-ресурса; свертка объекта веб-ресурса.
В другом частном случае реализации способа свертка объекта веб-ресурса включает по меньшей мере: свертку параметров, описывающих объект веб-ресурса; свертку данных, содержащихся в объекте веб-ресурса.
Еще в одном частном случае реализации способа исполнение веб-ресурса включает в себя по меньшей мере: выполнение сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс; анализ веб-ресурса: интерпретацию веб-ресурса; визуализацию веб-ресурса.
В другом частном случае реализации способа в качестве объектов веб-ресурса выступают по меньшей мере: сценарии; формы; HTML данные; XHR запросы; DOM события.
Еще в одном частном случае реализации способа средство выборки дополнительно предназначено для выборки по меньшей мере одного объекта из веб-ресурса, при этом выборка объекта из веб-ресурса выполняется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс.
В другом частном случае реализации способа в качестве характеристик модификации веб-ресурса выступает по меньшей мере: вероятность того, что веб-ресурс был модифицирован в том числе по меньшей мере: для заранее заданных групп пользователей веб-ресурса; для конкретного пользователя веб-ресурса; параметры модификации веб-ресурса: способ модификации веб-ресурса; данные, используемые при модификации веб-ресурса.
Еще в одном частном случае реализации способа анализ веб-ресурса осуществляется в течении онлайн-сессии, во время которой исполняется упомянутый веб-ресурс.
В другом частном случае реализации способа дополнительно обучают модель проверки целостности на основании образа веб-ресурса, сформированного по меньшей мере по: ранее проанализированным веб-ресурсам; анализируемому веб-ресурсу до того, как он был исполнен.
Краткое описание чертежей
Фиг. 1 представляет пример структурную схему системы обнаружения модификации веб-ресурса.
Фиг. 2 представляет пример структурной схемы способа обнаружения модификации веб-ресурса.
Фиг. 3 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
Фиг. 1 представляет пример структурную схему системы обнаружения модификации веб-ресурса.
Структурная схема системы обнаружения модификации веб-ресурса содержит клиент 101, сервер 102, веб-ресурс 111 (который может принимать одно из нескольких состояний, а именно исходный веб-ресурс 111А, защищенный веб-ресурс 111В, модифицированный веб-ресурс 111С, сформированный веб-ресурс 111D), сценарий проверки целостности веб-ресурса 112, модифицированные данные веб-ресурса 113, средство защиты веб-ресурса 110, средство исполнения веб-ресурса 120, средство выборки объектов 130, средство формирования образа веб-ресурса 140, средство анализа 150, модель проверки целостности 151, средство сбора статистики 160.
В одном из вариантов реализации система обнаружения модификации веб-ресурса представляет собой клиент-серверную архитектуру, при этом на стороне клиента 101 функционирует средство исполнения веб-ресурса 120, средство выборки объектов 130, на стороне сервера 102 - средство защиты веб-ресурса 110, средство формирования образа веб-ресурсов 140, средство анализа 150, средство сбора статистики 160.
Например, в качестве клиента 101 может выступать компьютер или мобильный телефон пользователя, на котором работает браузер, и с помощью упомянутого браузера пользователь просматривает страницу личного кабинета пользователя, код которой был загружен с сервера 102 банка.
Еще в одном из вариантов реализации в качестве веб-ресурса 111 выступает интернет-сайт, содержащий по меньшей мере одну страницу, при этом страница содержит собой по меньшей мере:
• HTML код, содержащий объекты веб-ресурса;
• мультимедиа-ресурсы, хранящиеся на сервере 102 (например, ссылки на изображения, аудио- и видеофайлы или непосредственно изображения, аудио- и видеофайлы, записанные на странице в виде
url ('data: image/png;base64, …'));
• файлы сценариев;
• файлы листов стилей (англ. CSS, Cascading Style Sheets).
Например, страница личного кабинета пользователя содержит HTML код, описывающий структуру и содержимое страницы, изображения, размещенные в личном кабинете пользователя (к примеру, логотип банка), Javascript сценарии, выполняющие проверку корректности заполнения форм и т.д.
Еще в одном из вариантов реализации объекты веб-ресурса 111 по меньшей мере:
• содержатся в веб-ресурсе 111 (например, в исходном веб-ресурсе 111А);
• создаются при выполнении веб-ресурса 111 (например, сформированного веб-ресурса 111D).
Например, в исходном веб-ресурсе 111А может содержаться сценарий, отвечающий за формирование элементов страницы (к примеру, формы), а при выполнении сформированного веб-ресурса 111D, в оперативной памяти клиента 101 могут находиться сформированные формы (в DOM-модели).
Еще в одном из вариантов реализации в качестве объектов веб-ресурса 111 выступают по меньшей мере:
• сценарии;
• формы;
• HTML данные;
• XHR (XMLHttpRequest) запросы;
• DOM события.
Например, сценарии могут быть написаны на языке JavaScript.
Еще в одном из вариантов реализации работа с веб-ресурсом 111 происходит следующим образом:
• изначально на сервере 102 формируется исходный веб-ресурс 111А, являющийся безопасным и не содержащий никаких вредоносных модификаций;
• затем формируется защищенный веб-ресурс 111В для чего в исходный веб-ресурс 111А внедряется сформированный сценарий проверки целостности веб-ресурса 112;
• затем защищенный веб-ресурс 111В передается для исполнения на клиент 101, при этом на любом из следующих этапов:
Figure 00000001
при передаче защищенного веб-ресурса 111В с сервера 102 на клиент 101;
Figure 00000002
при исполнении защищенного веб-ресурса 111В на клиенте 101;
происходит модификация веб-ресурса вредоносным приложением, в результате которых часть данных 113 защищенного веб-ресурса 111В модифицируется, в следствии чего формируется модифицированный веб-ресурс 111С;
• затем формируется сформированный веб-ресурс 111D для чего исполняется модифицированный веб-ресурс 111С.
Описываемая система предназначена для определения факта модификации исходного веб-ресурса 111А на основании анализа сформированного веб-ресурса 111D.
Средство защиты веб-ресурса 110 предназначено для:
• формирования на основании данных о структуре и содержимом веб-ресурса 111 сценария проверки целостности веб-ресурса 112, при этом сценарий проверки целостности веб-ресурса 112 включает определение характеристик объектов упомянутого веб-ресурса 111;
• внедрения сформированного сценария проверки целостности веб-ресурса 112 в упомянутый веб-ресурс 111.
В одном из вариантов реализации в качестве характеристик объекта веб-ресурса 111 выступает по меньшей мере:
• один или несколько параметров, описывающих объект веб-ресурса 111 среди совокупности всех объектов упомянутого веб-ресурса 111;
• правило формирования свертки объекта веб-ресурса 111;
• свертка объекта веб-ресурса 111.
Еще в одном из вариантов реализации свертка объекта веб-ресурса 111 включает по меньшей мере:
• свертку параметров, описывающих объект веб-ресурса 111;
• свертку данных, содержащихся в объекте веб-ресурса 111.
Еще в одном из вариантов реализации сценарий проверки целостности веб-ресурса 112 представляет собой ECMAScript сценарий (например, сценарий, написанный на языке JavaScript).
Еще в одном из вариантов реализации сценарий проверки целостности веб-ресурса 112 представляет собой расширение для браузера, который исполняет соответствующий веб-ресурс.
Еще в одном из вариантов реализации сценария проверки целостности веб-ресурса 112 формируется заранее (до анализа веб-ресурса 111), а при анализе веб-ресурса 111 формируются входные параметры для работы сценария проверки целостности веб-ресурса 112, при этом сам сценарий проверки целостности веб-ресурса 112 может быть одним и тем же для разных веб-ресурсов.
Средство исполнения веб-ресурса 120 предназначено для исполнения веб-ресурса 111.
В одном из вариантов реализации исполнение веб-ресурса 111 включает в себя по меньшей мере:
• выполнение сценария проверки целостности веб-ресурса 112, внедренного в упомянутый веб-ресурс 111;
• анализ веб-ресурса 111:
• интерпретацию веб-ресурса 111;
• визуализацию веб-ресурса 111.
Еще в одном из вариантов реализации исполнение веб-ресурса производится браузером, работающим на клиенте 101, либо любым приложением, использующим данные веб-ресурса и способным выполнять сценарий проверки целостности веб-ресурса 112, внедренным в упомянутый веб-ресурс.
Средство выборки объектов 130 предназначено для:
• определения свертки по меньшей мере одного объекта веб-ресурса 111, при этом свертка определяется при выполнении сценария проверки целостности веб-ресурса 112, внедренного в упомянутый веб-ресурс 111;
• передачи вычисленных сверток средству формирования образа веб-ресурса 140.
В одном из вариантов реализации средство выборки 130 дополнительно предназначено для выборки по меньшей мере одного объекта из веб-ресурса 111, при этом выборка объекта из веб-ресурса 111 выполняется при выполнении сценария проверки целостности веб-ресурса 112, внедренного в упомянутый веб-ресурс 111.
Еще в одном из вариантов реализации в качестве свертки объекта веб-ресурса выступает по меньшей мере:
• нечеткий хэш (англ. fuzzy hash);
• LHS (англ. locality-sensitive hashing).
Например, нечеткий хэш может строиться для любого текста, выделенного из веб-объекта, при этом в качестве текста может выступать:
• JavaScript сценарий, извлеченный из innerHTML свойств тега script;
• JavaScript сценарий, скачанный AJAX запросом по сетевому адресу сетевого ресурса (URL) сценария;
• JavaScript сценарий, полученный вызовом toString() на функции, которая передается в setlnterval;
• HTML представление DOM элемента из свойства outerHTML;
• текущая страница скачанная через дополнительный AJAX запрос.
Алгоритм построения хэша параметризуется длинной n-граммы и нахлестом:
• текст разбивается на n-граммы по словам с заданной длиной и нахлестом;
• по каждой n-грамме строится CRC32;
• получившийся массив целых чисел обрабатывается универсальной хэш функцией.
На выходе получается массив из 32, 64 или 128 чисел в зависимости от набора коэффициентов.
В одном из вариантов реализации хэш-функции ее формула имеет вид:
h(x)=(ах+b)%с
Еще в одном из вариантов реализации каждый тип объекта из веб-ресурса 111 анализируется индивидуальным способом, отличным от способов, которыми анализируются другие типы объектов.
Например, при анализе JavasScript сценариев применяется метод для поиска вредоносных сценариев, а также сценариев нетипичных для страниц банка:
• выбирается сценарий, если он содержит атрибут src;
• выбранные сценарии, где атрибут src представляет из себя data-url, интерпретируются как inlinescipts (для этого предварительно декодируется data-url).
Например:
Figure 00000003
• используется несколько представлений JavaScript:
Figure 00000004
сценарий разбивается на строки по разделителю переноса строки [\r\n];
Figure 00000005
сценарий разбивается на токены;
Для разбивания скрипта на токены используются известные из уровня техники разделители между токенами (наример, «\r\n\t»).
Figure 00000006
сценарий разбивается на символы;
• по токенам строится hash-сигнатура с параметрами для построения n-грамм:
Figure 00000007
длина - 11 токенов,
Figure 00000008
нахлест - 4 токена,
• по строкам сценария строится hash-сигнатура с параметрами для построения n-грамм:
Figure 00000009
длина - 7 строк,
Figure 00000010
нахлест - 3 строки,
• составляются списки вредоносных вызовов JavaScript:
Например, ниже приведен пример списка подобных вызовов:
Figure 00000011
• составляют список ключевых слов JavaScript;
Например, данные слова являются ключевыми:
Figure 00000012
• считают первичные признаки;
• для каждого потенциально вредоносного вызова считают сколько раз он встречался в токенах;
• строят результирующие данные (например, в JSON)
Например:
Figure 00000013
Например, для анализа XHR запросов:
• перехватывают методы для выполнения XHR: XMLHttpRequest.prototype.open, XMLHttpRequest.prototype.send;
• для каждого перехваченного вызова DOM level 3 записывают время, тип события, url, stacktrace;
• строят результирующие данные (например, в JSON)
Например:
Figure 00000014
Средство формирования образа веб-ресурса 140 предназначено для:
• формирования образа веб-ресурса на основании полученных сверток, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса 111;
• передачи сформированного образа веб-ресурса средству анализа 150.
Средство анализа 150 предназначено для:
• определения характеристик модификации 113 веб-ресурса 111 на основании полученного образа веб-ресурса с использованием модели проверки целостности 151, при этом в качестве модели проверки целостности 151 выступает совокупность правил вычисления вероятности модификации веб-ресурса 111;
• вынесения решения о модификации веб-ресурса 111 на основании определенных характеристик модификации 113 веб-ресурса 111.
В одном из вариантов реализации в качестве характеристик модификации 113 веб-ресурса 111 выступает по меньшей мере:
• вероятность того, что веб-ресурс 111 был модифицирован в том числе по меньшей мере:
Figure 00000015
для заранее заданных групп пользователей веб-ресурса 111;
Figure 00000016
для конкретного пользователя веб-ресурса 111;
• параметры модификации 113 веб-ресурса 111:
Figure 00000017
способ модификации 113 веб-ресурса 111;
Figure 00000018
данные, используемые при модификации веб-ресурса 111.
В одном из вариантов реализации анализ веб-ресурса 111 осуществляется в течении онлайн-сессии, во время которой исполняется упомянутый веб-ресурс 111.
Средство сбора статистики 160 предназначено для машинного обучения модели проверки целостности 151 на основании образа веб-ресурса, сформированного по меньшей мере по:
• ранее проанализированным веб-ресурсам 111;
• анализируемому веб-ресурсу 111 до того, как он был исполнен.
Фиг. 2 представляет пример структурной схемы способа обнаружения модификации веб-ресурса.
Структурная схема способа обнаружения модификации веб-ресурса содержит этап 210, на котором формируют сценарий проверки целостности веб-ресурса, этап 220, на котором внедряют сформированный сценарий проверки целостности веб-ресурса, этап 230, на котором исполняют веб-ресурс, этап 240, на котором вычисляют свертки веб-ресурса, этап 250, на котором формируют образ веб-ресурса, этап 260, на котором определяют характеристики модификации веб-ресурса, этап 270, на котором выносят решение о модификации веб-ресурса, этап 280, на котором обучают модель проверки целостности.
На этапе 210 формируют на основании данных о структуре и содержимом веб-ресурса 111 сценарий проверки целостности веб-ресурса 112, при этом сценарий проверки целостности веб-ресурса 112 представляет собой описание процесса вычисления характеристик объектов упомянутого веб-ресурса 111.
На этапе 220 внедряют сформированный сценарий проверки целостности веб-ресурса 112 в упомянутый веб-ресурс 111.
На этапе 230 исполняют веб-ресурс 111. С этой целью загруженный на клиент 101 веб-ресурс предварительно анализируется (например, для страницы производится синтаксический анализ), по результатам которого загружаются дополнительные данные (например, из Интернет по выделенным адресам загружаются изображения), выполняются сценарии, содержащиеся в веб-ресурсе (например, JavaScript сценарии), формируются элементы страницы (например, формы), на основании сформированных элементов страницы исполняемый веб-ресурс 111 визуализируется, кроме того дополнительно собираются данные в процессе выполнения веб-ресурса 111 (например, перехватываются события, создаваемые при формировании и использования элементов страницы).
На этапе 240 вычисляют по меньшей мере одну свертку веб-ресурса 111 в соответствии со сценарием проверки целостности веб-ресурса 112, внедренного в исполняемый веб-ресурс 111.
На этапе 250 формируют образ веб-ресурса на основании по меньшей мере одной вычисленной свертки, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса 111.
На этапе 260 определяют характеристики модификации 113 веб-ресурса 111 на основании сформированного образа веб-ресурса с использованием обученной модели проверки целостности 151, при этом в качестве модели проверки целостности 151 выступает совокупность правил вычисления вероятности модификации веб-ресурса 111.
На этапе 270 выносят решение о модификации веб-ресурса 111 на основании определенных характеристик модификации 113 веб-ресурса 111.
На этапе 280 обучают модель проверки целостности 151 на основании образа веб-ресурса, сформированного по меньшей мере по:
• ранее проанализированным веб-ресурсам 111;
• анализируемому веб-ресурсу 111 до того, как он был исполнен.
Фиг. 3 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 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, представленного на Фиг. 3. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.

Claims (84)

1. Система обнаружения модификации веб-ресурса, содержащего по меньшей мере один объект, которая содержит:
а) средство защиты веб-ресурса, предназначенное для:
• формирования на основании данных о структуре и содержимом веб-ресурса сценария проверки целостности веб-ресурса, при этом сценарий проверки целостности веб-ресурса включает определение характеристик объектов упомянутого веб-ресурса;
• внедрения сформированного сценария проверки целостности веб-ресурса в упомянутый веб-ресурс;
б) средство исполнения веб-ресурса, предназначенное для исполнения веб-ресурса;
в) средство выборки объектов, предназначенное для:
• вычисления свертки по меньшей мере одного объекта веб-ресурса, при этом свертка определяется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс;
• передачи вычисленных сверток средству формирования образа веб-ресурса;
г) средство формирования образа веб-ресурса, предназначенное для:
• формирования образа веб-ресурса на основании полученных сверток, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса;
• передачи сформированного образа веб-ресурса средству анализа;
д) средство анализа, предназначенное для:
• определения характеристик модификации веб-ресурса на основании полученного образа веб-ресурса с использованием модели проверки целостности, при этом в качестве модели проверки целостности выступает совокупность правил вычисления вероятности модификации веб-ресурса;
• вынесения решения о модификации веб-ресурса на основании определенных характеристик модификации веб-ресурса.
2. Система по п. 1, в которой система обнаружения модификации веб-ресурса представляет собой клиент-серверную архитектуру, при этом на стороне клиента функционирует средство исполнения веб-ресурса, средство выборки объектов, на стороне сервера - средство защиты веб-ресурса, средство формирования образа веб-ресурсов, средство анализа.
3. Система по п. 1, в которой в качестве характеристик объекта веб-ресурса выступают по меньшей мере:
• параметры, описывающие объект веб-ресурса среди совокупности всех объектов упомянутого веб-ресурса;
• правила формирования свертки объекта веб-ресурса;
• свертка объекта веб-ресурса.
4. Система по п. 3, в которой свертка объекта веб-ресурса включает по меньшей мере:
• свертку параметров, описывающих объект веб-ресурса;
• свертку данных, содержащихся в объекте веб-ресурса.
5. Система по п. 1, в которой исполнение веб-ресурса включает в себя по меньшей мере:
• выполнение сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс;
• анализ веб-ресурса;
• интерпретацию веб-ресурса;
• визуализацию веб-ресурса.
6. Система по п. 1, в которой в качестве объектов веб-ресурса выступают по меньшей мере:
• сценарии;
• формы;
• HTML данные;
• XHR запросы;
• DOM события.
7. Система по п. 1, в которой средство выборки дополнительно предназначено для выборки по меньшей мере одного объекта из веб-ресурса, при этом выборка объекта из веб-ресурса выполняется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс.
8. Система по п. 1, в которой в качестве характеристик модификации веб-ресурса выступают по меньшей мере:
• вероятность того, что веб-ресурс был модифицирован в том числе по меньшей мере:
Figure 00000019
для заранее заданных групп пользователей веб-ресурса;
Figure 00000019
для конкретного пользователя веб-ресурса;
• параметры модификации веб-ресурса:
Figure 00000019
способ модификации веб-ресурса;
Figure 00000019
данные, используемые при модификации веб-ресурса.
9. Система по п. 1, в которой анализ веб-ресурса осуществляется в течение онлайн-сессии, во время которой исполняется упомянутый веб-ресурс.
10. Система по п. 1, в которой дополнительно присутствует средство сбора статистики, предназначенное для машинного обучения модели проверки целостности на основании образа веб-ресурса, сформированного по меньшей мере по:
• ранее проанализированным веб-ресурсам;
• анализируемому веб-ресурсу до того, как он был исполнен.
11. Способ обнаружения модификации веб-ресурса, при этом способ содержит этапы, которые реализуются с помощью средств из системы по п. 1 и на которых:
а) формируют на основании данных о структуре и содержимом веб-ресурса сценарий проверки целостности веб-ресурса, при этом сценарий проверки целостности веб-ресурса представляет собой описание процесса вычисления характеристик объектов упомянутого веб-ресурса;
б) внедряют сформированный сценарий проверки целостности веб-ресурса в упомянутый веб-ресурс;
в) исполняют веб-ресурс;
г) вычисляют по меньшей мере одну свертку веб-ресурса в соответствии со сценарием проверки целостности веб-ресурса, внедренного в исполняемый веб-ресурс;
д) формируют образ веб-ресурса на основании по меньшей мере одной вычисленной свертки, при этом образ веб-ресурса представляет собой векторное представление содержимого веб-ресурса;
е) определяют характеристики модификации веб-ресурса на основании сформированного образа веб-ресурса с использованием обученной модели проверки целостности, при этом в качестве модели проверки целостности выступает совокупность правил вычисления вероятности модификации веб-ресурса;
ж) выносят решение о модификации веб-ресурса на основании определенных характеристик модификации веб-ресурса.
12. Способ по п. 11, по которому способ обнаружения модификации веб-ресурса выполняется на клиент-серверной архитектуре, при этом на стороне клиента выполняются этапы в), г), на стороне сервера - этапы а), б), д) - ж).
13. Способ по п. 11, по которому в качестве характеристик объекта веб-ресурса выступают по меньшей мере:
• параметры, описывающие объект веб-ресурса среди совокупности всех объектов упомянутого веб-ресурса;
• правила формирования свертки объекта веб-ресурса;
• свертка объекта веб-ресурса.
14. Способ по п. 13, по которому свертка объекта веб-ресурса включает по меньшей мере:
• свертку параметров, описывающих объект веб-ресурса;
• свертку данных, содержащихся в объекте веб-ресурса.
15. Способ по п. 11, по которому исполнение веб-ресурса включает в себя по меньшей мере:
• выполнение сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс;
• анализ веб-ресурса;
• интерпретацию веб-ресурса;
• визуализацию веб-ресурса.
16. Способ по п. 11, по которому в качестве объектов веб-ресурса выступают по меньшей мере:
• сценарии;
• формы;
• HTML данные;
• XHR запросы;
• DOM события.
17. Способ по п. 11, по которому средство выборки дополнительно предназначено для выборки по меньшей мере одного объекта из веб-ресурса, при этом выборка объекта из веб-ресурса выполняется при выполнении сценария проверки целостности веб-ресурса, внедренного в упомянутый веб-ресурс.
18. Способ по п. 11, по которому в качестве характеристик модификации веб-ресурса выступают по меньшей мере:
• вероятность того, что веб-ресурс был модифицирован в том числе по меньшей мере:
Figure 00000019
для заранее заданных групп пользователей веб-ресурса;
Figure 00000019
для конкретного пользователя веб-ресурса;
• параметры модификации веб-ресурса:
Figure 00000019
способ модификации веб-ресурса;
Figure 00000019
данные, используемые при модификации веб-ресурса.
19. Способ по п. 11, по которому анализ веб-ресурса осуществляется в течение онлайн-сессии, во время которой исполняется упомянутый веб-ресурс.
20. Способ по п. 11, по которому дополнительно обучают модель проверки целостности на основании образа веб-ресурса, сформированного по меньшей мере по:
• ранее проанализированным веб-ресурсам;
• анализируемому веб-ресурсу до того, как он был исполнен.
RU2018111479A 2018-03-30 2018-03-30 Система и способ обнаружения модификации веб-ресурса RU2702081C2 (ru)

Priority Applications (6)

Application Number Priority Date Filing Date Title
RU2018111479A RU2702081C2 (ru) 2018-03-30 2018-03-30 Система и способ обнаружения модификации веб-ресурса
US16/128,703 US10878095B2 (en) 2018-03-30 2018-09-12 System and method of detecting a modification of a web resource
EP18199566.3A EP3547646B1 (en) 2018-03-30 2018-10-10 System and method of detecting a modification of a web resource
JP2018199254A JP6840708B2 (ja) 2018-03-30 2018-10-23 ウェブリソースの変更を検出するシステムおよび方法
CN201811243638.2A CN110321702A (zh) 2018-03-30 2018-10-24 检测网络资源的修改的***和方法
US16/951,014 US11481489B2 (en) 2018-03-30 2020-11-18 System and method for generating a representation of a web resource to detect malicious modifications of the web resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2018111479A RU2702081C2 (ru) 2018-03-30 2018-03-30 Система и способ обнаружения модификации веб-ресурса

Publications (3)

Publication Number Publication Date
RU2018111479A RU2018111479A (ru) 2019-09-30
RU2018111479A3 RU2018111479A3 (ru) 2019-09-30
RU2702081C2 true RU2702081C2 (ru) 2019-10-03

Family

ID=68056321

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018111479A RU2702081C2 (ru) 2018-03-30 2018-03-30 Система и способ обнаружения модификации веб-ресурса

Country Status (4)

Country Link
US (2) US10878095B2 (ru)
JP (1) JP6840708B2 (ru)
CN (1) CN110321702A (ru)
RU (1) RU2702081C2 (ru)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6848766B2 (ja) * 2017-08-23 2021-03-24 株式会社Jvcケンウッド データ改ざん検出装置、データ改ざん検出方法、および画像データのデータ構造
US20230053322A1 (en) * 2021-08-06 2023-02-16 Google Llc Script Classification on Computing Platform

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110239300A1 (en) * 2010-11-01 2011-09-29 Trusteer Ltd. Web based remote malware detection
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US20160065613A1 (en) * 2014-09-02 2016-03-03 Sk Infosec Co., Ltd. System and method for detecting malicious code based on web
RU2622870C2 (ru) * 2015-11-17 2017-06-20 Общество с ограниченной ответственностью "САЙТСЕКЬЮР" Система и способ оценки опасности веб-сайтов
RU2638710C1 (ru) * 2016-10-10 2017-12-15 Акционерное общество "Лаборатория Касперского" Способы обнаружения вредоносных элементов веб-страниц

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677481B1 (en) * 2008-09-30 2014-03-18 Trend Micro Incorporated Verification of web page integrity
US8495735B1 (en) * 2008-12-30 2013-07-23 Uab Research Foundation System and method for conducting a non-exact matching analysis on a phishing website
US9032519B1 (en) * 2012-10-29 2015-05-12 Amazon Technologies, Inc. Protecting websites from cross-site scripting
JP6274415B2 (ja) * 2014-02-27 2018-02-07 日立工機株式会社 電動工具
US9979748B2 (en) * 2015-05-27 2018-05-22 Cisco Technology, Inc. Domain classification and routing using lexical and semantic processing
RU2617654C2 (ru) * 2015-09-30 2017-04-25 Акционерное общество "Лаборатория Касперского" Система и способ формирования набора антивирусных записей, используемых для обнаружения вредоносных файлов на компьютере пользователя

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US20110239300A1 (en) * 2010-11-01 2011-09-29 Trusteer Ltd. Web based remote malware detection
US20160065613A1 (en) * 2014-09-02 2016-03-03 Sk Infosec Co., Ltd. System and method for detecting malicious code based on web
RU2622870C2 (ru) * 2015-11-17 2017-06-20 Общество с ограниченной ответственностью "САЙТСЕКЬЮР" Система и способ оценки опасности веб-сайтов
RU2638710C1 (ru) * 2016-10-10 2017-12-15 Акционерное общество "Лаборатория Касперского" Способы обнаружения вредоносных элементов веб-страниц

Also Published As

Publication number Publication date
CN110321702A (zh) 2019-10-11
US10878095B2 (en) 2020-12-29
US11481489B2 (en) 2022-10-25
RU2018111479A (ru) 2019-09-30
JP6840708B2 (ja) 2021-03-10
RU2018111479A3 (ru) 2019-09-30
JP2019194832A (ja) 2019-11-07
US20190303577A1 (en) 2019-10-03
US20210073384A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
JP6530786B2 (ja) Webページの悪意のある要素を検出するシステム及び方法
RU2679785C1 (ru) Система и способ классификации объектов
US10878090B2 (en) System and method of detecting malicious files using a trained machine learning model
US9860270B2 (en) System and method for determining web pages modified with malicious code
RU2606564C1 (ru) Система и способ блокировки выполнения сценариев
RU2659737C1 (ru) Система и способ управления вычислительными ресурсами для обнаружения вредоносных файлов
CN109271780B (zh) 机器学习恶意软件检测模型的方法、***和计算机可读介质
RU2739865C2 (ru) Система и способ обнаружения вредоносного файла
RU2624552C2 (ru) Способ обнаружения вредоносных файлов, исполняемых с помощью стековой виртуальной машины
RU2651196C1 (ru) Способ обнаружения аномальных событий по популярности свертки события
RU2654151C1 (ru) Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов
JP2019079493A (ja) 機械学習を用いる悪意のあるファイルを検出するシステムおよび方法
US10372907B2 (en) System and method of detecting malicious computer systems
RU2697958C1 (ru) Система и способ обнаружения вредоносной активности на компьютерной системе
US11481489B2 (en) System and method for generating a representation of a web resource to detect malicious modifications of the web resource
RU2673708C1 (ru) Система и способ машинного обучения модели обнаружения вредоносных файлов
JP7320462B2 (ja) アクセス権に基づいてコンピューティングデバイス上でタスクを実行するシステムおよび方法
RU2724800C1 (ru) Система и способ обнаружения источника вредоносной активности на компьютерной системе
RU2673711C1 (ru) Способ обнаружения аномальных событий на основании набора сверток безопасных событий
EP3252645A1 (en) System and method of detecting malicious computer systems
EP3547646B1 (en) System and method of detecting a modification of a web resource
Shahriar et al. Server-side code injection attack detection based on Kullback-Leibler distance
RU2757408C1 (ru) Система и способ формирования правила проверки файла на вредоносность
Kshetri et al. algoXSSF: Detection and analysis of cross-site request forgery (XSRF) and cross-site scripting (XSS) attacks via Machine learning algorithms
Frühwirt Automated discovery of secure website domains