СПОСОБ И СИСТЕМА ФИЛЬТРАЦИИ ВЕБ-КОНТЕНТА
METHOD AND SYSTEM FOR FILTERING WEB CONTENT

Предлагаемое изобретение относится к области информационных технологий, более конкретной областью использования предложенного изобретения являются компьютерные сети предприятий и организаций.
Использование ресурсов сети Интернет - всемирной паутины в целях информационного обеспечения организационной и производственной деятельности, межличностного общения, развлекательных и т.п. целей является неотъемлемой частью современного образа жизни. Количество веб-сайтов, доступ к которым обеспечивается через сеть Интернет, на начало 2009 года оценивалось на уровне 232 миллионов. Среди сайтов различной тематики сеть Интернет обеспечивает доступ к сайтам, содержащим информацию (контент), нежелательную и/или недопустимую для просмотра некоторыми категориями пользователей, то есть контент, противоречащий установленным законодательным нормам, либо религиозным или морально-этическим представлениям, каких-либо социальных групп. Кроме того, при обеспечении организационной и производственной деятельности с использованием рабочих мест, оборудованных доступом к сети Интернет, специалисты могут посещать сайты как не относящиеся непосредственно к их производственной деятельности, так и противоречащие установленным нормам, что приводит к снижению производительности труда и дополнительным расходам на трафик.
Частичное решение указанной проблемы будет обеспечено при использовании изобретения, описанного в патенте RU 2336561 (публикация 20.10.2008, Майкрософт Корпорейшн) и выбранного в качестве ближайшего аналога. В RU 2336561 описано построение систем и реализация вариантов способов фильтрации контента при веб-просмотре. Известный способ фильтрации веб-контента включает активацию собственных средств фильтрации веб-контента на рабочем компьютере пользователя, включающих функционально независимые друг от друга блок библиотеки идентификаторов веб-документов (буфер оценок) и блок анализа и перехвата запросов пользователя, обращение блока анализа и перехвата запросов пользователя при вводе, по меньшей мере, одной команды запроса пользователем веб-документа, к блоку библиотеки идентификаторов веб-документов и блокировку блоком анализа и перехвата запросов пользователя доступа к запрошенному веб-документу в случае определения блоком библиотеки идентификаторов веб-документов запрашиваемого веб-документа как запрещенного для доступа пользователю. Известная из RU 2336561 система фильтрации веб-контента включает один или несколько рабочих компьютеров пользователя, снабженных пользовательским и сетевым интерфейсом, собственные средства фильтрации веб-контента рабочего компьютера пользователя, включающие функционально независимые друг от друга блок библиотеки идентификаторов веб-документов, блок анализа и перехвата запросов пользователя. В качестве данных, идентифицирующих сайты с нежелательной тематикой, может быть использован унифицированный указатель ресурсов (URL). Очевидно, что известная система (а также подобные ей системы, основанные на анализе библиотек с данными разрешения/запрета доступа) характеризуется негибкостью (необходимо постоянное обновление списка запрещенной или разрешенной идентифицирующей информации) и соответственно возможностью «обмана» системы при обращении к зеркалам сайтов и т.п. Кроме того, системы, подобные RU 2336561, обладают существенным недостатком, заключающимся в принципиальной возможности «взлома» этих систем и отсутствии средств однозначной блокировки возможности доступа, при одновременном сохранении интеллектуальной составляющей («гибкости» настроек) в системе управления доступом.
Предлагаемое изобретение обеспечит создание способа и системы, характеризующихся повышенной («многоуровневой») надежностью фильтрации веб-контента, обладающих при этом гибкостью в управлении доступом к удаленным сайтам.
Указанный технический результат достигается при использовании предлагаемых способа и системы фильтрации веб-контента.
Способ фильтрации веб-контента включает активацию собственных средств фильтрации веб-контента на рабочем компьютере пользователя, содержащих функционально независимые друг от друга блок библиотеки идентификаторов веб-документов и блок анализа и перехвата запросов пользователя, обращение блока анализа и перехвата запросов пользователя при вводе, по меньшей мере, одной команды запроса пользователем веб-документа, к блоку библиотеки идентификаторов веб-документов и блокировку блоком анализа и перехвата запросов пользователя доступа к запрошенному веб-документу в случае определения блоком библиотеки идентификаторов веб-документов запрашиваемого веб-документа как запрещенного для доступа пользователю; согласно предложенному изобретению к рабочему компьютеру пользователя разъемно подключают портативный машиночитаемый носитель информации с уникальной цифровой меткой, позволяющей этому компьютеру выполнить его однозначную идентификацию при подключении, активируют собственные средства фильтрации веб-контента, дополнительно включающие блок динамического анализа содержания веб-документов, функционально независимый от блока библиотеки идентификаторов веб-документов и блока анализа и перехвата запросов пользователя, при вводе, по меньшей мере, одной команды запроса пользователем веб-документа, выполняется последовательное обращение блока анализа и перехвата запросов пользователя к портативному машиночитаемому носителю информации, блоку библиотеки идентификаторов веб-документов и блоку динамического анализа содержания веб-документов, причем обращение к блоку библиотеки идентификаторов веб-документов выполняется в случае определения подключения к рабочему компьютеру пользователя портативного машиночитаемого носителя информации, обращение к блоку динамического анализа содержания веб-документов выполняется в случае определения блоком библиотеки идентификаторов веб-документов запрашиваемого веб-документа как разрешенного для доступа пользователю, блокировка доступа к запрошенному веб-документу выполняется в случае идентификации блоком анализа и перехвата запросов пользователя одной из следующих ситуаций: отсутствие подключения к рабочему компьютеру пользователя портативного машиночитаемого носителя информации, определение блоком динамического анализа содержания веб-документов запрашиваемого веб-документа как запрещенного для доступа пользователю. Может быть предусмотрено последовательное разъемное подключение к рабочему компьютеру пользователя портативного машиночитаемого носителя информации и активация собственных средств фильтрации веб-контента этого компьютера либо наоборот последовательная активация собственных средств фильтрации веб-контента рабочего компьютера пользователя и разъемное подключение к этому компьютеру портативного машиночитаемого носителя информации. В качестве идентификатора веб-документа использован унифицированный указатель ресурсов (URL) и/или его хэш-функция. Динамический анализ содержания запрашиваемого веб-документа включает анализ допустимых ключевых слов и/или распознание допустимых образов. Может выполняться обращение к блоку библиотеки идентификаторов веб-документов, блоку динамического анализа содержания веб-документов, блоку анализа и перехвата запросов пользователя, расположенным удаленно от рабочего компьютера пользователя.
Система фильтрации веб-контента включает, по меньшей мере, один рабочий компьютер пользователя, снабженный пользовательским и сетевым интерфейсом, собственные средства фильтрации веб-контента рабочего компьютера пользователя, включающие функционально независимые друг от друга блок библиотеки идентификаторов веб-документов, блок анализа и перехвата запросов пользователя; согласно предложенному изобретению в состав системы включены портативный машиночитаемый носитель информации с уникальной цифровой меткой, выполненный с возможностью однозначной его идентификации рабочим компьютером пользователя при подключении, и блок динамического анализа содержания веб-документов, являющийся частью собственных средств фильтрации веб-контента рабочего компьютера пользователя и функционально независимый от блока библиотеки идентификаторов веб-документов и блока анализа и перехвата запросов пользователя. Собственные средства фильтрации веб-контента рабочего компьютера пользователя могут являться участками памяти, по меньшей мере, одного запоминающего устройства, используемого при его работе; по меньшей мере, одного запоминающего устройства, используемого при его работе, по меньшей мере, одного компьютера, расположенного удаленно от рабочего компьютера пользователя, и/или по меньшей мере, одного запоминающего устройства, используемого при его работе рабочего компьютера пользователя, а также, по меньшей мере, одного компьютера, расположенного удаленно от рабочего компьютера пользователя. Запоминающее устройство, используемое при работе компьютера, может представлять собой постоянное запоминающее устройство, энергонезависимое перезаписываемое компьютерное запоминающее устройство без движущихся механических частей, накопитель на жестких магнитных дисках (HMDD), резервированный массив независимых жестких дисков (RAID), съемный твердотельный энергонезависимый носитель информации (USB-флеш-накопитель), съемный оптический носитель информации (CD-, DVD-диск) и/или съемный магнитный носитель информации (дискета). Портативный машиночитаемый носитель информации может представлять собой съемный твердотельный энергонезависимый носитель информации (USB-флеш-накопитель), съемный оптический носитель информации (CD-, DVD-диск) и/или съемный магнитный носитель информации (дискета).
Предложенная система поясняется ее структурной схемой (фиг.1), предложенный способ поясняется блок-схемой последовательности операций способа (фиг.2).
Система фильтрации веб-контента включает (фиг.1) рабочий компьютер 150 пользователя или совокупность компьютеров 150, объединенных в сеть (в большинстве случаев), оборудованных пользовательским и сетевым интерфейсом и собственными средствами фильтрации веб-контента. Компьютер (персональная ЭВМ, рабочая станция) 150 функционирует под управлением операционной системы 105, имеющей доступ к сети Интернет через сконфигурированный сетевой интерфейс 113. Например, компьютер 150 может функционировать под управлением операционной системы (ОС) семейства Microsoft Windows, включенной в сеть передачи данных и взаимодействующей с другими узлами сети через программно-аппаратный сетевой интерфейс Windows Sockets. Рабочий компьютер 150 включает: вычислительный процессор 110, системную память 101, энергонезависимую память 120, различные интерфейсы для взаимодействия с внешними и внутренними устройствами (111-116), включая сетевой интерфейс 113, а также системную шину 117, предназначенную для их интеграции. Системная память включает в себя, как правило: постоянное запоминающее устройство (ПЗУ) 102, содержащее набор данных базовой системы ввода-вывода (Basic Input-Output System - BIOS); оперативное запоминающее устройство (ОЗУ) 104, содержащее различные блоки 105-107, 180 и данные 108,181, которые непосредственно выполняются и обрабатываются процессором. Очевидно, что рабочий компьютер 150 содержит устройства 121-123 для считывания информации с соответствующих носителей. Пользователь взаимодействует с компьютерной системой через устройства пользовательского ввода (например, без ограничений иных возможных способов, клавиатуру 160 и манипулятор-«мышь» 161), а также устройства визуализации информации 151 (например, TFT- или ЭЛТ-монитор) и различные периферийные устройства 153.
В состав системы включен портативный машиночитаемый носитель информации 176 с уникальной цифровой меткой 175 - электронный ключ. Особенностью этого портативного машиночитаемого носителя информации является возможность его однозначной идентификации 203 рабочим компьютером пользователя при подключении, то есть однозначно исключается возможность подмены пользователя на рабочем месте. Портативный машиночитаемый носитель информации 176 может представлять собой съемный твердотельный энергонезависимый носитель информации (USB- флеш-накопитель) 171, съемный оптический носитель информации (CD-, DVD-диск) 173 и/или съемный магнитный носитель информации (дискета) 172.
Собственные средства фильтрации 180, 186 веб-контента рабочего компьютера 150 пользователя представляют собой функционально независимые друг от друга блоки: блок библиотеки идентификаторов веб-документов, блок динамического анализа содержания веб-документов, блок анализа и перехвата запросов пользователя. В зависимости от особенностей архитектуры системы фильтрации веб-контента блоки 180, 186 могут быть выполнены участками памяти, по меньшей мере, одного запоминающего устройства, используемого при работе этого рабочего компьютера, или же участками памяти удаленного компьютера распределенной вычислительной системы.
В зависимости от особенностей архитектуры системы, запоминающие устройства могут представлять собой постоянное запоминающее устройство, энергонезависимое перезаписываемое компьютерное запоминающее устройство без движущихся механических частей, накопитель на жестких магнитных дисках (HMDD), резервированный массив независимых жестких дисков (RAID). Также, в зависимости от особенностей архитектуры системы, запоминающие устройства могут быть выполнены на съемных носителях: съемном твердотельном энергонезависимом носителе информации (USB-флеш-накопителе), съемном оптическом носителе информации (CD-, DVD-диске) и/или съемном магнитном носителе информации (дискете).
В распределенных компьютерных системах блоки могут находиться на устройствах хранения данных как локальной, так и удаленной ЭВМ, причем как на стационарных носителях 120, так и на съемных носителях информации 171-173. Энергонезависимая память стационарного носителя 120 может быть использована для хранения блоков 182-184, 186, а также необходимых данных блоков 185. Блоки 105-107, 180 в ОЗУ могут являться как копиями блоков 182-184, 186, так и фактически отличаться от них, например, в силу того, что блоки 105-107, 180 в ОЗУ подготовлены для исполнения процессором 110. Данные программ 108, 181 в ОЗУ также могут являться копиями данных 185, 186 в энергонезависимой памяти и могут содержать отличия, возникающие в ходе их модификации блоками (модулями), исполняемыми на процессоре. Рабочий компьютер ЭВМ 150 имеет доступ к удаленным компьютерам через сетевой интерфейс 113, например, стандартов IEEE 802.3 («Ethernet»), IEEE 802.15.1 («Bluetooth») или IEEE 802.11 («Wi-Fi») и среду передачи данных 190, например коаксиальный кабель, витую пару или воздушную или безвоздушную среду, промежуточное сетевое оборудование 191 (маршрутизаторы, коммутаторы)
При работе предложенной системы к системному блоку компьютера 150 подключается портативный машиночитаемый носитель информации 176, активируются собственные средства фильтрации веб-контента 180, 186. При выполнении этих операций производится их копирование в энергонезависимую память 120 - инсталляция системы контентной фильтрации с «электронного ключа» 176, 177. Затем осуществляется настройка блоков операционной системы 105, блоков 106, 107, а также блоков собственных средств фильтрации веб-контента 180, 186. Блоки операционной системы 105 настраиваются таким образом, чтобы при каждом запуске персональной ЭВМ 150 производилась загрузка блоков системы контентной фильтрации 180 в ОЗУ с целью их последующего исполнения процессором 110. После завершения процедуры инсталляции и настройки системы фильтрации веб-контента, а также при последующих загрузках блоков операционной системы 105 в ОЗУ 104 производится запуск блоков собственных средств фильтрации веб-контента 180, 186. Блоки 180, 186 взаимодействуют с сетевым интерфейсом 113 для перехвата обращений прикладных программ пользователя 106 к веб-документам, находящимся на удаленном сервере 199. При этом очередность подключения портативного машиночитаемого носителя информации 176 и активации собственных средств фильтрации веб-контента 180, 186 определяется особенностями условий эксплуатации системы.
При вводе, по меньшей мере, одной команды запроса пользователем веб-документа, выполняется последовательное обращение блока анализа и перехвата запросов пользователя к портативному машиночитаемому носителю информации, блоку библиотеки идентификаторов веб-документов и блоку динамического анализа содержания веб-документов 201-211. Под веб-документом подразумевается всякая информация, размещенная на удаленной рабочей станции (компьютере, сервере), находящейся в сети передачи данных, адресуемая некоторым идентификатором и доступная для получения компьютером 150 пользователя по сетевому протоколу обмена данными. В качестве веб-документа может выступать гипертекстовая страница в формате HTML, текстовые документы в различных форматах (Adobe PDF, Microsoft Word Document, PostScript, простой текст и т.д.), всевозможные изображения (в формате JPEG, GIF, TIFF, PNG, BMP и др.), потоковая мультимедийная информация (аудио- и видеофайлы в различных форматах, flash-видео и др.). Запросы к веб-документам выполняются в соответствии с некоторым протоколом транспортного, прикладного или представительного уровня модели OSI, например, в соответствии с протоколом передачи гипертекста - HTTP. Перехваченные запросы анализируются блоком библиотеки идентификаторов веб-документов и блоком динамического анализа содержания веб-документов.
Обращение к блоку библиотеки идентификаторов веб-документов выполняется в случае определения подключения 203 к рабочему компьютеру пользователя портативного машиночитаемого носителя информации 176, далее обращение к блоку динамического анализа содержания веб-документов выполняется в случае определения 205 блоком библиотеки идентификаторов веб-документов запрашиваемого веб-документа как разрешенного для доступа пользователю.
Блок анализа и перехвата запросов пользователя проверяет 202 наличие электронного носителя информации 176 - электронного ключа, подключенного через соответствующее считывающее устройство (121-123 и т.п.), с которого производилась инсталляция системы. Для идентификации электронного ключа 176 использована уникальная цифровая метка 175, соответственно, блок анализа и перехвата запросов пользователя снабжены информацией, позволяющей идентифицировать электронный ключ 176. Если электронный ключ 176 не подключен к считывающему устройству или же идентификационная информация неверна, то доступ к запрашиваемому веб-контенту будет блокирован 209. То есть однозначно выполняется отсев пользователей, которым не предоставлен доступ к электронным ключам 176.
Блок библиотеки идентификаторов веб-документов хранит идентификаторы известных системе веб-документов вместе с соответственным классом их допустимости. В качестве идентификатора веб-документа может выступать URL-адрес в виде строки символов или значение некоторой хэш-функции, например CRC32, вычисленное по URL-адресу или его части. Под классом допустимости веб-документа подразумевается некоторый признак, значение которого позволяет определить, является ли веб-документ допустимым или недопустимым, либо характер веб-документа неизвестен системе. При обнаружении блоком библиотеки идентификаторов веб-документов идентификаторов 205 запрещенной к доступу информации, также выполняется блокировка доступа 209.
Блок библиотеки идентификаторов веб-документов может быть реализован в виде участка энергонезависимой памяти, в которой локально хранится файл, поддерживающий функции этого блока и организованный в виде плоского списка, хэш-таблицы или дерева. Блок библиотеки идентификаторов веб-документов имеет функцию добавления и удаления сведений о веб-документах. Блок библиотеки идентификаторов веб-документов может быть реализован в качестве участка памяти, находящегося на удаленном сервере. В этом случае проверка сведений о веб-документе заключается в отправке запроса удаленному серверу, содержащему указанный участок памяти, и получении ответа, например, с помощью протоколов RPC, XML-RPC, DCOM, CORBA или иных протоколов межсетевого взаимодействия.
В том случае если перечисленные выше этапы доступа успешно пройдены «нарушителем», доступ будет однозначно заблокирован 209 при динамическом анализе содержания веб-документов 206 в блоке динамического анализа содержания веб-документов, который обеспечит предотвращение несанкционированного доступа на основании анализа допустимых/недопустимых ключевых слов текста и/или распознавания изображений (при их наличии в веб-документах).
Блок динамического анализа содержания веб-документов осуществляет автоматическое определение класса допустимости веб-документов путем анализа их содержания - автоматической классификации. Автоматическая классификация подразумевает получение электронного представления веб-документов от удаленного сервера через сетевой интерфейс, анализ этой информации и принятие решения о классе допустимости веб-документа. В случае текстовых документов из их электронного представления выделяется текст на естественном языке, который сопоставляется по некоторому правилу с описаниями недопустимых тематических классов. Например, описания недопустимых тематических классов представлены списками ключевых слов, характеризующих соответствующую тему, а процедура сопоставления состоит в поиске вхождений этих ключевых слов в тексте веб-страницы. Возможны варианты сопоставления описаний тематических классов и информации веб-страницы с использованием признаков ссылочной структуры веб-страницы, метаинформации, структуры гипертекста. Для изображений и мультимедийных документов, сопоставление может производиться с применением алгоритмов распознавания образов, реализуемых, например, на основе предварительно обученных нейронных сетей. В функции блока динамического анализа содержания веб-документов входит также сохранение вновь полученных сведений о веб-документах в блоке анализа и перехвата запросов пользователя, что необходимо для кэширования информации о часто запрашиваемых веб-документах с целью снижения нагрузки на сетевые каналы и уменьшения использования вычислительных ресурсов.
Пример осуществления способа фильтрации веб-контента может быть пояснен блок схемой - фиг.2. На шаге 201 происходит перехват запроса к веб-документу, затем проверяется наличие электронного ключа 176 в устройстве считывания и его идентификация - блоки 202, 203. При отсутствии электронного ключа 176 или невозможности его идентификации доступ к веб-документу блокируется. В противном случае, по идентификатору веб-документа проверяется наличие сведений о классе допустимости - блоки 204, 205. Если идентификатор веб-документа отсутствует в блоке библиотеки идентификаторов веб-документов, то класс допустимости определяется с использованием блока динамического анализа содержания веб-документов 206. В завершение алгоритма принимается решение о запрещении или разрешении доступа к информации 207 соответственно определенному классу допустимости.
Таким образом, предложены способ и система фильтрации веб-контента, характеризующиеся надежным и «гибким» контролем за доступом к ресурсам сети Интернет.