Система и способ оценки опасности веб-сайтов
SYSTEM AND METHOD FOR EVALUATING MALICIOUS WEBSITES

Область техники
Настоящее изобретение относится к системам и способам обеспечения безопасности веб-сайтов, а более конкретно к системе и способу оценки уровня опасности веб-сайтов на основании обнаружения вредоносных угроз и уязвимостей на веб-сайтах.
Уровень техники
В настоящее время наиболее популярным местом получения информации является сеть «Интернет», которая объединяет в себе практически бесконечное количество веб-сайтов. Под веб-сайтом понимается информационный ресурс, содержащий совокупность объединенных общим именем (доменным именем) и содержанием веб-страниц. Веб-сайт физически размещен на каком-либо компьютерном устройстве (например, сервере или персональном компьютере, чаще всего - на сервере провайдера хостинга), при этом каждый веб-сайт имеет определенное доменное имя в сети. Доступ к веб-сайту и его страницам производится с помощью, например, протокола передачи гипертекста (HTTP) и иногда с помощью более защищенного протокола (HTTPS), а также других.
Так как веб-сайты предоставляют собой огромный коммерческий потенциал, как для предприятий, так и для частных лиц, то индустрия разработки веб-сайтов развивается быстрыми темпами, что влияет на качество и безопасность разработки веб-сайтов. При создании новых веб-сайтов разработчики не успевают в должной мере создавать надежные, защищенные и безопасные веб-сайты. Множество веб-сайтов создаются с использованием бесплатных или нелицензионных систем управления веб-сайтами, которые содержат «дыры» (проблемы в программном коде) и уязвимости. Зачастую к созданию сайтов привлекаются сторонние неквалифицированные или ненадежные специалисты, которые могут сами внести на сайт как случайно, так и преднамеренно вредоносный код или оставить на сайте «дыры» и уязвимости, которые могут быть использованы для вмешательства в работу веб-сайта или распространения вредоносного воздействия в дальнейшем.
Кроме того, активность компьютерных вирусописателей и злоумышленников в последние годы сместилась в сетевые технологии, в том числе и в сеть Интернет, так как традиционные компьютеры и планшетные устройства с каждым годом все надежнее защищаются от вредоносного программного обеспечения (далее - ПО) и все меньше используются в деловом обороте, а веб-сайты, наоборот, защищены слабо и используются все больше. Типовые злоумышленники, как правило, заинтересованы в том, чтобы ценой небольших усилий взломать большое количество веб-сайтов и нанести вред одновременно максимальному числу пользователей -посетителей веб-сайтов. Возможно, время массовых вирусных инфекций для веб-сайтов в сети Интернет настанет в ближайшем будущем. Так же, как настало время массовых атак на настольные компьютеры после выхода операционной системы Windows ХР. Таким образом, имеется большое число предпосылок к тому, чтобы плохо защищенные веб-сайты массово заражались или использовались вредоносным ПО (например, вирусами, троянскими программами и эксплойтами) и представляли собой угрозу для пользователей, коммерческих предприятий и хостинг-провайдеров.
В то же время традиционные антивирусные компании, да и поисковые сервисы (например, Google, Yandex) в своих разработках не предоставляют средств защиты веб-сайтов и не решают проблему защиты сайтов со стороны разработчиков и владельцев сайтов. Так, традиционные антивирусы сфокусированы, в основном, на конечных устройствах: персональных компьютерах, планшетах и мобильных телефонах. Они не всегда определяют взломанные и зараженные веб-сайты, особенно если эти веб-сайты не атакуют напрямую пользователей. Серверные антивирусы, используемые хостинг-провайдерами, недостаточно эффективны, потому что используют антивирусные базы от традиционных антивирусов, и не обнаруживают и не нейтрализуют взломы и атаки, направленные на интернет-бизнес: кражу трафика, обман поисковых систем и другие. Поисковые системы умеют обнаруживать только некоторые проблемы веб-сайтов, но при этом делают это слишком медленно, т.к. заходят на веб-сайты далеко не ежедневно. За это время, в случае заражения веб-сайта, успеют пострадать как пользователи данного веб-сайта, так и владелец веб-сайта, который понесет убытки в виде потери трафика (уменьшение посетителей). Существующие технологии не так эффективны, как необходимо для защиты веб-сайтов, особенно малого и среднего бизнеса, не имеющего квалифицированных ресурсов для обеспечения безопасности сайтов.
Так, например, в патенте US 7177937 B2 раскрывается подход проверки на наличие вредоносных программ почтовых серверов, серверов обмена сообщениями и веб-сайтов. Проверка заключается в контроле запросов пользователей на веб-сервера (сайты), где во время контроля определяется присутствие или отсутствие вирусов в передаваемых данных. После проверки пользователь информируется о наличие или отсутствие вредоносных программ. Указанная технология не производит непосредственную проверку самих веб-сайтов, а только защиту веб-клиентов (пользователей), от возможного заражения.
Можно говорить о том, что подходы, ориентированные на обеспечение безопасности непосредственно самих веб-сайтов практически не существуют. Таким образом, требуется новый эффективный подход, позволяющий производить проверку и защиту самих веб-сайтов. Так, система и способ оценки уровня опасности веб-сайтов на основании обнаружения вредоносных угроз на самих веб-сайтах эффективно позволяет решить данную задачу.
Раскрытие изобретения
Настоящее изобретение предназначено для раннего обнаружения угроз на веб-сайте с целью ограничения распространение вредоносных угроз и предотвращения блокирования доступа к веб-сайту на различных поисковых системах и различными антивирусными системами, что позволяет осуществлять оперативное решение проблемы безопасности и защиты веб-сайта для разработчика или владельца веб-сайта.
Первый технический результат настоящего изобретения заключается в оперативном обнаружении заражения вредоносными программами веб-сайта за счет оценки уровня опасности указанного веб-сайта на основании проведения комплексной проверки указанного веб-сайта, которая включает проверку объектов веб-сайта.
Второй технический результат настоящего изобретения заключается в предотвращении блокирования веб-сайта различными поисковыми и антивирусными системами путем формирования превентивных мер на основании оценки уровня опасности веб-сайта, которая учитывает информацию о наличии вредоносных угроз на веб-сайте и соответствующих рисках, например, для владельца веб-сайта, разработчика веб-сайта или провайдера хостинга.
Стоит отметить, что особенностью технического решения в заявленном изобретении в отличие от уровня техники является превентивное выявление рисков существования угроз и оперативное детектирование факта реализации угрозы (заражения) одного или нескольких веб-сайтов с возможностью последующего информирования заинтересованных сторон (например, владельца сайта, разработчика сайта или провайдера хостинга).
В качестве одного из вариантов исполнения предлагается система определения уровня опасности веб-сайта, которая включает в себя: средство сканирования, предназначенное для соединения с веб-страницами проверяемого веб-сайта путем HTTP-запросов или загрузки упомянутых веб-страниц в эмуляторе браузера, выявления объектов, содержащихся на упомянутых веб-страницах, при этом объектами являются по крайней мере текстовые файлы, ссылки внутри веб-сайта, гиперссылки на различные ресурсы в сети, куки-файлы (от англ. HTTP cookies), сценарии и сетевые адреса, передачи выявленных объектов средству управления проверками; упомянутое средство управления проверками, предназначенное для определения типа у каждого объекта, назначения каждому объекту средства анализа на основании определенного типа объекта и передачи каждого объекта назначенному средству анализа; средства анализа, которыми по крайней мере являются средство анализа URL-адресов, средство анализа сценариев и средство анализа «редиректов», при этом каждое указанное средство предназначено для проведения проверки полученных объектов на наличие среди них вредоносных или подозрительных объектов, при этом вид проверки соответствует назначению средства, передачи результатов проверки объектов в виде решений средству вердиктов, при этом решение содержит информацию о вредоносности, подозрительности или безопасности проверенного объекта; средство вердиктов, предназначенное для проведения анализа полученных решений с помощью эвристических правил, вынесения результата анализа для каждой проверенной веб-страницы проверяемого вебсайта и передачи указанных результатов средству оценки; средство оценки, предназначенное для определения уровня опасности веб-сайта на основании полученных результатов проверки, где уровень опасности является, по крайней мере, критическим, опасным или безопасным.
В другом варианте исполнения системы средство управления проверками формирует очередь объектов для каждого определенного типа объекта, где каждой очереди объектов соответствует средство анализа, и передачи объектов из очереди объектов соответствующему средству анализа.
В еще одном варианте исполнения системы средствами анализа также являются следующие средства: средство анализа файлов и средство анализа уязвимостей.
В другом варианте исполнения системы в качестве еще одного средства анализа является средство внешней проверки, предназначенное для проверки наличия информации об упомянутом веб-сайте, упомянутых веб-страницах и упомянутых объектах во внешних источниках; вынесения решения на основании собранной информации и передачи результатов проверки средству оценки.
В еще одном варианте исполнения системы внешними источниками являются по крайней мере вредоносные базы антивирусных компаний и базы подозрительных сайтов поисковых систем.
В другом варианте исполнения системы средство вердиктов предназначено для объединения полученных решений в группы решений, где каждая группа решений соответствует веб-странице, из которой были выявлены объекты, и проведения анализа упомянутых групп с помощью эвристических правил.
В еще одном варианте исполнения системы средство защиты, предназначенное для определения типа защиты в зависимости от определенного уровня опасности.
В другом варианте исполнения системы типом защиты является, по меньшей мере, блокирование исходящего трафика, содержащего вредоносные объекты, и удаление вредоносных объектов.
В еще одном варианте исполнения системы средство оценки также предназначено для формирования отчета об уровне опасности веб-сайта согласно заданному шаблону, который соответствует определенному региону, где размещен веб-сайт, и передачи отчета заинтересованным лицам, которыми являются по крайней мере владелец веб-сайта и разработчик вебсайта.
В другом варианте исполнения системы при загрузке или эмуляции веб-страниц понимается, по крайней мере, загрузка или эмуляция главной веб-страницы проверяемого веб-сайта, где главной веб-страницей является веб-страница с доменным именем второго уровня.
В качестве другого варианта исполнения предлагается способ определения уровня опасности веб-сайта, включающий в себя этапы, на которых: производят с помощью средства сканирования соединение с веб-страницами проверяемого веб-сайта путем HTTP-запросов или загрузки упомянутых веб-страниц в эмуляторе браузера; выявляют с помощью средства сканирования объекты, содержащиеся на упомянутых веб-страницах, при этом объектами являются по крайней мере загружаемые файлы, ссылки внутри веб-сайта, гиперссылки на различные ресурсы в сети, куки-файлы (от англ. HTTP cookies), сценарии и сетевые адреса; определяют с помощью средства управления проверками тип для каждого выявленного объекта; назначают с помощью средства управления проверками каждому объекту средство анализа на основании определенного типа объекта; передают с помощью средства управления каждый объект назначенному средству анализа, при этом средствами анализа по крайней мере являются средство анализа URL-адресов, средство анализа сценариев и средство анализа «редиректов»; проводят с помощью средств анализа, которые получили объекты, проверку полученных объектов на наличие среди них вредоносных или подозрительных объектов, при этом вид проверки соответствует назначению средства анализа; передают с помощью средств анализа, которые получили объекты, результаты проверки объектов в виде решений средству вердиктов, при этом решение содержит информацию о вредоносности, подозрительности или безопасности проверенного объекта; проводят с помощью средства вердиктов анализ полученных решений с помощью эвристических правил и выносят результат анализа для каждой проверенной веб-страницы проверяемого веб-сайта; определяют с помощью средства оценки уровень опасности веб-сайта на основании результатов анализа, где уровень опасности является, по крайней мере, критическим, опасным или безопасным.
В другом варианте исполнения способа на этапе г) формируют очередь объектов для каждого определенного типа объекта, где каждой очереди объектов соответствует средство анализа согласно типу объекта.
В еще одном варианте исполнения способа на этапе д) средствами анализа также являются средство анализа файлов, средство анализа уязвимостей и средство внешней проверки.
В другом варианте исполнения способа объединяют с помощью средства вердиктов полученные решения в группы решений, где каждая группа решений соответствует веб-странице, из которой были выявлены объекты.
В еще одном варианте исполнения способа определяют с помощью средства защиты типы защиты согласно определенному уровню опасности.
В другом варианте исполнения способа типом защиты является, по меньшей мере, блокирование исходящего трафика, содержащего вредоносные объекты, и удаление вредоносных объектов.
В еще одном варианте исполнения способа формируют с помощью средства оценки отчет об уровне опасности веб-сайта согласно заданному шаблону и передают отчет заинтересованному лицу, которым является по крайней мере владелец веб-сайта или разработчик веб-сайта.
В другом варианте исполнения способа сформированный отчет об уровне опасности веб-сайта соответствует определенному региону размещения компьютерного устройства, на котором размещен веб-сайта.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 иллюстрирует схему взаимодействия веб-сайтов с компьютерной системой, на которой размещена система определения уровня опасности веб-сайтов.
Фиг. 2 иллюстрирует структурную схему системы определения уровня опасности веб-сайта.
Фиг. 3 иллюстрирует способ определения уровня опасности веб-сайта.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено в приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
На Фиг. 1 представлена схема взаимодействия веб-сайтов 120 с компьютерной системой, на которой размещена система определения уровня опасности веб-сайтов 150 (далее - система определения 150).
В качестве компьютерной системы (не показана на Фиг. 1) понимается компьютерная система общего назначения, которая может быть как персональным компьютером, так и сервером (серверами). Компьютерной системе (далее - компьютер) присущи все компоненты современных компьютерных устройств и/или серверов. Компьютер в том числе имеет файловую систему, на которой содержится записанная операционная система, а также дополнительные программные приложения, программные модули и данные программ. Компьютер способен работать в сетевом окружении, при этом используется сетевое соединение с одним или несколькими удаленными компьютерами. Удаленный компьютер (или компьютеры) являются такими же персональными компьютерами или серверами. Кроме того, в вычислительной сети, например сети Интернет, могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать как локальную вычислительную сеть (LAN), так и глобальную вычислительную сеть (WAN), включая сети операторов мобильной связи. Такие сети, например, применяются в корпоративных компьютерных сетях и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях компьютер подключен к локальной сети через сетевой адаптер или сетевой интерфейс.При использовании сетей компьютер может использовать различные средства обеспечения связи с глобальной вычислительной сетью, такой как сеть Интернет, например, модем. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети.
Веб-сайт 120 представляет собой веб-ресурс, объединяющий некоторое количество веб-страниц и размещенный, например, на веб-сервере. Веб-сервером называют программу, выполняющую функции сервера (компьютерной системы), на котором данная программа работает. Помимо веб-сервера могут быть установлены различные серверные приложения, например, почтовый сервер, файловый сервер и т.д., каждый из которых предоставляет свой собственный сервис. Для доступа к подобным сервисам используются специальные программы, такие как браузер, почтовый клиент, клиент службы доступа к файлам и другие. Соответственно пользователи с помощью браузера могут получить доступ к представляемым данным на веб-сайтах 120 по URL-адресу требуемой им веб-страницы веб-сайта. Стоит отметить, что взаимодействие между веб-сайтом (веб-сервером) и пользователями, в том числе и системой определения 150, производится с помощью различных протоколов. Основными протоколами передачи данных являются HTTP(S), (S)FTP, SSH, РОРЗ, SMTP и IMAP4.
Таким образом, система определения 150 при взаимодействии с каким-либо веб-сайтом 120 использует в своей работе браузер или производит эмуляцию браузера.
Кроме того, для выполнения своего предназначения система определения 150 также может взаимодействовать с различными внешними сервисами (источниками информации), такими как: антивирусный базы данных 170, содержащие информацию о вредоносном ПО; «черные» списки поисковых систем 180, содержащие информацию о подозрительных веб-сайтах или веб-сайтах, содержащих вредоносные объекты; другие «черные» списки и базы уязвимостей различных компетентных компаний и организаций 190, содержащие информацию об уязвимостях в приложениях и веб-сайтах, а также списки зараженных веб-сайтов или скомпрометированных email-адресов. Примерами антивирусных баз данных являются базы таких компаний как Symantec, Trend Micro и Kaspersky Lab. Примерами поисковых систем являются Google и Yandex. В свою очередь базами уязвимостей могут являться базы такой компании как Positive Technologies. Примерами других «черных» списков могут быть списки как DNSBL (от англ. Domain Name System Blacklist) или списки таких сервисов как Phishtank (сервис, направленный на борьбу с интернет-мошенничеством, например, фишингом) и другие.
Далее будет рассмотрена структурная схема системы определения 150 при взаимодействии с одним из веб-сайтов 120.
На Фиг. 2 представлена структурная схема системы определения уровня опасности веб-сайта 150. Система определения 150 предназначена для определения уровня опасности веб-сайта 120 путем применения, по крайней мере, двух (количество не ограничено) способов обнаружения и последующим вынесением оценки по результатам проверки. Способы обнаружения позволяют выявить как вредоносные объекты, содержащиеся на веб-сайте, так и различные проблемы, связанные с уязвимостями веб-сайта 120. Уровень опасности отражает наличие на веб-сайте 120 вредоносных, подозрительных и нежелательных объектов и/или присутствие веб-сайта 120 в списках нежелательных сайтов поисковых систем и/или антивирусных компаний, а также других «черных» списках и, кроме того, наличие на сайте уязвимостей. Такая проверка может проводиться как разово, так и с некой периодичностью (например, один раз в сутки). В случае периодичной проверки веб-сайта 120 итоговый уровень опасности будет наиболее точным, т.к. с каждой повторной проверкой уровень опасности может уточняться или изменяться, и позволит оперативно определять факты заражения веб-сайта и, соответственно, их возможное распространение с такого веб-сайта.
Упомянутые способы обнаружения объединяют в себе как способы анализа информации, полученной от внешних источников о проверяемом веб-сайте 120, так и способы анализа контента (объектов), содержащегося как на самом веб-сайте 120, так и загружаемого с других веб-сайтов 120.
Система определения 150 содержит, по крайней мере, средство сканирование 210, средство управления проверками 220, средства анализа 240, средство вердиктов 250 и средство оценки 270. В частном случае реализации система обнаружения 150 также содержит средство внешней проверки 260 и средство защиты 280.
Средство сканирования 210 с помощью эмуляции браузера производит соединение с каждой веб-страницей веб-сайта 120 по соответствующим адресам веб-страниц. Стоит отметить, что, как правило, веб-страницы содержат описание разметки на языке HTML (или XHTML), с помощью которого и производится интерпретация в браузере. После чего средство сканирование 210 выделяет (определяет) все объекты, содержащиеся на каждой веб-странице. Объекты веб-страниц могут быть как статические объекты (описанные в коде страницы), так и динамические (загружаемые или изменяемые в процессе интерпретации кода). Примерами объектов являются служебные ответы веб-сервера, текстовые документы, загружаемые файлы, ссылки внутри веб-сайта, гиперссылки на различные ресурсы в сети, куки-файлы (от англ. HTTP cookies, небольшой фрагмент данных), сценарии на различных языках программирования - script (с англ. скрипт, сценарии), IP-адреса, различные данные пользователей, редиректы (автоматическое перенаправление с одного веб-сайта на другой) и многое другое. После средство сканирования 210 передает указанную информацию обо всех выделенных объектах на всех веб-страницах веб-сайта 120 или сами объекты средству управления проверками 220.
Стоит отметить, что соединение с веб-страницами может осуществляться как с помощью одного IP-адреса, так и с помощью нескольких, в том числе выбираемых случайно или из определенного списка (например, сети определенного провайдера или оператора связи) с целью обнаружения вредоносного кода на веб-сайте, который использует средства маскировки от обнаружения или, наоборот, проявляет себя только в сетях с определенными диапазонами адресов (например, сетях операторов связи).
В свою очередь средство управления проверками 220 после получения информации об объектах или самих объектов производит определение типа у каждого объекта, назначение соответствующего средства анализа 240 для проверки объектов на основании определенного типа и передачи указанных объектов или информации о них соответствующим средствам анализа 240а … 240n. Примерами типов объектов являются следующие категории: URL, сценарии (script), текстовые документы и файлы различных форматов. Кроме того, средство управления проверками 220 в частном случае реализации может предварительно (перед передачей объектов средствам анализа 240) формировать очередь объектов для каждого типа объектов, где для каждой очереди назначит одно из средств анализа 240, которое имеет возможность провести проверку соответствующего типа объектов. Разделение по типам и формирование очереди позволяет оптимизировать нагрузку на средства анализа 240, т.к. количество веб-страниц на одном сайте может быть большим (например, тысячи или десятки тысяч веб-страниц), а количество выявленных в них объектов еще больше.
В одном из вариантов реализации формирование очереди для каждого типа объекта основывается на доменных именах веб-страниц, на которых были выявлены объекты. Например, объекты с веб-страницы, у которой доменное имя второго уровня или адрес внутри веб-сайта меньшей вложенности будут стоять в очереди выше (т.е. будут проверены раньше), чем объекты с веб-страницы, у которой доменное имя третьего уровня или адрес внутри сайта большей вложенности, и т.д. Это связано с тем, что на веб-страницах с доменными именами верхнего уровня или меньшей вложенностью вероятность присутствия угрозы (вредоносного ПО или уязвимости), как правило, выше.
Стоит отметить, что в описании при использовании нумерации 240 для средств анализа подразумеваются не только все сразу средства анализа 240а … 240n, но и каждая в отдельности.
Средства анализа 240 предназначены для проведения проверки всех выявленных объектов на наличие среди них вредоносных или подозрительных объектов, определения в объектах наличия уязвимостей, выявления ссылок на зараженные, фишинговые или мошеннические сайты или вредоносных скриптов (сценариев) и др. и передачи результата проверки объекта в виде вердикта средству вердиктов 250. Под вредоносными объектами понимается любой объект, с помощью которого реализуется или может реализоваться непредусмотренное владельцем сайта или его разработчиком действие, с целью несанкционированного использования сайта или причинения вреда (нанесения ущерба) посетителю сайта, владельцу сайта, провайдеру хостинга или другим сторонам, также с целью извлечения выгоды или просто с целью вмешательства в работу веб-сайта. Подозрительными объектами являются объекты, которые не попадают во вредоносные объекты, но и не являются легитимными (безопасными) объектами.
Так как для проверки различных типов объектов требуется различные способы проверки, то и средства анализа 240 имеют различные способы проверки, которые могут иметь как сигнатурный (точный), так и эвристический (вероятностный) подход. Сигнатурный подход основан на сравнении с уже известными вредоносными объектами. К сигнатурным видам анализа относятся сравнения проверяемых объектов с «черным» списком веб-страниц по URL-адресу, базой вредоносных объектов, а также сравнение со списком доверенных объектов (приложений, компонент), и не ограничиваются ими. Эвристический подход основан на более сложном анализе, таком как анализ поведения объекта (например, передача управления в другую область) или эмуляции работы объекта с последующим анализом отчета о работе объекта с помощью заранее созданных правил проверки. К эвристическим видам анализа относятся такие методы, как эмуляция программ и сценариев (скриптов), контроль активности приложений и виртуализация среды исполнения, а также анализ на основе накопленных данных о других объектах.
Поэтому в зависимости от типа объекта каждое средство анализа 240 проводит тот анализ, который является наиболее эффективным для проведения проверки соответствующего объекта. Так примерами средств анализа 240а … 240n являются следующие средства:
- средства анализа файлов, предназначенные для проверки файлов как путем сравнения с базами известных вредоносных файлов, так и с помощью эвристических методов,
- средство анализа URL-адресов (ссылок), которое проводит анализ URL-адресов в том числе путем сравнения с базой данных вредоносных URL-адресов,
- средство анализа скриптов (сценариев), которое проводит анализ сценариев в том числе путем их эмуляции и выявлении вредоносного или подозрительного поведения в их работе,
- средство анализа «редиректов», которое производит проверку всех перенаправлений (т.е. изменений URL-адресов и перенаправление пользователя на другой адрес) путем, например, сравнения с базами «черных списков» адресов и других сравнений,
- средство анализа уязвимостей, которое производит проверку всех объектов, которые могут иметь уязвимость в коде с помощью базы известных уязвимостей как веб-сайтов, так и веб-браузеров,
- и т.д.
После проведения проверки каждого выявленного объекта соответствующее средство анализа из 240а … 240n выносит решение о результате проверки, которое передает средству вердиктов 250. Решение может иметь короткий (указывается только результат, например, «объект заражен») или детализированный (указываются подробности, повлиявшие на получение результата, например, «редирект на сайт www.имясайта.ru») вид.
Средство вердиктов 250 объединяет полученные от средств анализа 240 решения (вердикты) в группы, где каждая группа вердиктов соответствует определенной веб-странице, из которой были выявлены объекты. После чего средство вердиктов 250 производит анализ упомянутых групп с помощью постоянно актуализируемого набора эвристических правил и выносит конечный результат проверки отдельной (каждой) веб-страницы проверяемого веб-сайта или веб-сайта 120 в целом и передает указанные результаты средству оценки 270. Под анализом понимается сопоставление вердиктов с другой информацией, такой как, например, технические характеристики веб-сайта или веб-сервера, накопленные данные о схожих вердиктах или данные от сторонних поставщиков информации об угрозах, где в результате такого сопоставления вердиктам могут быть присвоены оценочные категории или веса, характеризующие степень опасности.
В частном случае реализации система обнаружения 150 также содержит средство внешней проверки 260. Средство внешней проверки 260 собирает информацию о проверяемом веб-сайте с различных внешних источников и передает собранную информацию средству оценки 270. Как упоминалось выше, внешними источниками могут являться, например, антивирусные базы 170, черные списки поисковых систем 180 и открытые базы уязвимостей 190. Информация содержит сведения о статусе самого проверяемого веб-сайта 120, веб-сервера, на котором размещен веб-сайт 120, и/или сведения о некоторых веб-страницах проверяемого веб-сайта или размещенных на веб-страницах объектах.
Средство оценки 270 определяет уровень опасности веб-сайта на основании полученных результатов проверки от средства вердиктов 250, а также в частном случае реализации и информации, полученной от средства внешней проверки 260, где уровень опасности является, по крайней мере, критическим, опасным или безопасным. Также уровень опасности может определяться на основании процентного показателя опасности, от 0% до 100% или в виде числового значения (например, 1,2, …, 10). При этом 0% означает, что веб-сайт полностью безопасный, а 100% означает, что веб-сайт критически опасен, т.к. имеет активные угрозы (вредоносное ПО) или уязвимости, через которые подвергаются опасности пользователи веб-сайта и/или вредоносный код, который распространяется и заражает пользователей веб-сайта.
Стоит отметить, что в еще одном варианте реализации средство внешней проверки 260 является одним из средств анализа 240. В этом случае средство внешней проверки 260 на основании собранной информации выносит, по крайней мере, одно решение, которое в свою очередь передается средству вердиктов 250 (связь не показана на Фиг. 2). Средство вердиктов 250 выполняет свое предназначение, как было сказано выше. В этом случае средство оценки 270 определяет уровень опасности веб-сайта на основании только полученных результатов проверки от средства вердиктов 250.
В частом случае уровень опасности может быть сохранен в базе данных. Тогда в случае периодической проверки веб-сайта 120 вновь сформированный уровень опасности может перед сохранением в базе данных сверяться с ранее сохраненными значениями и корректироваться, таким образом, формируя статистику изменения уровня опасности веб-сайта. На основании статистики возможно формирования сценариев дальнейшей проверки веб-сайта. Например, могут изменяться объекты проверки или время проверки. Кроме того, перед каждой новой проверкой веб-сайта будет проверяться время последней проверки, и в случае не превышения заранее заданного интервала, проверка может не проводиться. Для этого система обнаружения 150 может содержать средство запуска по расписанию или на основании внешних событий и базу проверяемых веб-сайтов (не показаны на Фиг. 2).
В другом частном случае реализации средство оценки 270 после определения уровня опасности веб-сайта создает отчет об уровне опасности веб-сайта согласно заранее заданным (определенным) шаблонам, при этом отчет позволяет информировать владельца указанного веб-сайта или других заинтересованных сторон о результатах проверки. Стоит отметить, что шаблоны могут соответствовать региону размещения проверяемого веб-сайта (например, континенту или стране) или его отраслевой, тематической или другой принадлежности. Кроме того, отчет может содержать характерные для каждой отрасли результаты проверок, например, на соответствие проверяемого сайта законодательству о персональных данных, на наличие принятых в отрасли сертификатов безопасности сайта и др. Например, для каждой страны будет сформирован свой шаблон, который будет содержать наиболее актуальные сведения для соответствующего региона страны.
Отчеты об уровне опасности веб-сайта могут направляться как оперативно, так и с некой периодичностью.
В еще одном частном случае реализации система обнаружения 150 содержит средство защиты 280, которое в зависимости от уровня опасности будет производить различные защитные или превентивные меры для соответствующего веб-сайта. Так, например, если уровень опасности высокий или критический (близкий или равный 100%), то средство защиты 280 формирует список исходящего контента, который будет ограничивать распространение исходящих данных с веб-сайта путем разрешения к распространению только данных указанных в данном списке или из конкретной области веб-сайта. Или же, наоборот, средство защиты 280 будет настроено на определение и удаление опасных объектов. Таким образом, будет предотвращено распространение вредоносных угроз (файлов, ссылок, сценариев (англ. script) и др.) с зараженного веб-сайта. Кроме того, средство защиты 280 также может произвести чистку программного кода веб-сайта путем удаления зараженного кода или удаления всего объекта и в случае успешной чистки отменит ограничение в списке исходящего контента. Еще одним примером является ситуация, когда, например, уровень опасности средний (50%), то средство защиты 280 может только блокировать доступ к тем веб-страницам веб-сайта, которые имеют (распространяют) угрозу (вредоносное ПО) или только выдавать предупреждение заинтересованным сторонам об уровне опасности веб-сайта.
На Фиг. 3 представлен частный случай реализации способа определения уровня опасности веб-сайтов. Владельцам веб-сайтов может потребоваться проведения как разовой, так и периодической оценки опасности веб-сайта с целью обнаружения фактов заражения вредоносными программами, рисков, ведущих к таким заражениям и любых другим несанкционированным вмешательствам в работу веб-сайта и предотвращения возможных последствий такого вмешательства, в том числе предотвращения блокирования веб-сайта различными поисковыми и антивирусными системами.
На этапе 310 производится соединение с проверяемым веб-сайтом, а именно, соединение с частью веб-страниц или каждой веб-страницей, с помощью средства сканирования 210 путем одного или нескольких запросов к странице или загрузки страницы в эмуляторе браузера. При этом на этапе 320 на веб-странице производится выделение объектов для последующей проверки. Объекты веб-страниц могут быть как статические объекты (то есть расположенные непосредственно в коде страницы), так и динамические (то есть создаваемые или изменяемые в процессе загрузки страницы). Примерами объектов являются фрагменты кода страницы, загружаемые файлы, ссылки внутри веб-сайта, ссылки на внешние сайты, куки-файлы (от англ. HTTP cookies, небольшой фрагмент данных), сценарии языков программирования - script (с англ. скрипт, сценарии), IP-адреса, данные пользователей, указанные ими на странице, редиректы (перенаправления с одного веб-сайта на другой) и многое другое.
На этапе 330 с помощью средства управления проверками 220 производят разделения объектов по типам с целью последующего формирования очереди проверки для каждого типа объекта. Примерами типов объектов являются, например, следующие категории: URL, script, текстовые документы, двоичные файлы различных форматов. По мере формирования очередей средство 220 распределяет (направляет) на этапе 340 все очереди объектов по соответствующим средства анализа 240а … 240n согласно типам объектов. Средства анализа 240а … 240n в свою очередь проводят анализ всех объектов на этапе 350 как приведено в описании Фиг. 2. По результатам проверок средства анализа 240а … 240n выносят вердикты по каждому объекту, после чего вердикты передают средству вердиктов 250. На этапе 360 с помощью средства вердиктов 250 все вердикты объединяются в группы, где каждая группа вердиктов соответствует веб-странице, из которой были выявлены объекты. После чего производится анализ упомянутых групп с помощью правил эвристик и выносится результат проверки для каждой веб-страницы проверяемого веб-сайта.
Кроме того, в частном случае реализации на этапе 350 во время проведения анализа объектов параллельно производятся запросы к внешним источникам информации с помощью средства внешней проверки 260, как описано на Фиг. 2. Запросы связаны с получением информации о проверяемом веб-сайте и его веб-страницах.
В другом частном случае, проверка веб-сайта может ограничиваться только определенным набором страниц этого веб-сайта, а не всеми веб-страницами.
На этапе 370 с помощью средства оценки 270 производят определение уровня опасности веб-сайта на основании анализа полученной информации - вердиктов, а именно информации от внешних источников и результатов проверки по сайту, веб-странице и объектам. Уровень опасности является, по крайней мере, критическим, опасным или безопасным. После этого на этапе 380 об уровне опасности оповещается владелец веб-сайта или другие стороны с соответствующими рекомендациями, например, о блокировании какой-то веб-страницы или ограничении исходящего контента (информации, данных) с помощью сформированного ограничивающего списка. В частном случае реализации указанные рекомендации для веб-сайта могут быть выполнены самостоятельно (автоматически).
В другом частном случае реализации после определения уровня опасности веб-сайта на этапе 370 с помощью средства оценки 270 создают отчет об уровне опасности веб-сайта согласно заранее заданным (определенным) шаблонам, при этом отчет позволяет информировать владельца указанного веб-сайта или других заинтересованных сторон о результатах проверки. Примеры шаблонов представлены при описании Фиг. 2.
В еще одном частном случае реализации в зависимости от уровня опасности производят различные защитные или превентивные меры для проверяемого веб-сайта с помощью средства защиты 280. Так, например, если уровень опасности высокий или критический (близкий или равный 100%), то с помощью средства защиты 280 формируют список исходящего контента, который будет ограничивать распространение исходящих данных с веб-сайта путем разрешения к распространению только данных, указанных в данном списке или из конкретной области веб-сайта. В другом случае с помощью средства защиты 280 будут определять и удалять только опасные объекты. Таким образом, будет предотвращаться распространение вредоносных угроз (файлов, ссылок, сценариев (англ. script) и др.)) с зараженного веб-сайта. Другие примеры защитных мер представлены при описании Фиг. 2.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.