RU2778460C1 - Method and apparatus for clustering phishing web resources based on an image of the visual content - Google Patents
Method and apparatus for clustering phishing web resources based on an image of the visual content Download PDFInfo
- Publication number
- RU2778460C1 RU2778460C1 RU2021114210A RU2021114210A RU2778460C1 RU 2778460 C1 RU2778460 C1 RU 2778460C1 RU 2021114210 A RU2021114210 A RU 2021114210A RU 2021114210 A RU2021114210 A RU 2021114210A RU 2778460 C1 RU2778460 C1 RU 2778460C1
- Authority
- RU
- Russia
- Prior art keywords
- contours
- image
- visual content
- cluster
- web resources
- Prior art date
Links
- 230000000007 visual effect Effects 0.000 title claims abstract description 125
- 239000011159 matrix material Substances 0.000 claims description 16
- 238000001914 filtration Methods 0.000 claims description 6
- 238000010845 search algorithm Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 18
- 230000000875 corresponding Effects 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 5
- 239000000126 substance Substances 0.000 abstract 1
- 238000000034 method Methods 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000006011 modification reaction Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- BUGBHKTXTAQXES-UHFFFAOYSA-N selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 description 2
- 229910052711 selenium Inorganic materials 0.000 description 2
- 239000011669 selenium Substances 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 229940116821 SSD Drugs 0.000 description 1
- 241000287433 Turdus Species 0.000 description 1
- 230000000903 blocking Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001010 compromised Effects 0.000 description 1
- 230000002596 correlated Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000001419 dependent Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 235000020061 kirsch Nutrition 0.000 description 1
- 238000011068 load Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical Effects 0.000 description 1
- 229920002239 polyacrylonitrile Polymers 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Abstract
Description
ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY
[0001] Настоящее техническое решение относится к области вычислительной техники, в частности к области информационной безопасности, а именно к способу и вычислительному устройству для кластеризации фишинговых веб-ресурсов на основе изображения визуального контента, с целью дальнейшей атрибуции фишинговых веб-сайтов, зеркал, заблокированных и/или запрещенных веб-сайтов.[0001] This technical solution relates to the field of computer technology, in particular to the field of information security, namely to a method and a computing device for clustering phishing web resources based on the image of visual content, with the aim of further attribution of phishing websites, mirrors, blocked and/or prohibited websites.
УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE INVENTION
[0002] Одним из самых широко распространенных видов вредоносных веб-ресурсов является фишинговые сайты. Их главная цель - получать конфиденциальные данные пользователей для совершения мошеннических действий.[0002] One of the most widespread types of malicious web resources is phishing sites. Their main goal is to obtain sensitive user data in order to commit fraudulent activities.
[0003] Принцип работы фишинговых сайтов заключается в копировании или подражании существующим сервисам каких-либо брендов, например, банков, платежных систем, электронной почты, социальных сетей, торговых марок, для добровольного получения конфиденциальных данных от пользователя (логин, пароль, почта, ФИО, номер документа, идентифицирующего личность, данные платежных карт, и т.д.).[0003] The principle of operation of phishing sites is to copy or imitate existing services of any brands, for example, banks, payment systems, e-mail, social networks, trademarks, in order to voluntarily receive confidential data from the user (login, password, mail, full name , ID document number, payment card details, etc.).
[0004] В качестве примера, но не ограничиваясь им, это может быть поддельный сайт дистанционного банковского обслуживания (ДБО), на котором пользователя побуждают различными психологическими приемами ввести регистрационные данные и/или сообщить дополнительную конфиденциальную информацию. После чего полученная информация используется мошенниками для кражи денежных средств пользователя или иных противоправных действий.[0004] As an example, but not limited to, this may be a fake remote banking (RBS) site, on which the user is encouraged by various psychological tricks to enter registration data and / or provide additional confidential information. After that, the information received is used by fraudsters to steal the user's funds or other illegal actions.
[0005] Стоит отметить, что имитация реальных сервисов может осуществляться также с целью заработка на рекламе, отображения недостоверной или запрещенной информации, а также в случае зеркала официального ресурса в целях незаконного распространения авторского или запрещенного контента. Все описанные действия могут нанести репутационный вред владельцам исходных веб-ресурсов или предоставлять незаконный доступ к нежелательному контенту.[0005] It is worth noting that imitation of real services can also be carried out for the purpose of making money on advertising, displaying false or prohibited information, and also in the case of a mirror of an official resource in order to illegally distribute copyrighted or prohibited content. All of the described actions may harm the reputation of the owners of the original web resources or provide illegal access to inappropriate content.
[0006] Технологии распространения фитинга позволяют создавать множество однотипных сайтов с помощью так называемых фишинговых наборов, что усложняет их своевременное выявление и блокировку.[0006] Fitting distribution technologies allow you to create many sites of the same type using so-called phishing kits, which complicates their timely detection and blocking.
[0007] Фишинговый набор (англ. Phishing Kit) - это архивный файл, содержащий скрипты, необходимые для создания и работы фишингового сайта. Такой инструмент позволяет злоумышленникам, не обладающим глубокими навыками программирования, быстро разворачивать сотни фишинговых страниц, часто используя их как «зеркала» друг друга. При блокировке одного такого сайта - мошенник активирует другой, при блокировке этого - следующий и так далее. Таким образом, фишинг-кит позволяет атакующим быстро возобновлять работу вредоносных ресурсов, обеспечивая собственную неуязвимость. Этим объясняется интерес к ним со стороны специалистов по кибербезопасности. Детектирование фишинговых наборов позволяет не только находить сотни и даже тысячи фишинговых страниц, но и, что более важно, может служить отправной точкой расследований с целью идентификации их разработчиков и привлечения их к ответственности.[0007] Phishing Kit is an archive file containing the scripts necessary to create and operate a phishing site. Such a tool allows attackers without deep programming skills to quickly deploy hundreds of phishing pages, often using them as "mirrors" of each other. If one such site is blocked, the fraudster activates another, if this one is blocked, the next one, and so on. Thus, a phishing kit allows attackers to quickly resume the operation of malicious resources, ensuring their own invulnerability. This explains the interest in them from cybersecurity specialists. Detection of phishing kits allows not only to find hundreds and even thousands of phishing pages, but more importantly, it can serve as a starting point for investigations in order to identify their authors and bring them to justice.
[0008] Стоит отметить, что для привлечения покупателей разработчики фишинговых наборов используют в них известные бренды с большой аудиторией, что в теории должно облегчить реализацию мошеннических схем для будущих владельцев таких наборов. В 2020 году наиболее часто использующимися в фишинговых наборах брендами были Amazon, Google, Instagram, Office 365 и PayPal, а на топ-3 интернет-площадок для торговли фишинговыми наборами был представлен Exploit, OGUsers и Crimenetwork.[0008] It is worth noting that in order to attract buyers, developers of phishing kits use well-known brands with a large audience in them, which in theory should make it easier for future owners of such kits to implement fraudulent schemes. In 2020, the most frequently used brands in phishing kits were Amazon, Google, Instagram, Office 365, and PayPal, while Exploit, OGUsers, and Crimenetwork were featured in the top 3 online marketplaces for trading phishing kits.
[0009] В простейшем случае идентификация фишинговых веб-ресурсов происходит на основе сравнения URL-адреса с базами данных скомпрометированных URL-адресов. Более сложные способы могут быть основаны на анализе структурных элементов страницы.[0009] In the simplest case, the identification of phishing web resources is based on a comparison of the URL with databases of compromised URLs. More complex methods can be based on the analysis of the structural elements of the page.
[0010] Из патента США №8856937 (опубл. 07.10.2014) известен способ и система для определения вредоносных веб-ресурсов. Этот известный способ включает создание и пополнение базы данных веб-ресурсов, содержащей легитимные веб-ресурсы, подозрительные веб-ресурсы и вредоносные веб-ресурсы. Классификация веб-ресурсов осуществляется на основе сравнения скриншотов веб-ресурсов с легитимными и фишинговыми веб-ресурсами, содержащимися в базе данных.[0010] From US patent No. 8856937 (publ. 07.10.2014) a method and system for detecting malicious web resources is known. This known method involves creating and updating a database of web resources containing legitimate web resources, suspicious web resources, and malicious web resources. Classification of web resources is based on comparison of screenshots of web resources with legitimate and phishing web resources contained in the database.
[0011] В патенте CN 101826105 В (опубл. 05.02.2019) описан метод обнаружения фишинговых страниц, основанный на сопоставлении элементов веб-страниц, а именно вычисления оптимального соответствия графов для поиска совпадающих пар функций среди различных сигнатур веб страниц. Метод также характеризуется определением внутренних весов признаков текста, характеристик изображения путем определения относительных весов среди сходства текста, и изображений при вычислении сходства веб-страниц с использованием анализа логарифмической регрессии.[0011] Patent CN 101826105 B (published 02/05/2019) describes a method for detecting phishing pages based on matching web page elements, namely, calculating the optimal matching of graphs to search for matching pairs of functions among different web page signatures. The method is also characterized by determining intrinsic weights of text features, image features by determining relative weights among text similarity, and images when computing web page similarity using log regression analysis.
[0012] Для ускорения процесса определения вредоносных веб-ресурсов, которое может быть осуществлено с использованием, например, систем и способов, раскрытых в приведенных выше документах из уровня техники, могут быть образованы кластеры веб-ресурсов, содержащие выборочную совокупность веб-ресурсов, которые в дальнейшем анализируют для выявления среди них, например, веб-ресурсов, вовлеченных в фишинг.[0012] To expedite the process of identifying malicious web resources, which can be done using, for example, the systems and methods disclosed in the prior art documents above, web resource clusters can be formed containing a sample of web resources that further analyzed to identify among them, for example, web resources involved in phishing.
[0013] В патентах US 10200381 В2 (опубл. 05.02.2019) и US 8381292 В1 (опубл. 19.02.2013) раскрываются методы защиты бренда от фишинга на основе сравнения профилей потенциально фишингового ресурса с базовыми (искомыми) шаблонами веб-страниц брендов.[0013] US 10200381 B2 (published Feb. 5, 2019) and US 8381292 B1 (published Feb. 19, 2013) disclose methods for protecting a brand from phishing based on comparing the profiles of a potentially phishing resource with the basic (desired) templates of brand web pages.
[0014] Один из недостатков известных устройств и способов для кластеризации веб-ресурсов, например, раскрытых в источнике US 2015/0067839 (опубл. 05.03.2015), состоит в чрезмерном количестве анализируемых подозрительных веб-ресурсов, содержащихся в полученных кластерах, что в свою очередь обуславливает чрезмерные трудоемкость и/или ресурсоемкость проверки всех этих подозрительных веб-ресурсов в полученных кластерах для выявления среди них веб-ресурсов, являющихся копиями оригинальных веб-ресурсов или содержащих по меньшей мере некоторые элементы содержимого оригинального веб-ресурса, с обеспечением их последующего анализа на вовлеченность в фишинговую деятельность.[0014] One of the drawbacks of known devices and methods for clustering web resources, for example, disclosed in the source US 2015/0067839 (publ. 03/05/2015), is an excessive amount of analyzed suspicious web resources contained in the resulting clusters, which in in turn, causes excessive labor and / or resource intensity of checking all these suspicious web resources in the resulting clusters to identify among them web resources that are copies of the original web resources or contain at least some elements of the content of the original web resource, with the provision of their subsequent analysis for involvement in phishing activities.
[0015] Подготовка целевых кластеров веб-ресурсов, в которых веб-ресурсы с высокой долей вероятности являются копиями оригинального веб-ресурса и вовлечены, например, в фишинговую деятельность, является важным аспектом для улучшения скорости и точности определения вредоносных веб-ресурсов. На максимально точную подготовку целевых кластеров веб-ресурсов и направлены многие известные технические решения, однако, как было отмечено выше, эти известные технические решения обладают рядом недостатков и требуют улучшения.[0015] Preparing target clusters of web resources, where the web resources are highly likely to be copies of the original web resource and involved in, for example, phishing activities, is an important aspect to improve the speed and accuracy of detecting malicious web resources. Many well-known technical solutions are aimed at the most accurate preparation of target clusters of web resources, however, as noted above, these well-known technical solutions have a number of disadvantages and require improvement.
[0016] Также в уровне технике известно решение RU 2676247 С1 (опубл. 26.12.2018), которое выбрано в качестве прототипа, решающее проблему автоматизированной фильтрации массива подозрительных веб-ресурсов для выявления по существу всех фишинговых веб-ресурсов, дублирующих по меньшей мере часть контента с конкретного оригинального веб-ресурса, благодаря возможности создания базы данных, содержащей только предполагаемые фишинговые веб-ресурсы, каждый из которых в дальнейшем может быть автоматически и/или вручную проанализирован на причастность к совершению вредоносных действий, связанных с фишингом. Автоматизированная фильтрация всего массива выявленных подозрительных веб-ресурсов в свою очередь позволяет существенно сократить вычислительные ресурсы компьютерного устройства и его ресурсы памяти, необходимые на выявление причастности анализируемых веб-ресурсов к совершению вредоносных действий, связанных с фишингом, благодаря тому, что анализу подвергается не весь массив подозрительных веб-ресурсов, а только ограниченная совокупность веб-ресурсов, ассоциированных с оригинальным веб-ресурсом и имеющая с высокой степенью вероятности отношение к фишингу ввиду дублирования контента оригинального веб-ресурса, являющегося легитимным.[0016] Also known in the prior art is the solution RU 2676247 C1 (publ. 12/26/2018), which is chosen as a prototype, solving the problem of automated filtering of an array of suspicious web resources to identify essentially all phishing web resources that duplicate at least part content from a specific original web resource, thanks to the ability to create a database containing only suspected phishing web resources, each of which can then be automatically and / or manually analyzed for involvement in malicious phishing activities. Automated filtering of the entire array of identified suspicious web resources, in turn, can significantly reduce the computing resources of a computer device and its memory resources necessary to identify the involvement of the analyzed web resources in the commission of malicious actions related to phishing, due to the fact that not the entire array is analyzed suspicious web resources, but only a limited set of web resources associated with the original web resource and highly likely to be related to phishing due to duplication of the content of the original web resource, which is legitimate.
[0017] Однако, указанное решение направлено на кластеризацию на основе элементов, извлеченных во время сбора со страницы, в отличии от данного решения, в котором элементы извлекаются с изображения веб-ресурса, что позволяет повысить точность подхода, так как у разных фишинговых страниц, использующих разные бренды может быть один и тот же скрипт (JavaScript), или одна и та же иконка, или одни и те же сигнатуры в HTML коде. Преимущество состоит в том, что анализируется уже отрендеренный контент, то есть контент получаемый после выполнения браузером шагов по преобразованию HTML, CSS и JavaScript в визуальное изображение, а не данные кода. Такой подход приводит к уменьшению частоты ложных срабатываний.[0017] However, this solution is aimed at clustering based on elements extracted from the page during collection, in contrast to this solution, in which elements are extracted from the image of a web resource, which improves the accuracy of the approach, since different phishing pages, using different brands can be the same script (JavaScript), or the same icon, or the same signatures in the HTML code. The advantage is that what is being parsed is already-rendered content, i.e. content obtained after the browser takes steps to convert HTML, CSS, and JavaScript into a visual image, rather than code data. This approach leads to a decrease in the frequency of false positives.
[0018] Таким образом, в дальнейшем необходимо совершенствовании устройств и способов для кластеризации веб-ресурсов, в частности для подготовки таких кластеров веб-ресурсов, которые бы снижали трудоемкость и/или ресурсоемкость их последующей проверки на причастность, например, к фишингу, посредством использования усовершенствованных технологии компьютерного зрения в совокупности с усовершенствованным алгоритмом кластеризации.[0018] Thus, in the future, it is necessary to improve devices and methods for clustering web resources, in particular for preparing such clusters of web resources that would reduce the complexity and / or resource intensity of their subsequent check for involvement, for example, in phishing, by using advanced computer vision technologies coupled with an advanced clustering algorithm.
[0019] Следовательно, настоящее техническое решение создано для преодоления по меньшей мере одного обозначенного выше недостатка известных устройств и способов для кластеризации контента фишинговых веб-ресурсов.[0019] Therefore, the present technical solution is designed to overcome at least one of the above disadvantages of known devices and methods for clustering the content of phishing web resources.
СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION
[0020] Технической проблемой, на решение которой направлено заявленное решение, является создание способа и вычислительного устройства для кластеризации фишинговых веб-ресурсов на основе изображения визуального контента. Дополнительные варианты реализации настоящего изобретения представлены в зависимых пунктах изобретения.[0020] The technical problem to which the claimed solution is directed is the creation of a method and a computing device for clustering phishing web resources based on an image of visual content. Additional embodiments of the present invention are presented in dependent claims.
[0021] Технический результат заключается в повышение точности кластеризации фишинговых веб-ресурсов на основе изображения визуального контента.[0021] The technical result is to increase the accuracy of clustering phishing web resources based on the image of visual content.
[0022] Заявленный результат достигается за счет осуществления способа кластеризации фишинговых веб-ресурсов на основе изображения визуального контента, выполняемый на компьютерном устройстве, содержащем по меньшей мере процессор и память, при этом способ содержит этапы, на которых:[0022] The claimed result is achieved by implementing a method for clustering phishing web resources based on an image of visual content, executed on a computer device containing at least a processor and memory, the method comprising the steps of:
получают указания на множество фишинговых веб-ресурсов;get directions to a lot of phishing web resources;
извлекают по меньшей мере одно изображение визуального контента каждого из множества веб-ресурсов;extracting at least one visual content image of each of the plurality of web resources;
обрабатывают содержимое каждого изображения визуального контента, связанного с одним из множества веб-ресурсов, при этомprocessing the content of each visual content image associated with one of the plurality of web resources, wherein
выделяют контуры элементов на каждом изображении визуального контента фишингового веб-ресурса;highlight the contours of the elements on each image of the visual content of the phishing web resource;
осуществляют фильтрацию выявленных контуров на каждом изображении визуального контента путем удаления одинаковых контуров;filtering the identified contours on each image of the visual content by removing the same contours;
на основе попарного сравнения выявленных контуров и контуров кластеров производят объединение веб-ресурса, связанного со сравниваемыми контурами с кластером,based on a pairwise comparison of the identified contours and contours of the clusters, the web resource associated with the compared contours is combined with the cluster,
причем если значение сходства преодолевает пороговое значение,moreover, if the similarity value overcomes the threshold value,
в противоположном случае создают новый кластер для веб-ресурса;otherwise, create a new cluster for the web resource;
сохраняют указания на веб-ресурсы, ассоциированные с соответствующими контурами содержимого из множества указанных кластеров, в базе данных.storing pointers to web resources associated with respective content paths from the plurality of said clusters in a database.
[0023] В частном варианте реализации описываемого способа множество веб-ресурсов включает, по меньшей мере, два веб-ресурса.[0023] In a particular embodiment of the described method, the set of web resources includes at least two web resources.
[0024] В частном варианте реализации описываемого способа для получения указаний на множество веб-ресурсов предварительно выполняют сканирование сети.[0024] In a particular embodiment of the described method, to obtain indications of a plurality of web resources, a network scan is preliminarily performed.
[0025] В частном варианте реализации описываемого способа указания на множество веб-ресурсов получают, по меньшей мере, частично от внешнего источника по сети передачи данных.[0025] In a particular embodiment of the described method, pointers to a plurality of web resources are obtained at least in part from an external source over a data network.
[0026] В частном варианте реализации описываемого способа указания на множество веб-ресурсов получают из предварительно сформированной базы данных веб-ресурсов.[0026] In a particular embodiment of the described method, pointers to a plurality of web resources are obtained from a pre-formed database of web resources.
[0027] В частном варианте реализации описываемого способа выделяют по меньшей мере следующие контуры элементов, содержащихся на изображении визуального контента: логотипов, очертаний букв, отдельных слов, картинок, форм.[0027] In a particular embodiment of the described method, at least the following contours of the elements contained in the visual content image are distinguished: logos, letter outlines, individual words, pictures, forms.
[0028] В частном варианте реализации описываемого способа для выделения контуров используют по меньшей мере следующие методы: детектор границ Кэнни и алгоритм поиска контуров.[0028] In a particular embodiment of the described method, at least the following methods are used to extract contours: a Canny edge detector and a contour search algorithm.
[0029] В частном варианте реализации описываемого способа при обработке содержимого каждого полученного изображения визуального контента дополнительно производят удаление мелких, наклонных и вытянутых контуров.[0029] In a particular embodiment of the described method, when processing the content of each received image of visual content, small, oblique and elongated contours are additionally removed.
[0030] В частном варианте реализации описываемого способа производят фильтрацию выявленных контуров на каждом изображении визуального контента путем удаления одинаковых контуров, причем[0030] In a particular embodiment of the described method, the detected contours are filtered on each visual content image by removing identical contours, and
если сравниваемые контуры по высоте и/или ширине отличаются больше, чем на два пикселя, то считают их разнымиif the compared contours differ in height and / or width by more than two pixels, then they are considered different
[0031] В частном варианте реализации описываемого способа производят фильтрацию выявленных контуров на каждом изображении визуального контента путем удаления одинаковых контуров, причем[0031] In a particular embodiment of the described method, the detected contours are filtered on each visual content image by removing identical contours, and
если сравниваемые контуры по высоте и/или ширине отличаются на два пикселя или меньше, тоif the compared contours differ in height and/or width by two pixels or less, then
контуры накладывают друг на друга, иcontours superimposed on each other, and
вычисляют попиксельную разность изображений,calculate the pixel-by-pixel difference of images,
причем для полученного разностного изображения вычисляют оценку похожести в диапазоне от 0, где изображения одинаковы до 100 - изображения полностью противоположны,moreover, for the obtained difference image, a similarity score is calculated in the range from 0, where the images are the same, to 100 - the images are completely opposite,
причем оценка похожести (Р) вычисляется как среднее арифметическое значений пикселей, то есть сумма значений пикселей, деленная на количество пикселей изображения, причем вычисляемое для значений, взятых из всех трех каналов RGB:moreover, the similarity score (P) is calculated as the arithmetic mean of the pixel values, that is, the sum of the pixel values divided by the number of pixels in the image, moreover, calculated for the values taken from all three RGB channels:
где Ri, Gi, Bi - значение i-го пикселя в каналах R, G и В соответственно, а N - общее количество пикселей изображения,where Ri, Gi, Bi - the value of the i-th pixel in the channels R, G and B, respectively, and N - the total number of image pixels,
причем контуры, оценка похожести которых не превышает 7 удаляются.moreover, the contours whose similarity score does not exceed 7 are deleted.
[0032] В частном варианте реализации описываемого способа дополнительно для каждого контура, выявленного на изображении визуального контента рассчитывают инвариантные визуальные хеш-функции[0032] In a particular embodiment of the described method, in addition, for each contour identified in the visual content image, invariant visual hash functions are calculated
[0033] В частном варианте реализации описываемого способа если при сравнении с изображениями кластеров обнаружено менее трех похожих контуров на изображении визуального контента фишингового веб-ресурса, то выводят сообщение о не информативности, причем в данном случае новое изображение визуального контента в кластер не добавляется, а если в кластере менее двух изображений, то кластер удаляется;[0033] In a particular embodiment of the described method, if, when compared with cluster images, less than three similar contours are found on the image of the visual content of the phishing web resource, then a message is displayed that it is not informative, and in this case, a new image of visual content is not added to the cluster, but if there are less than two images in the cluster, then the cluster is deleted;
если при сравнение обнаружено от трех до пяти похожих контуров, то для добавления изображения визуального контента фишингового веб-ресурса в определенный кластер необходимо полное совпадение всех контуров кластера;if the comparison reveals from three to five similar contours, then to add an image of the visual content of a phishing web resource to a certain cluster, all the contours of the cluster must match;
если при сравнение обнаружено от пяти до десяти похожих контуров, то для добавления изображения визуального контента фишингового веб-ресурса в определенный кластер необходимо совпадение половины контуров с контурами кластера,if during the comparison five to ten similar contours are found, then to add an image of the visual content of a phishing web resource to a certain cluster, half of the contours must match the contours of the cluster,
если при сравнение обнаружено от десяти до пятнадцати похожих контуров, то для добавления изображения визуального контента фишингового веб-ресурса в определенный кластер необходимо совпадение четверти контуров кластера,if the comparison reveals from ten to fifteen similar contours, then to add an image of the visual content of a phishing web resource to a certain cluster, a quarter of the cluster contours must match,
если при сравнение обнаружено от пятнадцати похожих контуров, то для добавления изображения визуального контента фишингового веб-ресурса в определенный кластер необходимо совпадение по меньшей мере пятой части контуров кластера.if the comparison reveals more than fifteen similar contours, then to add an image of the visual content of a phishing web resource to a certain cluster, at least a fifth of the cluster contours must match.
[0034] В частном варианте реализации описываемого способа при отнесении изображения визуального контента фишингового веб-ресурса к нескольким кластерам, его добавление происходит в кластер с наибольшим числом совпадений контуров.[0034] In a particular embodiment of the described method, when the image of the visual content of a phishing web resource is assigned to several clusters, it is added to the cluster with the largest number of contour matches.
[0035] В частном варианте реализации описываемого способа дополнительно после кластеризации каждого из множества изображений визуального контента фишинговых веб-ресурсов удаляют кластеры, в которых содержится менее трех изображений.[0035] In a particular embodiment of the described method, after clustering each of the plurality of visual content images of phishing web resources, clusters containing less than three images are removed.
[0036] В частном варианте реализации описываемого способа изображения, которые содержались в удаленных кластерах заносят в специальный список и временно считаются мусорными.[0036] In a particular embodiment of the described method, images that were contained in remote clusters are entered into a special list and are temporarily considered garbage.
[0037] В частном варианте реализации описываемого способа дополнительно на основе каждого изображения визуального контента, содержащегося в списке, создают матрицу смежности, в которой на пересечении расположено число совпадающих контуров, для выявления списка пар похожих контуров по размерам.[0037] In a particular embodiment of the described method, additionally, based on each image of visual content contained in the list, an adjacency matrix is created, in which the number of matching contours is located at the intersection, to identify a list of pairs of similar contours in size.
[0038] В частном варианте реализации описываемого способа дополнительно для определения ассоциированности по меньшей мере двух изображения визуального контента веб-ресурсов в матрице смежности изменяют значение на 0, если число совпадающих по размерам контуров, менее заданного порога, или на 1, если число совпадений контуров больше порога.[0038] In a particular embodiment of the described method, in addition to determining the association of at least two images of visual content of web resources in the adjacency matrix, the value is changed to 0 if the number of contours matching in size is less than a specified threshold, or to 1 if the number of contour matches more than the threshold.
[0039] В частном варианте реализации описываемого способа производят вычисление сильно связных компонентов графа, в которых находится более двух изображений и создают новый кластер для каждой из выявленных компонент.[0039] In a particular embodiment of the described method, strongly connected graph components are calculated, in which there are more than two images, and a new cluster is created for each of the identified components.
[0040] Заявленный результат также достигается за счет реализации вычислительного устройства для кластеризации фишингового контента, содержащее память для хранения машиночитаемых инструкций и по меньшей мере один вычислительный процессор, выполненный с возможностью исполнения машиночитаемых инструкций для обеспечения осуществления способа кластеризации фишингового контента.[0040] The claimed result is also achieved by implementing a computing device for clustering phishing content, containing a memory for storing machine-readable instructions and at least one computing processor capable of executing machine-readable instructions to ensure the implementation of the phishing content clustering method.
ОПИСАНИЕ ЧЕРТЕЖЕЙDESCRIPTION OF THE DRAWINGS
[0041] Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:[0041] The implementation of the invention will be described hereinafter in accordance with the accompanying drawings, which are presented to explain the essence of the invention and in no way limit the scope of the invention. The following drawings are attached to the application:
[0042] Фиг. 1 иллюстрирует упрощенное схематическое представление одной из неограничивающих реализаций системы для осуществления настоящего технического решения.[0042] FIG. 1 illustrates a simplified schematic representation of one of the non-limiting implementations of the system for implementing the present technical solution.
[0043] Фиг. 2 иллюстрирует одну из неограничивающих реализаций представления информации о ресурсах веб-страницы в базе данных ресурсов.[0043] FIG. 2 illustrates one non-limiting implementation of representing information about web page resources in a resource database.
[0044] Фиг. 3 иллюстрирует блок-схему последовательности операций согласно аспекту настоящего способа кластеризации фишинговых веб-ресурсов на основе изображения визуального контента.[0044] FIG. 3 illustrates a flowchart according to an aspect of the present method for clustering phishing web resources based on a visual content image.
[0045] Фиг. 4 иллюстрирует неограничивающий пример первого веб-ресурса.[0045] FIG. 4 illustrates a non-limiting example of a first web resource.
[0046] Фиг. 5 иллюстрирует неограничивающий пример второго веб-ресурса.[0046] FIG. 5 illustrates a non-limiting example of a second web resource.
[0047] Фиг. 6 иллюстрирует неограничивающий пример третьего веб-ресурса.[0047] FIG. 6 illustrates a non-limiting example of a third web resource.
[0048] Фиг. 7 иллюстрирует упрощенное схематическое представление одной из неограничивающих реализаций компьютерного устройства для осуществления настоящего технического решения.[0048] FIG. 7 illustrates a simplified schematic representation of one of the non-limiting implementations of a computing device for implementing the present technical solution.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯDETAILED DESCRIPTION OF THE INVENTION
[0049] В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.[0049] In the following detailed description of the invention, numerous implementation details are provided to provide a clear understanding of the present invention. However, one skilled in the art will appreciate how the present invention can be used, both with and without these implementation details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to unnecessarily obscure the features of the present invention.
[0050] Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.[0050] In addition, from the foregoing it will be clear that the invention is not limited to the above implementation. Numerous possible modifications, changes, variations and substitutions that retain the spirit and form of the present invention will be apparent to those skilled in the subject area.
[0051] Отметим, что в контексте настоящего описания, если специально не указано иное, термин «элемент содержимого» или «контент» относится к любым данным, которые могут быть представлены (визуально, в аудио формате или как-либо иначе), которые может содержать веб-ресурс. Таким образом, элементом содержимого для целей настоящего технического решения может являться, в частности, шрифт, элемент меню, шаблон веб-ресурса, форма для заполнения, написанный текст, изображение, часть изображения, графика, анимация, видео, музыка, запись голоса и так далее, а также любая их комбинация. В частности, контентом также являются и любые другие ресурсы, которые могут быть переданы по протоколам http/https.[0051] Note that in the context of the present description, unless specifically indicated otherwise, the term "content element" or "content" refers to any data that can be represented (visually, in audio format or otherwise) that can contain a web resource. Thus, a content element for the purposes of this technical solution may be, in particular, a font, a menu element, a web resource template, a form to fill out, written text, an image, a part of an image, graphics, animation, video, music, voice recording, and so on. further, as well as any combination of them. In particular, any other resources that can be transferred via the http/https protocols are also content.
[0052] Дополнительно настоящее описание раскрывает термин изображение визуального контента веб-ресурса, под которым понимается скриншот (screenshot - «снимок экрана»), то есть изображение, полученное вычислительным устройством и показывающее в точности то, что видит пользователь на экране монитора или другого визуального устройства вывода.[0052] Additionally, this description discloses the term image of the visual content of a web resource, which is understood as a screenshot (screenshot - "screenshot"), that is, an image received by a computing device and showing exactly what the user sees on the screen of a monitor or other visual output devices.
[0053] Контуры (боксы) - выделенные на изображении визуального контента, то есть на скриншоте, прямоугольные элементы, например, кнопки, поля ввода, логотипы компаний, титульные надписи и т.п.[0053] Contours (boxes) - selected on the image of visual content, that is, on the screenshot, rectangular elements, for example, buttons, input fields, company logos, title inscriptions, etc.
[0054] Кластеры - группы изображений визуального контента (скришотов), сформированные на основе совпадения выявленных на них уникальных контуров (боксов), для конкретного фишингового набора. С каждым кластером также ассоциирован, например, хранится в базе данных с указанием на определенный кластер, набор ссылок (указаний) на фишинговые страницы, соответствующие изображениям визуального контента, и имеющие между собой много общего (например, направленные на одну конкретную компанию или похожие между собой по лендингу).[0054] Clusters are groups of visual content images (screenshots) formed on the basis of the coincidence of unique contours (boxes) identified on them for a specific phishing set. Each cluster is also associated with, for example, stored in a database with an indication of a specific cluster, a set of links (indications) to phishing pages corresponding to images of visual content, and having much in common with each other (for example, aimed at one specific company or similar to each other by landing page).
[0055] В контексте настоящего описания, если четко не указано иное, «указатель» или «указание» информационного элемента может представлять собой сам информационный элемент или указатель, отсылку, ссылку или другой косвенный способ, позволяющий получателю указания найти сеть, память, базу данных или другой машиночитаемый носитель, из которого может быть извлечен информационный элемент. Например, указатель веб-ресурса может включать в себя сам файл или набор файлов веб-ресурса, или же он может являться универсальным указателем ресурса (например, URL, таким как www.webpage.com), идентифицирующим веб-ресурс по отношению к конкретной сети (в частности, Интернет), или он может какими-либо другими средствами передавать получателю указание на сетевую папку, адрес памяти, таблицу в базе данных или другое место, в котором можно получить доступ к веб-ресурсу или отдельным его элементам содержания. Как будет понятно специалистам в данной области техники, степень точности, необходимая для такого указания, зависит от степени первичного понимания того, как должна быть интерпретирована информация, которой обмениваются получатель и отправитель указателя. Например, если до передачи данных между отправителем и получателем понятно, что указатель информационного элемента принимает вид универсального указателя ресурса URL, передача указателя, ссылки на данный веб-ресурс - это все, что необходимо для эффективной передачи веб-ресурса получателю, несмотря на то, что сам по себе информационный элемент (например, веб-ресурс или отдельный его элемент содержания) не передавался между отправителем и получателем указания.[0055] As used herein, unless expressly stated otherwise, a "pointer" or "pointer" to an information element may be the information element itself or a pointer, referral, link, or other indirect means to allow the recipient of the indication to locate a network, memory, database or other computer-readable medium from which the information element can be retrieved. For example, a web resource locator may include a web resource file or set of files, or it may be a generic resource locator (eg, a URL such as www.webpage.com) that identifies a web resource with respect to a particular web. (in particular, the Internet), or it may by some other means convey to the recipient an indication of a network folder, memory address, table in a database, or other place where a web resource or its individual content elements can be accessed. As will be appreciated by those skilled in the art, the degree of precision required for such an indication depends on the degree of prior understanding of how the information exchanged between the pointer's recipient and sender is to be interpreted. For example, if it is known prior to the transmission of data between the sender and receiver that the information element pointer takes the form of a URL universal resource locator, passing the pointer, a link to that web resource, is all that is necessary to efficiently convey the web resource to the recipient, even though that the information element itself (for example, a web resource or a separate element of its content) was not transferred between the sender and recipient of the indication.
[0056] В контексте настоящего описания, если конкретно не указано иное, слова «первый», «второй», «третий» и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной взаимосвязи между этими существительными. Так, например, следует иметь в виду, что использование терминов "первый веб-ресурс" и "третий веб-ресурс" не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) веб-ресурсов в множестве веб-ресурсов, равно как и их использование (само по себе) не предполагает, что некий "второй веб-ресурс" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание "первого" элемента и "второго" элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, "первый" сервер и "второй" сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.[0056] In the context of the present description, unless specifically indicated otherwise, the words "first", "second", "third", etc. are used as adjectives solely to distinguish the nouns they refer to from each other, and not for the purpose of describing any particular relationship between those nouns. Thus, for example, it should be kept in mind that the use of the terms "first web resource" and "third web resource" does not imply any order, categorization, chronology, hierarchy, or ranking (for example) of web resources in a set web resources, as well as their use (in itself) does not imply that some "second web resource" must necessarily exist in this or that situation. Hereinafter, as indicated herein in other contexts, the mention of the "first" element and the "second" element does not exclude the possibility that these are the same actual real element. Thus, for example, in some cases, the "first" server and the "second" server may be the same software and/or hardware, and in other cases they may be different software and/or hardware.
[0057] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.[0057] Additional and/or alternative features, aspects, and advantages of embodiments of the present technical solution will become apparent from the following description, the accompanying drawings, and the appended claims.
[0058] На Фиг. 1 представлено упрощенное схематическое представление одной из неограничивающих реализаций системы кластеризации фишингового контента 100 для осуществления настоящего технического решения.[0058] In FIG. 1 is a simplified schematic representation of one of the non-limiting implementations of a phishing
[0059] В некоторых неограничивающих вариантах реализации настоящего технического решения система 100, обеспечивающая реализацию способа, может включать в себя сеть 110 передачи данных, по крайней мере одно вычислительное устройство 120 для определения вредоносных веб-ресурсов, и базу данных 130.[0059] In some non-limiting embodiments of the present technical solution, the
[0060] Система 100 может также включать в себя по меньшей мере один поисковый сервер 140, имеющий доступ к базе данных веб-ресурсов 130.[0060]
[0061] В еще одном неограничивающем варианте реализации настоящего изобретения система 100 может включать дополнительно активное сетевое оборудование (не показано) и клиентское устройство (не показано).[0061] In yet another non-limiting embodiment of the present invention,
[0062] В качестве сети 110 передачи данных может выступать, например, сеть Интернет или любая другая вычислительная сеть.[0062] The
[0063] Вычислительное устройство 120 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения устройство 120 может представлять собой сервер Dell™ PowerEdge™, или может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию.[0063]
[0064] Варианты возможного осуществления вычислительного устройства 120 хорошо известны. Таким образом, достаточно отметить, что устройство 120 включает в себя, среди прочего, интерфейс сетевой передачи данных (например, модем, сетевую карту и тому подобное) для двусторонней связи по сети передачи данных (не изображена); и процессор 121, связанный с интерфейсом сетевой передачи данных, причем процессор 121 выполнен с возможностью выполнять различные алгоритмы, включая те, что описаны ниже. С этой целью процессор 121 может иметь доступ к машиночитаемым инструкциям, хранящимся на машиночитаемом носителе (не показан), выполнение которых инициирует реализацию процессором 121 различных процедур, описанных здесь далее.[0064] Possible embodiments of
[0065] В некоторых вариантах осуществления настоящего технического решения вычислительное устройство 120 включает в себя по меньшей мере одну базу данных 122, которая выполнена с возможностью хранить по меньшей мере часть указаний на элементы содержимого, элементов содержимого, группы элементов содержимого, и указание на веб-ресурсы, ассоциированные с соответствующим элементом содержимого или группой элементов содержимого. Так, в качестве примера, веб-ресурс, на котором имеются все элементы содержимого из группы элементов содержимого, является ассоциированным с данной группой элементов содержимого.[0065] In some embodiments of the present technical solution, the
[0066] Стоит отметить, что база 122 данных может быть реализована как часть вычислительного устройства 120 или иным способом быть доступна вычислительному устройству 120.[0066] It is worth noting that
[0067] Возможен вариант осуществления системы 100, согласно которому вычислительное устройство 120 включает в себя машиночитаемый носитель (не показан), на котором могут быть предварительно сохранены машиночитаемые инструкции и/или база данных 122. Альтернативно или дополнительно устройство 120 может иметь доступ к машиночитаемым инструкциям и/или базе данных 122, расположенных на ином оборудовании. То, как именно реализован доступ процессора 121 вычислительного устройства 120 к машиночитаемым инструкциям и базе данных 122 не является ограничивающим условием настоящего технического решения.[0067] An embodiment of
[0068] Процессор 121 выполнен с возможностью получения указаний на множество веб-ресурсов. Например, в качестве неограничивающего примера получение указаний на множество веб-ресурсов может представлять собой получение списка единых указателей ресурсов (URL). Дополнительно стоит отметить, что источники указаний на множество веб-ресурсов могут быть различными.[0068] The
[0069] Возможен вариант осуществления настоящего технического решения, в котором процессор 121 выполнен с возможностью получения указания на множество веб-ресурсов по меньшей мере частично от внешнего источника по сети передачи данных 110. Например, внешний источник может представлять собой поисковый сервер 140 имеющий доступ к базе данных веб-ресурсов 130 и/или сервер сбора данных о вредоносных веб-ресурсах (не показан), и т.д. Причем вычислительное устройство 120 может иметь доступ к базе данных веб-ресурсов 130 по сети передачи данных 110. Альтернативно или дополнительно внешний источник может представлять собой веб-ресурс, включающий указания на множестве веб-ресурсов (например, проверенная база данных фишинговых веб-ресурсов, как Google Safe Browsing (GSB), OpenPhish (OP). Стоит отметить что, как именно и по какому принципу сгруппированы указания на веб-ресурсы на внешнем источнике, в частности, в базе данных веб-ресурсов 130 не является ограничивающим условием.[0069] An embodiment of the present technical solution is possible, in which the
[0070] Варианты осуществления поискового сервера 140 хорошо известны. Таким образом, достаточно отметить, что поисковый сервер 140 включает в себя, среди прочего, интерфейс сетевой передачи данных (например, модем, сетевую карту и тому подобное) для двусторонней связи по сети передачи данных 110; и процессор (не показан), связанный с интерфейсом сетевой передачи данных, причем процессор выполнен с возможностью осуществлять поиск веб-ресурсов в сети передачи данных 110 и их сохранение в базе данных 130. С этой целью процессор поискового сервера может иметь доступ к соответствующим машиночитаемым инструкциям, хранящимся на машиночитаемом носителе (не показан).[0070] Embodiments of
[0071] Так, процесс заполнения и сохранения базы данных веб-ресурсов 130 в общем случае известен как сбор данных (или кроулинг, от англ. "crawling"), причем поисковый сервер 140 выполнен с возможностью просматривать различные веб-ресурсы, доступные по сети 110 передачи данных, и сохранять их в базе данных веб-ресурсов 130 по одному или нескольким предварительно заданным параметрам. В качестве примера, но не ограничения поисковый сервер 140 может выполнять сканирование сети передачи данных 110 и сохранять все новые и обновленные веб-ресурсы и таким образом собрать полную базу веб-ресурсов сети передачи данных 130, и/или собирать веб-ресурсы, например, включающие определенные ключевые слова на одном или нескольких языках. Поскольку вредоносные веб-ресурсы (в частности фишинговые веб-сайты) обычно пытаются имитировать сайты банков, платежных систем и сервисов электронной почты, то ключевыми словами могут быть, например, но не ограничиваясь ими: «банк», «кредит», «карта», т.д. Поиск также может осуществляться по доменным именам, и/или другим параметрам. Найденные и отобранные указания на веб-ресурсы сохраняются в базе данных веб-ресурсов 130, после чего могут быть получены процессором вычислительного устройства 120 по сети передачи данных 110 от поискового сервера 140.[0071] Thus, the process of populating and maintaining a database of
[0072] Кроме того, поисковый сервер 140 выполнен с возможностью исследования по меньшей мере части элементов содержимого каждого веб-ресурса из множества веб-ресурсов. Элементы содержимого веб-ресурса могут представляют собой файлы элементов содержимого и/или хеш-суммы файлов элементов содержимого (например, хеш-суммы, вычисленные по алгоритму sha256). Формат файлов элементов содержимого никак конкретно не ограничен и будет зависеть от типа конкретного элемента содержимого. Например, для случая, когда элемент содержимого представляет собой изображение, файл может быть представлен, в частности, в одном из следующих форматов: "jpg", "jpeg", "png", "bmp", "gif и т.д. Для случая, когда элемент содержимого представляет собой текст, файл может быть представлен, в частности, в одном из следующих форматов: "txt", "doc", "html" и др. Для случая, когда элемент содержимого представляет собой шрифт, файл может быть представлен, в частности, в одном из следующих форматов: "woff", "ttf, "eot", "svg" и т.д. Для случая, когда элемент содержимого представляет собой скрипт, файл может быть представлен, в частности, в одном из следующих форматов: "asp", "aspx", "php", "jsp", "cgi" и т.д. Для случая, когда элемент содержимого представляет собой анимацию или видео, файл может быть представлен, в частности, в одном из следующих форматов: "flv", "swf, "avi", "mp4", "mov" и т.д. Для случая, когда элемент содержимого представляет собой каскадную таблицу стилей, файл может быть представлен, в частности, в формате "ess". Указанный перечень возможных элементов содержимого и форматов, в которых они могут быть представлены, не является ограничивающим условием настоящего технического решения.[0072] In addition, the
[0073] Извлечение элементов, а также создание изображений визуального контента (скриншотов) найденных веб-ресурсов может выполняться процессором поискового сервера 140 с помощью специально написанных сценариев и/или скриптов для браузеров.[0073] The retrieval of elements, as well as the creation of images of visual content (screenshots) of found web resources, can be performed by the
[0074] Кроме того, стоит отметить, что еще в одном неограничивающем варианте осуществления настоящей технологии описанную функцию по созданию изображений визуального контента может осуществлять вычислительное устройство 120.[0074] In addition, it is worth noting that in another non-limiting embodiment of the present technology, the described function for creating images of visual content can be performed by computing
[0075] В одном из частных вариантов исполнения настоящей технологии изображение визуального контента (скриншот) может быть получен посредством использования инструмента для автоматизации действий веб-браузера Selenium WebDriver с помощью метода <.save_screenshot(filename)> или <.get_screenshot_as_file(filename)> и сохранен в базе данных 122.[0075] In one of the private embodiments of the present technology, an image of visual content (screenshot) can be obtained by using the Selenium WebDriver web browser automation tool using the <.save_screenshot(filename)> or <.get_screenshot_as_file(filename)> method and stored in
[0076] Альтернативно возможен вариант осуществления настоящего технического решения, в котором процессор 121 вычислительного устройства 120 выполнен с возможностью получения указания на множество веб-ресурсов напрямую из предварительно сформированной базы данных веб-ресурсов 130. Причем предварительно сформированная база данных веб-ресурсов 130 может быть доступна вычислительному устройству 120 по сети.[0076] Alternatively, an embodiment of the present technical solution is possible, in which the
[0077] Возможен вариант осуществления настоящего технического решения, в котором процессор 121 выполнен с возможностью выполнять сканирование сети 110 для получения указаний на множество веб-ресурсов и таким образом вычислительное устройство 120 может выполнять описанные выше функции поискового сервера 140. Например, сканирование сети может быть выполнено по IP-адресам веб-ресурсов, доменным именам, ключевым словам и другим параметрам.[0077] An embodiment of the present technical solution is possible, in which the
[0078] Процессор 121 вычислительного устройства 120 выполнен с возможностью обрабатывать полученные элементы, а также изображения визуального контента веб-ресурсов для кластеризации фишингового контента, а также выполнять их группирование, на основе определенных пороговых значений сходства.[0078] The
[0079] Со ссылкой на Фиг. 2 показан иллюстративный пример базы данных 122, содержащей данные о контурах элементов содержимого (122а) и веб-ресурсах (122b), ассоциированных с соответствующими контурами элементов содержимого.[0079] With reference to FIG. 2 shows an illustrative example of a
[0080] В показанном примере базы данных 122 представлен кластер из ассоциированных веб-ресурсов 300, 400, 500, на основе выявленных боксов элементов 302, 303, 306, 307, 308, 311, 312, 313.[0080] In the
[0081] Стоит отметить, что количество и качество наполнения базы данных 122 никак не ограничено, приведенные примеры боксов элементов содержимого и ассоциированных с ними веб-ресурсов служит лишь для целей обеспечения понимания настоящего технического решения и не является ограничивающим. Очевидно, что наполнение базы данных 122 может обладать гораздо большей сложностью.[0081] It is worth noting that the quantity and quality of filling the
[0082] Далее со ссылкой на фиг. 3 будет подробнее рассмотрен заявляемый способ кластеризации фишинговых веб-ресурсов на основе изображения визуального контента, который выполняется в соответствии с неограничивающими вариантами осуществления настоящего технического решения (200).[0082] Next, with reference to FIG. 3, the claimed method for clustering phishing web resources based on a visual content image will be discussed in more detail, which is performed in accordance with non-limiting embodiments of the present technical solution (200).
[0083] Способ 200 может быть выполнен на вычислительном устройстве 120 и, конкретнее, его процессором 121 в соответствии с неограничивающим вариантом реализации системы 100, представленной на фиг. 1. Также со ссылкой на, Фиг. 4, Фиг. 5 и Фиг. 6 рассмотрим иллюстративный пример осуществления способа.[0083]
[0084] На Фиг. 4 представлен пример изображения виртуального контента применительно к веб-ресурсу 300, включающего множество выделенных контуров 301-314. При этом, контуры 302-306 представляют собой элемент кнопки для перенаправления с этого ресурса на какой-либо сторонний ресурс, контуры элементов 301, 307-311 представляют собой логотипы брендов, контуры 312-313 - знаки, а 314 - выделенная прямоугольная область, содержащая остальные элементы.[0084] In FIG. 4 shows an example of a virtual content image for a
[0085] На Фиг. 5 представлен пример изображения виртуального контента второго веб-ресурса 400, включающий множество элементы содержимого. При этом некоторые контуры элементов содержимого, а именно 302-314, имеются также в первом веб-ресурсе 300 и описаны выше. Дополнительно веб-ресурс 400 имеет элементы 401, 402, 403.[0085] In FIG. 5 shows an example of a virtual content image of a
[0086] На Фиг. 6 представлен пример третьего веб-ресурса 500, включающий элементы содержимого, в частности, 301,302, 303, 306, 307, 308, 311,312, 313, 501. Элементы содержимого 302, 303, 306, 307, 308, 311 312, 313, которые имеются также в первом и втором веб-ресурсе, а также 301, ассоциирующийся только с первым веб-ресурсом, были описаны выше. Элемент содержимого 501 представляет собой строку, на которой расположены кнопки перехода на сторонние веб-ресурсы.[0086] In FIG. 6 shows an example of a
[0087] В контексте настоящего технического решения количество и виды различных элементов содержимого не являются ограничивающим условием. Веб-ресурсы на фиг. 4 фиг. 5 и фиг. 6 представлены лишь в качестве иллюстративных примеров, очевидно, что настоящее техническое решение может быть также применено для любых других веб-ресурсов, обладающих большим или меньшим количеством элементов содержимого, причем типы элементов содержимого и само содержимое могут повторяться или не повторяться в рамках одного и того же веб-ресурса. Часть элементов содержимого, имеющихся на представленных иллюстративных примерах веб-ресурсов не пронумерованы.[0087] In the context of the present technical solution, the number and types of various content elements are not a limiting condition. The web resources in FIG. 4 FIG. 5 and FIG. 6 are presented only as illustrative examples, it is obvious that the present technical solution can also be applied to any other web resources that have more or less content elements, and the types of content elements and the content itself may or may not be repeated within the same same web resource. Some of the content elements present on the presented illustrative examples of web resources are not numbered.
[0088] Фиг. 3 содержит последовательности операций согласно аспекту настоящего способа (200) кластеризации фишинговых веб-ресурсов на основе изображения визуального контента, который будет раскрыт подробнее ниже.[0088] FIG. 3 contains flows according to an aspect of the present method (200) for clustering phishing web resources based on a visual content image, which will be discussed in more detail below.
ШАГ 210 ПОЛУЧАЮТ УКАЗАНИЯ НА МНОЖЕСТВО ФИШИНГОВЫХ ВЕБ-РЕСУРСОВ
[0089] Соответственно способ 200 начинается на этапе 210, где вычислительное устройство 120 получает указания на по меньшей мере один веб-ресурс, содержащий фишинговый контент.[0089] Accordingly,
[0090] Указания на множество веб-ресурсов могут представлять собой как сами веб-ресурсы, так, например, и ссылки на веб-ресурсы, URL, доступные по сети передачи данных 110 или иной сети (не показана), вычислительному устройству 120.[0090] References to a plurality of web resources can be both the web resources themselves, and, for example, links to web resources, URLs available over a
[0091] С учетом неограничивающего иллюстративного примера вычислительное устройство 120 на этапе 210 получает указания на множество из трех веб-ресурсов 300, 400 и 500 от внешнего источника - поискового сервера 140 из базы данных веб-ресурсов 130. Стоит отметить, что веб-ресурсы 300, 400 и 500 были предварительно найдены поисковым сервером 140 и сохранены в базе данных веб-ресурсов 130. Также указания на множество веб-ресурсов могли быть получены по меньшей мере частично из предварительно сформированной базы данных веб-ресурсов 130, причем возможен дополнительный вариант осуществления способа 200, в котором вычислительное устройство 120 может получать указания на множество веб-ресурсов напрямую из базы данных веб-ресурсов 130.[0091] In view of a non-limiting illustrative example, the
[0092] Дополнительно возможен вариант осуществления способа 200, в котором для получения указаний на множество веб-ресурсов вычислительное устройство 120 выполняет сканирование сети передачи данных 110. Сканирование сети передачи данных 110 может выполняться вычислительным устройством 120 аналогично поисковому серверу 140, как было описано выше или иначе с помощью доступного ПО, способного производить поиск по заданным параметрам в сети.[0092] Additionally, an embodiment of
[0093] Возможен вариант осуществления способа 200, в котором на этапе 210 получают множество веб-ресурсов из по меньшей мере двух различных источников. Например, указания на веб-ресурсы 300 и 500 получают от поискового сервера 140 из базы данных веб-ресурсов 130, а веб-ресурс 400 получают из иного внешнего источника (не показан, например, из специальной внешней базы данных фишинговых веб-ресурсов) по сети передачи данных 110.[0093] An embodiment of the
[0094] Также возможен дополнительный вариант осуществления способа 200, в котором полученное URL указание ведет к папке с файлами (например, js, ess, image и т.д), а не соответствует привычному отображению веб-страниц, тогда система 100 по сети 110 подключается к внешнему сервису (не показано), например, к 'scan-open-dir', который выполняет исследование всех найденных по указанному адресу папок, а также возвращает результат назад в систему 100, которая с помощью специально написанных парсеров обрабатывает данную информацию и распределяет ее в базе данных 122.[0094] It is also possible an additional embodiment of the
[0095] Способ 200 далее переходит выполнению этапа 220.[0095]
ШАГ 220 ИЗВЛЕКАЮТ ПО МЕНЬШЕЙ МЕРЕ ОДНО ИЗОБРАЖЕНИЕ ВИЗУАЛЬНОГО КОНТЕНТА КАЖДОГО ИЗ МНОЖЕСТВА ВЕБ-РЕСУРСОВ.
[0096] Шаг 220 - извлечение по меньшей мере одного изображения визуального контента каждого из множества веб-ресурсов.[0096] Step 220 - retrieve at least one image of the visual content of each of the plurality of web resources.
[0097] В неограничивающих вариантах осуществления настоящего изобретения изображение визуального контента может быть сделано поисковым сервером 140 и сохранено в базе данных 130 или же сделано посредством процессора 121 вычислительного устройства 120 и сохранено в базе данных 122 любым хорошо известным методом.[0097] In non-limiting embodiments of the present invention, an image of the visual content may be made by the
[0098] В частности, для иллюстративного примера, к таким методам можно отнести использование виртуальных браузеров (например, Селениум). В настройках виртуального браузера устанавливается расширение, выполняется очистка кеша, переход на веб-ресурс, после чего автоматически в указанном месте сохраняются изображения визуального контента содержимого данного веб-ресурса. Кроме того, для тех же целей может использоваться любое доступное ПО, скрипт, написанный на любом языке программирования и способный интерпретироваться системой для получения искомого изображения визуального контента.[0098] In particular, for an illustrative example, such methods include the use of virtual browsers (eg, Selenium). An extension is installed in the virtual browser settings, the cache is cleared, a transition to a web resource is performed, after which images of the visual content of the content of this web resource are automatically saved in the specified location. In addition, any available software can be used for the same purposes, a script written in any programming language and capable of being interpreted by the system to obtain the desired image of visual content.
[0099] Далее после этапа извлечения изображения визуального контента способ переходит на этап 230.[0099] Next, after the step of extracting the visual content image, the method proceeds to step 230.
ШАГ 230 ОБРАБАТЫВАЮТ СОДЕРЖИМОЕ КАЖДОГО ИЗВЛЕЧЕННОГО ИЗОБРАЖЕНИЯ ВИЗУАЛЬНОГО КОНТЕНТА, СВЯЗАННОГО С ОДНИМ ИЗ МНОЖЕСТВА ВЕБ-РЕСУРСОВ.
[0100] На данном этапе обрабатывают содержимое каждого извлеченного изображения визуального контента, связанного с одним из множества веб-ресурсов.[0100] At this stage, the content of each extracted image of visual content associated with one of the plurality of web resources is processed.
[0101] При этом данный этап в предпочтительном варианте осуществления описываемой в данном документе технологии включает себя по меньшей мере следующие подэтапы:[0101] This step, in the preferred embodiment of the technology described herein, includes at least the following sub-steps:
выделения контуров элементов на каждом изображении визуального контента фишингового веб-ресурса;highlighting the contours of elements on each image of the visual content of the phishing web resource;
осуществления фильтрации выявленных контуров на каждом изображении визуального контента путем удаления одинаковых контуров.filtering the detected contours on each visual content image by removing identical contours.
[0102] На этом этапе происходит выделение контуров по меньшей мере следующих элементов содержимого изображения визуального контента: логотипов, очертаний букв, отдельных слов, картинок, форм. Это может выполняться с помощью детектора границ Кэнни и алгоритма поиска контуров.[0102] At this stage, the contours of at least the following elements of the content of the visual content image are selected: logos, letter outlines, individual words, pictures, shapes. This can be done with a Canny edge detector and an edge search algorithm.
[0103] Стоит отметить, что контуры на изображении визуального контента - это такие кривые на изображении, вдоль которых происходит резкое изменение яркости, цветности или других параметров изображения. Поэтому целями преобразования изображения в набор кривых являются: выделение существенных характеристик изображения и сокращение объема информации для последующего анализа.[0103] It is worth noting that the contours in the image of visual content are those curves in the image along which there is a sharp change in brightness, color or other image parameters. Therefore, the goals of converting an image into a set of curves are: highlighting the essential characteristics of the image and reducing the amount of information for subsequent analysis.
[0104] Соответственно в процессе выделения контуров с помощью детектора границ Кэнни выполняются по меньшей мере следующие шаги:[0104] Accordingly, at least the following steps are performed in the process of contour extraction using the Canny edge detector:
убирают шум и лишние детали из изображения визуального контента посредством применения фильтра Гаусса, вычисляют первые производные (магнитуд и направлений) функции интенсивности пикселей по горизонтальному и вертикальному направлениям посредством применения оператора Собеля,remove noise and unnecessary details from the image of visual content by applying a Gaussian filter, calculate the first derivatives (magnitudes and directions) of the pixel intensity function in the horizontal and vertical directions by applying the Sobel operator,
отбирают пиксели, которые потенциально принадлежат ребру с использованием процедуры non-maximum suppression, причем пиксели, которым соответствуют вектора производных по направлениям, являющиеся локальными максимумами, считаются потенциальными кандидатами на принадлежность ребру;select pixels that potentially belong to the edge using the non-maximum suppression procedure, and the pixels that correspond to the vectors of derivatives in directions, which are local maxima, are considered potential candidates for belonging to the edge;
и проводят двойное отсечение, то есть выделяют "сильные" и "слабые" ребра, где пиксели, интенсивность которых превышает максимальный порог, считают пикселями, принадлежащими "сильным" ребрам. Принимается, что пиксели с интенсивностью, входящей в интервал от минимального до максимального порогового значения, принадлежат "слабым" ребрам. Пиксели, интенсивность которых меньше минимального порога, отбрасывают, исключают из дальнейшего рассмотрения. Результирующие ребра содержат пиксели всех "сильных" ребер и те пиксели "слабых" ребер, чья окрестность содержит хотя бы один пиксель "сильных" ребер.and double pruning is performed, i.e. "strong" and "weak" edges are distinguished, where pixels whose intensity exceeds the maximum threshold are considered pixels belonging to "strong" edges. It is assumed that pixels with intensity within the interval from the minimum to the maximum threshold value belong to "weak" edges. Pixels whose intensity is less than the minimum threshold are discarded and excluded from further consideration. The resulting edges contain pixels of all "strong" edges and those pixels of "weak" edges whose neighborhood contains at least one pixel of "strong" edges.
[0105] Стоит отметить, что далее дополнительно применяется алгоритм обнаружения контуров на изображении визуального контента. В настоящем техническом решении использование определенного алгоритма для выявления границ на изображении не является ограничивающим моментом, поэтому возможно использование любого известного метода. В качестве примера, но не ограничиваясь им, к таким методам можно отнести: оператор Кирша, оператор Робинса, алгоритмы Марр-Хильдрет (Marr-Hildreth) и Харриса, а также его модификации: Ши-Томаса, Харриса-Лапласа и др.[0105] It is worth noting that further, an algorithm for detecting edges on the image of visual content is additionally applied. In this technical solution, the use of a specific algorithm for detecting edges in an image is not a limiting point, so any known method can be used. As an example, but not limited to, such methods include: the Kirsch operator, the Robins operator, the Marr-Hildreth and Harris algorithms, as well as its modifications: Shea-Thomas, Harris-Laplace, etc.
[0106] После выделения контуров дополнительно производят очистку (удаление) мелких, наклонных и сильно вытянутых контуров. Стоит отметить в качестве примера, но не ограничиваясь им, что мелкими могут считаться контуры, которые меньше 350 пикселей, а сильно вытянутыми считаются те, у которых ширина или высота менее 10 пикселей. Наклонными контурами считаются такие, границы которых не параллельны сторонам изображения визуального контента.[0106] After selecting the contours, additional cleaning (removal) of small, inclined and highly elongated contours is performed. It is worth noting, by way of example, but not limitation, that paths that are smaller than 350 pixels can be considered small, and those that are less than 10 pixels wide or height are considered strongly elongated. Sloped contours are those whose borders are not parallel to the sides of the visual content image.
[0107] Критерии очистки могут быть предварительно заданы экспертом либо созданы автоматически на основе статистических данных об использовании элементов содержимого во множестве веб-ресурсов. Например, при превышении предварительно заданного порогового значения количества веб-ресурсов, ассоциированных с данным элементом содержимого, он может считаться стандартным элементом содержимого. Пороговое значение может задаваться вручную оператором, либо выбираться с помощью различных автоматизированных алгоритмов, в том числе на основе машинного обучения.[0107] The cleaning criteria can be pre-defined by an expert or automatically generated based on statistical data on the use of content elements in a variety of web resources. For example, if the number of web resources associated with a given content element exceeds a predetermined threshold, it may be considered a standard content element. The threshold value can be set manually by the operator, or selected using various automated algorithms, including those based on machine learning.
[0108] В предпочтительном варианте осуществления настоящей технологии процессор 121 вычислительного устройства 120 производит попарное сравнение схожих контуров, при этом:[0108] In the preferred embodiment of the present technology,
если сравниваемые контуры по высоте и/или ширине отличаются больше, чем на 2 пикселя, то их считают разными;if the compared contours differ in height and/or width by more than 2 pixels, then they are considered different;
если сравниваемые контуры по высоте и/или ширине отличаются на 2 пикселя или меньше, то накладывают контуры друг на друга и вычисляют попиксельную разность изображений контуров, а для полученного изображения вычисляется оценка похожести в диапазоне от 0, когда изображения одинаковы, до 100, когда изображения совершенно различны,if the compared contours differ in height and/or width by 2 pixels or less, then the contours are superimposed on each other and the pixel-by-pixel difference of contour images is calculated, and for the resulting image, a similarity score is calculated in the range from 0, when the images are the same, to 100, when the images completely different
при этом контуры, оценка похожести которых не превышает 7, удаляют.in this case, the contours, the similarity score of which does not exceed 7, are removed.
[0109] В соответствии с описанным выше, оценка похожести (Р) вычисляется как среднее арифметическое значений пикселей (1), то есть сумма значений пикселей, деленная на количество пикселей изображения, причем вычисляемое для значений, взятых из всех трех каналов RGB:[0109] As described above, the similarity score (P) is calculated as the arithmetic mean of the pixel values (1), that is, the sum of the pixel values divided by the number of image pixels, and calculated for the values taken from all three RGB channels:
где Ri, Gi, Bi - значение i-ro пикселя в каналах R, G и В соответственно, а N - общее количество пикселей изображения.where Ri, Gi, Bi - the value of the i-ro pixel in the R, G and B channels, respectively, and N - the total number of pixels in the image.
[0110] Стоит отметить, что в одном из вариантов осуществления настоящей технологии для каждого контура, выявленного на изображении визуального контента, используют инвариантные к масштабированию визуальные хеш-функции. Инвариантное к масштабированию хеширование полезно, когда, например, один и тот же визуальный контент отображается в разных масштабах на разном оборудовании устройства и операционных системах. Сами эти хеш-функции могут быть любыми общеизвестными.[0110] It is worth noting that in one embodiment of the present technology, scale-invariant visual hash functions are used for each contour identified in a visual content image. Scale-invariant hashing is useful when, for example, the same visual content is displayed at different scales on different device hardware and operating systems. These hash functions themselves can be any well-known.
[0111] В одном из альтернативных вариантов реализации возможно применение метода удаления схожих контуров, в котором:[0111] In one alternative implementation, it is possible to use a method for removing similar contours, in which:
если сравниваемые контуры по высоте или ширине отличаются более, чем на 2 пикселя, то их считают разными;if the compared contours differ in height or width by more than 2 pixels, then they are considered different;
если один из контуров больше другого, то последовательно сравнивают 9 всевозможных расположений меньшего контура в большем, вычисляют разность между наложенными друг на друга контурами, вычисляют для разности оценку похожести (1), и при этом удаляют контуры, разность которых не превышает установленного порога.if one of the contours is greater than the other, then 9 possible locations of the smaller contour are sequentially compared in the larger one, the difference between the contours superimposed on each other is calculated, the similarity estimate (1) is calculated for the difference, and at the same time, the contours are removed, the difference of which does not exceed the established threshold.
[0112] Стоит отметить, что при выполнении альтернативного варианта реализации настоящей технологии может быть получено и менее 9 расположений одного контура в другом контуре, в зависимости от разницы по одной из координат.[0112] It is worth noting that when performing an alternative implementation of the present technology, less than 9 locations of one contour in another contour can be obtained, depending on the difference in one of the coordinates.
[0113] В альтернативном варианте реализации настоящего технического решения, в случае, когда один из контуров больше другого, принимают разницу по ширине за дельту (delta), и производят поиск по меньшей мере одного расположения для получения попиксельной разности изображений со смещениями: 0, delta относительно левого верхнего угла. Такие же действия могут быть выполнены и в случае, когда контуры различаются по высоте.[0113] In an alternative implementation of the present technical solution, in the case when one of the contours is larger than the other, the difference in width is taken as delta (delta), and at least one location is searched to obtain a pixel-by-pixel difference of images with offsets: 0, delta is relative to the top left corner. The same actions can be performed in the case when the contours differ in height.
[0114] В иллюстративном варианте реализации настоящего технического решения, в случае, когда первый контур больше по ширине, а второй по высоте, производят выравнивание контуров по ширине, применяя по меньшей мере следующие варианты смещения: 0, delta относительно левого верхнего угла и далее сравнивают их так, что первый контур лежит внутри другого. Соответственно, максимальная разница по высоте/ширине может быть 2 пикселя, поэтому рассматривают смещения, например, в 0, 1 и 2 пикселя, при этом контур, который больше по ширине/высоте обрезают по соответствующему размеру меньшего контура, то есть если разница между контурами была 2 пикселя по ширине, то большой контур обрезают тремя способами: справа 2 пикселя; слева и справа по 1 пикселю; и слева 2 пикселя. Далее при сравнении полученных контуров вычисляется оценка похожести (1), и если контуры похожи, один из них удаляется. Причем в данном случае если в любом из 9 наложений оценка окажется меньше порога, то контуры считают похожими.[0114] In an illustrative embodiment of the present technical solution, in the case when the first contour is larger in width and the second in height, the contours are aligned in width using at least the following offset options: 0, delta relative to the upper left corner and then compare them so that the first contour lies inside the other. Accordingly, the maximum difference in height/width can be 2 pixels, therefore, offsets are considered, for example, in 0, 1 and 2 pixels, while the contour, which is larger in width/height, is cut to the corresponding size of the smaller contour, that is, if the difference between the contours was 2 pixels wide, then the large outline is cut in three ways: on the right 2 pixels; left and right 1 pixel each; and 2 pixels to the left. Further, when comparing the obtained contours, the similarity score (1) is calculated, and if the contours are similar, one of them is removed. Moreover, in this case, if in any of the 9 overlays the estimate is less than the threshold, then the contours are considered similar.
[0115] Далее способ переходит к выполнению этапа 240.[0115] Next, the method proceeds to step 240.
ШАГ 240 ПОПАРНО СРАВНИВАЮТ ВЫЯВЛЕННЫЕ КОНТУРЫ И КОНТУРЫ КЛАСТЕРОВ, И В ОТВЕТ НА ТО, ЧТО ОЦЕНКА ПОХОЖЕСТИ ПРЕОДОЛЕЛА ПОРОГОВОЕ ЗНАЧЕНИЕ, ПРОИЗВОДЯТ ОБЪЕДИНЕНИЕ ИЗОБРАЖЕНИЯ ВИЗУАЛЬНОГО КОНТЕНТА, СОДЕРЖАЩЕГО СРАВНИВАЕМЫЕ КОНТУРЫ, С КЛАСТЕРОМ, В ПРОТИВОПОЛОЖНОМ СЛУЧАЕ СОЗДАЮТ ДЛЯ ДАННОГО ИЗОБРАЖЕНИЯ ВИЗУАЛЬНОГО КОНТЕНТА НОВЫЙ КЛАСТЕР.The
[0116] На этапе 240 производят попарное сравнение выявленных контуров и контуров, принадлежащих кластерам, и при превышении оценкой похожести (1) порогового значения, добавляют изображение визуального контента в кластер; если оценка не превышает порога, то создают для данного изображения визуального контента новый кластер.[0116] At
[0117] В неограничивающих вариантах осуществления настоящей технологии кластерами являются сформированные группы изображений, соотнесенных с веб-ресурсами, на основе схожести выявленных уникальных контуров (боксов).[0117] In non-limiting embodiments of the present technology, clusters are formed groups of images associated with web resources based on the similarity of identified unique contours (boxes).
[0118] В неограничивающих вариантах структура кластера представляет собой по меньшей мере совокупность: непосредственно изображений визуального контента, соотнесенного с указателем на него, а также выявленных контуров на изображении, при этом дополнительно для каждого контура в кластере запоминают время последнего его совпадения и число последующих несовпадений при добавлении нового изображения в кластер.[0118] In non-limiting versions, the cluster structure is at least a collection of: directly images of visual content, correlated with a pointer to it, as well as detected contours in the image, while additionally for each contour in the cluster, the time of its last match and the number of subsequent mismatches are stored when adding a new image to the cluster.
[0119] В качестве иллюстративного примера, как уже было указано ранее после добавления первого изображения визуального контента 300 в кластер, все контуры, выделенные на нем, становятся контурами кластера. Далее при добавлении изображения визуального контента 400, контуры 302, 303, …314 совпадают с контурами, выявленными на изображении 300 и им в соответствие ставится время их совпадения. Контуру 301 ставится в соответствие число 1, которое показывает, что этот контур не совпал при добавлении нового изображения в кластер один раз, а контуры 401, 402, 403 добавляются к контурам кластера. Далее при добавлении изображения визуального контента 500 в этот кластер, контурам 301, 302, 303, 306, 307, 308, 311, 312, 313 ставится в соответствие новое время их совпадения, а для контуров 304, 305, 309, 310, 314, 401, 402, 403 счетчик несовпадений увеличивается на единицу; притом контур 501 добавляется к контурам кластера.[0119] As an illustrative example, as previously stated, after the first
[0120] В соответствии с настоящим техническим решением после попарного последовательного сравнения изображений визуального контента в случае преодоления порогового значения контур добавляется в кластер, при этом в описываемом случае добавляют все новые контуры, соответствующие изображению визуального контента, ассоциированного с кластером в базу данных 122. Совпадением при этом считается превышение оценкой похожести Р (1) заранее заданного порогового значения.[0120] In accordance with the present technical solution, after a pairwise sequential comparison of images of visual content in the case of overcoming the threshold value, the contour is added to the cluster, while in the described case, all new contours are added corresponding to the image of visual content associated with the cluster in the
[0121] В качестве примера, но не ограничиваясь им со ссылкой на фиг. 3, 4, 5 способ 200 начинает свою работу с обработки первого изображения визуального контента, представленного на фиг. 3, далее, как было указано выше, указанное изображение обрабатывают, выявляя на нем контуры. После чего попарно сравнивают выявленные контуры с контурами кластеров (в описываемый момент контуры кластеров в базе данных 122 отсутствуют и их счетчик установлен в 0) и создают новый кластер, содержащий изображение визуального контента, представленное на фиг 3, так как оценка похожести Р (1) ни в одном из случаев не преодолевает порогового значения сходства. При этом созданный кластер содержит изображение визуального контента, указатель на него, а также все контуры, выявленные на изображении, а именно 301, 302…312. После способ переходит к кластеризации второго изображения визуального контента, представленного на фиг. 4. При этом стоит заметить, что данное изображение визуального контента имеет одинаковые контуры с кластером, сформированным ранее на основе обработки первого изображения визуального контента (302…313). Количество совпадающих контуров веб-ресурса 400 и контуров кластера, созданного на основе изображения визуального контента веб-ресурса 300, превышает допустимый порог, а значит изображение веб-ресурса 400 добавляется в кластер, при этом контуры 401, 402, выявленные только для веб-ресурса 400, добавляются к контурам кластера.[0121] By way of example, but not limitation, with reference to FIG. 3, 4, 5,
[0122] Возможен вариант осуществления настоящего технического решения, в котором процессор 121 выполнен с возможностью в многопоточном режиме обрабатывать каждый контур, а именно находить в базе данных 122 все контуры, разница размеров с которыми не превышает заданного числа пикселей, например, двух пикселей по ширине и/или высоте, и формировать из них множество похожих контуров.[0122] An embodiment of the present technical solution is possible, in which the
[0123] Соответственно, в вариантах осуществления описываемой технологии, формируют по меньшей мере две таблицы в базе данных 122, при этом первая таблица включает в себя информацию о количестве изображений, на которых был обнаружен каждый из контуров, выявленных на изображениях визуального контента, каждому из имеющихся кластеров, а вторая таблица -об общем количестве контуров, входящих в каждый кластер. На основании сведений, содержащихся в сформированных таблицах, отсеивают (удаляют) кластеры, в которых общее число совпадающих контуров составляет менее 85% от числа контуров изображения визуального контента, ассоциированных с ним. При этом в случае, если после процедуры отсеивания для дальнейшей проверки остается свыше пятнадцати кластеров, то из них отбирают пятнадцать кластеров с наибольшим числом совпадений.[0123] Accordingly, in embodiments of the described technology, at least two tables are formed in the
[0124] Ниже будут приведены примерные варианты указанных выше таблиц, а именно таблица 1, которая включает себя информацию о принадлежности каждого из выявленных контуров каждому из кластеров, и таблица 2, содержащая сведения об общем числе контуров в каждом кластере. Стоит дополнительно отметить, что конкретные данные в таблицах 1 и 2, приведены исключительно с целью иллюстрации, вместо этих данных могут быть любые другие численные величины, полученные при выполнении способа 200, в том числе таблицы могут содержать другие количества строк и столбцов.[0124] Below will be exemplary versions of the above tables, namely table 1, which includes information about the belonging of each of the identified contours to each of the clusters, and table 2, containing information about the total number of contours in each cluster. It should be further noted that the specific data in Tables 1 and 2 is provided for illustrative purposes only, instead of these data there may be any other numerical values obtained by performing the
[0125] В варианте осуществления настоящего технического решения далее в многопоточном режиме дополнительно сравнивают контуры каждого кластера, хранящиеся в базе данных 122, и контуры анализируемого изображения визуального контента, при этом объединяя совпавшие контуры и выделяя все кластеры, в которых были совпавшие контуры в соответствии с таблицей 1.[0125] In an embodiment of the present technical solution, further in a multi-threaded mode, the contours of each cluster stored in the
[0126] Кроме того, на данном этапе для добавления изображения визуального контента в кластер выполняют сравнение в многопоточном режиме каждого из выявленных на изображении контуров с каждым из контуров, присутствующих в разных кластерах.[0126] In addition, at this stage, in order to add the visual content image to the cluster, a multi-threaded comparison of each of the contours detected in the image with each of the contours present in different clusters is performed.
[0127] В возможных вариантах осуществления настоящего способа вычисление порога для добавления изображения визуального контента в кластер (или объединения нескольких кластеров) происходит следующим образом:[0127] In possible embodiments of the present method, the threshold calculation for adding a visual content image to a cluster (or combining multiple clusters) occurs as follows:
находят (min), минимальное количество контуров в объединяемых объектах, то есть наименьшее из двух чисел: число, соответствующее количеству контуров на изображении визуального контента и число, соответствующее количеству контуров в данном кластере,find (min), the minimum number of contours in the combined objects, that is, the smallest of two numbers: the number corresponding to the number of contours in the visual content image and the number corresponding to the number of contours in the given cluster,
если min≤2, то вычислительное устройство 120 может выводить предупреждение о не информативности изображения, причем в данном случае новое изображение визуального контента в кластер не добавляется;if min≤2, then the
2<min<5, то для добавления изображения визуального контента в определенный кластер необходимо совпадение всех контуров на изображении и контуров в кластере;2<min<5, then to add an image of visual content to a certain cluster, it is necessary to match all the contours in the image and the contours in the cluster;
5≤min≤10, то для добавления изображения визуального контента в определенный кластер необходимо совпадение по меньшей мере 50% от min контуров на изображении и контуров в кластере,5≤min≤10, then to add an image of visual content to a certain cluster, at least 50% of the min contours in the image and the contours in the cluster must match,
10<min≤15, то для добавления изображения визуального контента в определенный кластер необходимо совпадение по меньшей мере 25% от min контуров на изображении и контуров в кластере,10<min≤15, then to add an image of visual content to a certain cluster, at least 25% of the min contours in the image and the contours in the cluster must match,
min>15, то для добавления изображения визуального контента в определенный кластер необходимо совпадение по меньшей мере 20% от min контуров на изображении и контуров в кластере.min>15, then to add a visual content image to a certain cluster, at least 20% of the min contours in the image and the contours in the cluster must match.
[0128] [0128] Стоит отметить, что кластер создается только из изображений визуального контента, на которых выявлено по меньшей мере три контура.[0128] [0128] It is worth noting that the cluster is created only from visual content images in which at least three contours are identified.
[0129] В вариантах осуществления настоящего решения, возможно отнесение изображения визуального контента к нескольким кластерам, при этом его добавляют в кластер с наибольшим числом совпадений контуров. Кроме того, в данном варианте происходит проверка на возможность объединения выявленных кластеров.[0129] In embodiments of the present solution, it is possible to assign an image of visual content to several clusters, while adding it to the cluster with the largest number of contour matches. In addition, in this variant, a check is made for the possibility of combining the identified clusters.
[0130] Стоит отметить, что в возможных вариантах осуществления настоящего технического решения, этапы объединения кластеров аналогичны этапам добавления изображения визуального контента веб-ресурса в кластер, при одном отличии, что попарно сравнивают между собой контуры двух кластеров и в случае преодоления порога объединяют кластеры. Соответственно, все контуры первого кластера сравниваются со всеми контурами второго, при этом для каждого контура может быть только одно совпадение, то есть, если контур первого кластера совпал с контуром второго кластера, то эти контуры при дальнейших сравнениях не рассматриваются.[0130] It is worth noting that in the possible embodiments of the present technical solution, the stages of combining clusters are similar to the steps of adding an image of the visual content of a web resource to a cluster, with one difference, that the contours of two clusters are compared in pairs and, if the threshold is overcome, the clusters are combined. Accordingly, all contours of the first cluster are compared with all contours of the second, and for each contour there can be only one match, that is, if the contour of the first cluster coincides with the contour of the second cluster, then these contours are not considered in further comparisons.
[0131] Способ 200 переходит к выполнению этапа 250.[0131]
ШАГ 250 СОХРАНЯЮТ УКАЗАНИЯ НА ВЕБ-РЕСУРСЫ, ИЗОБРАЖЕНИЯ ВИЗУАЛЬНОГО КОНТЕНТА КОТОРЫХ ОКАЗАЛИСЬ ПРИНАДЛЕЖАЩИМИ ОДНОМУ КЛАСТЕРУ, В БАЗЕ ДАННЫХ.
[0132] Далее сохраняют указания на веб-ресурсы, изображения визуального контента которых в ходе вышеописанного анализа оказались принадлежащими к одному кластеру, в базе данных 122 вычислительного устройства 120. Иными словами, на данном этапе сохраняют в базе данных информацию о том, какие именно веб-ресурсы принадлежат к одному и тому же подмножеству предположительно фишинговых веб-ресурсов.[0132] Further, indications of web resources are stored in the
[0133] В дополнительном варианте осуществления выявленные и сохраненные в базе данных кластеры могут затем передаваться на внешние устройства (не показаны на чертежах) с целью дальнейшей атрибуции фишинговых веб-ресурсов, зеркал веб-ресурсов, заблокированных или запрещенных веб-сайтов.[0133] In an additional embodiment, the clusters detected and stored in the database can then be transmitted to external devices (not shown in the drawings) for the purpose of further attribution of phishing web resources, web mirrors, blocked or banned websites.
[0134] Стоит отметить, что в дополнительном варианте реализации настоящей технологии после кластеризации всех изображений визуального контента удаляют кластеры, в которых оказалось менее установленного числа изображений, например, для лучшего понимания, менее трех изображений визуального контента. Такие изображения заносятся в специальный список, сохраненный в базе данных 122, и временно считают «мусорными», неинформативными.[0134] It is worth noting that in an additional embodiment of the present technology, after clustering all visual content images, clusters are removed that contain less than a specified number of images, for example, less than three visual content images for better understanding. Such images are entered into a special list stored in the
[0135] Далее, по меньшей мере один раз в определенный промежуток времени, устанавливаемый в системе 100, получают список от 1 до N всех оставшихся «мусорных» изображений визуального контента и соответствующих им контуров для фильтрации неинформативных изображений веб-ресурсов.[0135] Further, at least once in a certain period of time set in the
[0136] После проведения фильтрации для оставшиеся изображений визуального контента в списке от 1 до N, в базе данных создают дополнительную матрицу, в которой как в строках, так и в столбцах представлены оставшиеся «мусорные» изображения от 1 до N, а на пересечении строк и столбцов проставлено количество совпадающих для них контуров. Созданная матрица смежности используется для выявления устройством 120 списка уникальных пар похожих по размерам контуров, сопоставленных с изображениями.[0136] After filtering for the remaining images of visual content in the list from 1 to N, an additional matrix is created in the database, in which both the rows and columns represent the remaining "garbage" images from 1 to N, and at the intersection of the rows and columns, the number of contours coinciding for them is indicated. The generated adjacency matrix is used to identify by the device 120 a list of unique pairs of similarly sized contours associated with the images.
[0137] В таблице 3 приведен неограничивающий пример построения дополнительной матрицы, пример который представлен в таблице 3. Стоит также отметить, что конкретные данные в таблице 3, приведены исключительно с целью иллюстрации, вместо этих данных могут быть любые другие численные величины, полученные при выполнении способа 200, в том числе матрица может содержать другие количества строк и столбцов.[0137] Table 3 shows a non-limiting example of constructing an additional matrix, an example of which is presented in table 3. It is also worth noting that the specific data in table 3 is provided solely for the purpose of illustration, instead of these data, any other numerical values \u200b\u200bobtained when performing
[0138] В неограничивающем варианте осуществления настоящей технологии после выявления устройством 120 списка похожих по размерам контуров в несколько потоков сравнивают содержащиеся в списке контуры и оставляют только наиболее похожие пары контуров. При этом информацию о пересечении контуров заносят в матрицу, хранящуюся в базе данных 122 для тех изображений визуального контента, к которым эти контуры относятся.[0138] In a non-limiting embodiment of the present technology, after the
[0139] При этом для каждой уникальной пары изображений, содержащейся в списке, например, со ссылкой на таблицу 3, для изображения 1 и изображения 2, накладывают контуры друг на друга для выявления количества похожих пар контуров и, если в некой паре контуров контуры оказываются похожи друг на друга, то в изначально созданной матрице, где все заполнено 0, число в соответствующей ячейке увеличивают на 1. В данном примере, как можно видеть из таблицы 3, для данной пары изображений было найдено 19 похожих пар контуров.[0139] At the same time, for each unique pair of images contained in the list, for example, with reference to table 3, for image 1 and image 2, the contours are superimposed on each other to identify the number of similar pairs of contours and, if in a certain pair of contours, the contours are similar to each other, then in the initially created matrix, where everything is filled with 0, the number in the corresponding cell is increased by 1. In this example, as can be seen from Table 3, 19 similar pairs of contours were found for this pair of images.
[0140] Далее для подтверждения ассоциированности пар веб-ресурсов на основе пар их изображений визуального контента построчно проверяют матрицу, при этом преобразуя ее в матрицу смежности. В том случае, если количество контуров, совпавших у каждой пары изображений, превышает заранее заданный порог, в соответствующей ячейке матрицы проставляют единицу. Если количество совпавших контуров оказывается меньше заданного порога, в соответствующей ячейке проставляют ноль. Неограничивающий пример преобразованной матрицы смежности, показанной ранее в таблице 3, и обработанной данным способом при значении порога 10, показан в таблице 4.[0140] Next, to confirm the association of pairs of web resources based on pairs of their images of visual content, the matrix is checked line by line, while converting it into an adjacency matrix. In the event that the number of contours that matched for each pair of images exceeds a predetermined threshold, one is put in the corresponding cell of the matrix. If the number of matching contours is less than the specified threshold, zero is put in the corresponding cell. A non-limiting example of the transformed adjacency matrix shown earlier in Table 3, and processed in this manner at a threshold value of 10, is shown in Table 4.
[0141] В неограничивающих вариантах осуществления настоящей технологии далее производят вычисление сильно связных компонентов матрицы смежности. По сути, на данном шаге строят максимально связанный подграф, в котором любая вершина достижима из любой другой вершины графа. Собственно, методы вычисления сильно связанных компонент матрицы смежности широко известны в теории графов; при этом для реализации настоящей технологии может быть использован любой из этих методов.[0141] In non-limiting embodiments of the present technology, the strongly connected components of the adjacency matrix are then computed. In fact, at this step, a maximally connected subgraph is built, in which any vertex is reachable from any other vertex of the graph. Actually, methods for calculating strongly connected components of an adjacency matrix are widely known in graph theory; however, any of these methods can be used to implement the present technology.
[0142] В неограничивающем варианте осуществления настоящей технологии, для определения сильно связанных компонент используют алгоритм Тарьяна с модификациями Нуутила или нерекурсивный алгоритм Тарьяна.[0142] In a non-limiting embodiment of the present technology, Tarjan's algorithm with modifications of Nuutila or Tarjan's non-recursive algorithm is used to determine strongly coupled components.
[0143] Каждый такой построенный подграф образует новый кластер изображений визуального контента. Дополнительно стоит отметить, что построенный из «мусорных» изображений визуального контента кластер добавляется к построенным ранее кластерам как равнозначный. При этом изображения визуального контента, которые остались в списке «мусорных» изображений остаются там до тех пор, пока не войдут в один из новых кластеров, составленных из «мусорных» изображений.[0143] Each such constructed subgraph forms a new cluster of visual content images. Additionally, it is worth noting that the cluster built from the "garbage" images of visual content is added to the clusters built earlier as equivalent. At the same time, visual content images that remained in the list of "garbage" images remain there until they enter one of the new clusters made up of "garbage" images.
[0144] На Фиг. 7 далее будет представлена общая схема вычислительного устройства (700), обеспечивающего обработку данных, необходимую для реализации заявленного решения.[0144] In FIG. 7 below will be a general diagram of a computing device (700) that provides the data processing necessary to implement the claimed solution.
[0145] В общем случае устройство (700) содержит такие компоненты, как: один или более процессоров (701), по меньшей мере одну память (702), средство хранения данных (703), интерфейсы ввода/вывода (704), средство В/В (705), средства сетевого взаимодействия (706).[0145] In general, the device (700) includes components such as: one or more processors (701), at least one memory (702), a data storage medium (703), input/output interfaces (704), means B /B (705), networking tools (706).
[0146] Процессор (701) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (700) или функциональности одного или более его компонентов. Процессор (701) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (702).[0146] The processor (701) of the device performs the basic computing operations necessary for the operation of the device (700) or the functionality of one or more of its components. The processor (701) executes the necessary machine-readable instructions contained in the main memory (702).
[0147] Память (702), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемую функциональность.[0147] The memory (702) is typically in the form of RAM and contains the necessary software logic to provide the required functionality.
[0148] Средство хранения данных (703) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п.[0148] The data storage means (703) may be in the form of HDD, SSD disks, raid array, network storage, flash memory, optical storage media (CD, DVD, MD, Blue-Ray disks), etc.
[0149] Интерфейсы (704) представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, Fire Wire и т.п. Выбор интерфейсов (704) зависит от конкретного исполнения устройства (700), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.[0149] Interfaces (704) are standard means for connecting and working with the server side, for example, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, Fire Wire, etc. The choice of interfaces (704) depends on the specific implementation of the device (700), which may be a personal computer, mainframe, server cluster, thin client, smartphone, laptop, and the like.
[0150] В качестве средств В/В данных (705) могут использоваться клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.[0150] The data I/O means (705) can be a keyboard, joystick, display (touchscreen), projector, touchpad, mouse, trackball, light pen, speakers, microphone, and the like.
[0151] Средства сетевого взаимодействия (706) выбираются из устройств, обеспечивающих прием и передачу данных по сети, например, Ethernet-карта, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (705) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.[0151] Means of networking (706) are selected from devices that provide reception and transmission of data over the network, for example, an Ethernet card, WLAN / Wi-Fi module, Bluetooth module, BLE module, NFC module, IrDa, RFID module, GSM modem etc. With the help of tools (705) provides the organization of data exchange over a wired or wireless data transmission channel, such as WAN, PAN, LAN (LAN), Intranet, Internet, WLAN, WMAN or GSM.
[0152] Компоненты устройства (700) сопряжены посредством общей шины передачи данных (710).[0152] The components of the device (700) are interfaced through a common data bus (710).
[0153] В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.[0153] In these application materials, a preferred disclosure of the implementation of the claimed technical solution was presented, which should not be used as limiting other, private embodiments of its implementation, which do not go beyond the requested scope of legal protection and are obvious to specialists in the relevant field of technology.
[0154] Заявленный способ кластеризации фишингового контента обеспечивает повышение точности кластеризации множества веб-ресурсов на группы, что позволяет затем осуществлять оперативную проверку каждой из сохраненных групп экспертом и выявлять группы фишинговых сайтов, например, созданных посредством фишинговых наборов, выявлять зеркала и копии заблокированных и выявленных ранее вредоносных веб-ресурсов, определять авторов фишингового набора или владельца/ев фишингового веб-ресурса. При этом существенно снижается нагрузка на эксперта в процессе определения вредоносных веб-ресурсов.[0154] The claimed method of clustering phishing content provides an increase in the accuracy of clustering a set of web resources into groups, which then allows an expert to quickly check each of the saved groups and identify groups of phishing sites, for example, created using phishing kits, identify mirrors and copies of blocked and detected previously malicious web resources, determine the authors of the phishing set or the owner/s of the phishing web resource. This significantly reduces the load on the expert in the process of identifying malicious web resources.
[0155] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.[0155] Modifications and improvements to the above described embodiments of the present technical solution will be clear to specialists in this field of technology. The foregoing description is provided by way of example only and is not intended to be limiting in any way. Thus, the scope of the present technical solution is limited only by the scope of the appended claims.
Claims (41)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL2031940A NL2031940B1 (en) | 2021-05-20 | 2022-05-19 | Method and device for clustering phishing web resources based on visual content image |
US17/749,368 US20220377108A1 (en) | 2021-05-20 | 2022-05-20 | Method and device for clustering phishing web resources based on visual content image |
US17/861,323 US20220385694A1 (en) | 2021-05-20 | 2022-07-11 | Method and device for clustering phishing web resources based on visual content image |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2778460C1 true RU2778460C1 (en) | 2022-08-19 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115620031A (en) * | 2022-12-12 | 2023-01-17 | 广东新禾道信息科技有限公司 | Method, system and equipment for processing natural resource right-confirming registration information |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070078846A1 (en) * | 2005-09-30 | 2007-04-05 | Antonino Gulli | Similarity detection and clustering of images |
US20100095375A1 (en) * | 2008-10-14 | 2010-04-15 | Balachander Krishnamurthy | Method for locating fraudulent replicas of web sites |
US20140359760A1 (en) * | 2013-05-31 | 2014-12-04 | Adi Labs, Inc. | System and method for detecting phishing webpages |
RU2637477C1 (en) * | 2016-12-29 | 2017-12-04 | Общество с ограниченной ответственностью "Траст" | System and method for detecting phishing web pages |
US20200036751A1 (en) * | 2018-07-25 | 2020-01-30 | Cyren, Inc. | Phishing detection system and method of use |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070078846A1 (en) * | 2005-09-30 | 2007-04-05 | Antonino Gulli | Similarity detection and clustering of images |
US20100095375A1 (en) * | 2008-10-14 | 2010-04-15 | Balachander Krishnamurthy | Method for locating fraudulent replicas of web sites |
US20140359760A1 (en) * | 2013-05-31 | 2014-12-04 | Adi Labs, Inc. | System and method for detecting phishing webpages |
RU2637477C1 (en) * | 2016-12-29 | 2017-12-04 | Общество с ограниченной ответственностью "Траст" | System and method for detecting phishing web pages |
US20200036751A1 (en) * | 2018-07-25 | 2020-01-30 | Cyren, Inc. | Phishing detection system and method of use |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115620031A (en) * | 2022-12-12 | 2023-01-17 | 广东新禾道信息科技有限公司 | Method, system and equipment for processing natural resource right-confirming registration information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11475143B2 (en) | Sensitive data classification | |
CN110537180B (en) | System and method for tagging elements in internet content within a direct browser | |
CN110413908B (en) | Method and device for classifying uniform resource locators based on website content | |
US9621566B2 (en) | System and method for detecting phishing webpages | |
CN104217160B (en) | A kind of Chinese detection method for phishing site and system | |
CN104077396B (en) | Method and device for detecting phishing website | |
JP5600168B2 (en) | Method and system for web page content filtering | |
US20070143271A1 (en) | System and method for appending security information to search engine results | |
CN104156490A (en) | Method and device for detecting suspicious fishing webpage based on character recognition | |
RU2676247C1 (en) | Web resources clustering method and computer device | |
JP2014502753A (en) | Web page information detection method and system | |
CN102663060B (en) | Method and device for identifying tampered webpage | |
CN104158828B (en) | The method and system of suspicious fishing webpage are identified based on cloud content rule base | |
Lago et al. | Visual and textual analysis for image trustworthiness assessment within online news | |
Vundavalli et al. | Malicious URL detection using supervised machine learning techniques | |
CN108763961B (en) | Big data based privacy data grading method and device | |
CN108270754B (en) | Detection method and device for phishing website | |
CN114117299A (en) | Website intrusion tampering detection method, device, equipment and storage medium | |
Wen et al. | Detecting malicious websites in depth through analyzing topics and web-pages | |
RU2778460C1 (en) | Method and apparatus for clustering phishing web resources based on an image of the visual content | |
US20220377108A1 (en) | Method and device for clustering phishing web resources based on visual content image | |
CN114880540A (en) | Intelligent reminding method based on intelligent financial text comments | |
US20220385694A1 (en) | Method and device for clustering phishing web resources based on visual content image | |
Drew et al. | Optimized combined-clustering methods for finding replicated criminal websites | |
Gundelach et al. | Cookiescanner: An Automated Tool for Detecting and Evaluating GDPR Consent Notices on Websites |