Системы и способы предотвращения вторжения для сетевых серверов

Изобретение относится к области повышения информационной безопасности в компьютерных сетях, в частности к системе предотвращения вторжения на сервер. Технический результат, заключающийся в защите данных сетевого сервера, достигается за счет того, что фильтр (302) анализа поступающих команд обрабатывает команды, направленные на web-сервер, путем сравнивания с предварительно введенным набором разрешенных для web-сервера команд, которые хранятся в сравнительных таблицах. Удаляет те из перехваченных команд, для которых при их сравнении с предварительно введенными командами не найдено соответствий, при этом перехваченные команды не пропускаются на web-сервер. Дополнительно система может содержать алгоритмы рекурсивного исследования файлов в каталогах, расположенных ниже корневого каталога web-сервера, а также средства для мониторинга ресурсов web-сервера и снижения уровня использования ресурсов web-сервера при превышении последним порогового значения. 7 н. и 25 з.п. ф-лы, 7 ил.

 

РОДСТВЕННАЯ ЗАЯВКА

Данная заявка связана с поданной в США заявкой, US 10/290961, под названием "Управление ресурсами сервера, анализ и предотвращение вторжений."

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ

А. Область техники

Данное изобретение предназначено в основном для сетевых серверов, и в частности для программных средств защиты данных, используемых для защиты сетевых серверов.

В. Уровень техники

Сетевые серверы, такие как компьютеры, передающие HTML-документы (HyperText Markup Language, язык гипертекстовой разметки) на вычислительные устройства клиента по сети Интернет, могут взаимодействовать и получать запросы на обработку данных от множества различных конечных пользователей.

Серверы, которые способны получать и отвечать на запросы конечных пользователей, обычно называются web-серверами.

На базовом уровне web-серверы обеспечивают отображение статических web-страниц путем продвижения запрашиваемых файлов конечным пользователей. При более глубоком рассмотрении web-серверы могут реагировать на ввод данных пользователем и создавать динамические web-страницы, опираясь на введенные пользователем данные. Общий шлюзовый интерфейс (Common Gateway Interface, CGI) является стандартным протоколом, через который web-сервер пропускает запрос пользователя к прикладной программе. Приложением выполняется обработка запроса пользователя и передача информации web-серверу для оправки пользователю.

Web-серверы часто являются объектами атаки злоумышленников. Зачастую злоумышленники пытаются дезактивировать сервер, получить контроль над сервером или получить несанкционированный доступ к хранящейся на сервере информации. Одним из способов атаки является отправка длительного запроса или большего количества запросов на web-сервер с целью вызвать ошибку сервера, например переполнение буфера. Данная ошибка может привести к падению уровня безопасности всего сервера.

Соответственно, возникает необходимость в разработке средств повышения надежности web-серверов и их устойчивости к атакам злоумышленников.

КРАТКОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Системы и способы, соответствующие принципам данного изобретения, предусматривают создание системы защиты web-серверов от вторжения (web host intrusion prevention system, WHIPS), защищающей серверы сетевых приложений, такие как web-серверы, от атак злоумышленников и/или перегрузки.

Согласно одному из аспектов изобретения предложен способ, включающий перехват команд, поступающих на web-сервер, сравнение перехваченных команд с предварительно введенным набором санкционированных и безвредных команд и отклонение команд, для которых не найдено соответствий в указанном наборе.

Согласно другому аспекту изобретение предусматривает наличие вычислительного устройства, содержащего коммуникационный интерфейс, который получает сетевой график, предназначенный для вычислительного устройства. Также в состав вычислительного устройства входят сравнительные таблицы, в которых хранится набор команд, служебное сетевое ПО, которое получает трафик от коммуникационного интерфейса и отвечает на команды, поступающие по сети. При поступлении команды по сети фильтр выполняет сравнение поступившей команды с таблицами. Кроме этого при поступлении команды, не соответствующей данным сравнительных таблиц, фильтр посылает коммуникационному интерфейсу команду воздержаться от пропуска сетевого графика на web-сервер.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

На прилагающихся чертежах, являющихся неотъемлемой частью описания настоящей патентной заявки, приведены иллюстрации и описание изобретения.

Перечень фигур:

Фиг.1. Схема типовой системы, в которой возможно применение данного изобретения;

Фиг.2. Схема типового вычислительного устройства, соответствующего одному из серверов на Фиг.1;

Фиг.3. Схема, иллюстрирующая взаимодействие элементов программного обеспечения, запущенного на сервере, показанном на Фиг.1 и 2;

Фиг.4. Схема, иллюстрирующая примерный вариант реализации сравнительных таблиц, в соответствии с данным изобретением;

Фиг.5. Блок-схема взаимодействия коммуникационного интерфейса, фильтра и сравнительных таблиц, приведенных на Фиг.3;

Фиг.6. Схема взаимодействия менеджера ресурсов, приведенного на Фиг.3, с сервером; и

Фиг.7. Блок-схема работы менеджера ресурсов, выполненного согласно одному из аспектов данного изобретения.

ПОДРОБНОЕ ОПИСАНИЕ

В данном описании изобретения используются ссылки на прилагающиеся чертежи. При этом ссылка с одним и тем же номером может относиться к разным чертежам для указания одинаковых или сходных элементов. Кроме этого следует отметить, что изобретение не ограничивается приведенным подробным описанием. Область применения изобретения определяется прилагающейся патентной формулой и ее эквивалентыми признаками.

Как указано выше, в состав WHIPS входят сравнительные таблицы и фильтр. В таблицах содержатся разрешенные пользовательские запросы. А фильтр отсеивает входящие запросы, опираясь на сравнительные таблицы. Несанкционированные запросы блокируются и не поступают к программному обеспечению web-сервера. Соответственно, пользователи, пытающиеся атаковать web-сервер с использованием таких способов как переполнение буфера, блокируются фильтром.

ОБЩИЙ ОБЗОР СИСТЕМЫ

На Фиг.1 приведена схема типовой системы 100, в которой возможно применение положений настоящего изобретения. Система 100 может включать некоторое количество вычислительных устройств конечных пользователей 101А и 101В, сеть 102 и web-серверы 103А и 103В (вычислительные устройства конечных пользователей 101А и 101 В и web-серверы 103А и 103В собирательно называются вычислительными устройствами конечных пользователей 101 и web-серверами 103 соответственно). Вычислительные устройства конечных пользователей 101 могут включать персональные компьютеры, посредством которых пользователи подключены к сети 102. Сеть 102 может являться сетью любого типа, например, такой как локальная сеть (LAN), глобальная сеть (WAN) или виртуальная частная сеть (VPN), интранет, Интернет или являться комбинацией упомянутых типов сетей. Вычислительные устройства конечных пользователей 101 и web-серверы 103 могут быть подключены к сети 102 через проводное, беспроводное и/или оптоволоконное подключение.

Web-серверы 103 способны отвечать на запросы от вычислительных устройств конечных пользователей 101. Например, web-сервер 103А может являться HTML-сервером, взаимодействующим с вычислительным устройством конечного пользователя 101А через протокол передачи гипертекстовых файлов (hyper-text transfer protocol, HTTP) для передачи HTML-страниц пользователям. База данных 110А может быть подключена к web-серверу 103А. Web-сервер 103А может осуществлять доступ к базе данных 110А при выполнении HTML-запросов пользователей.

На Фиг.2 приведена схема типового вычислительного устройства, соответствующего одному из web-серверов 103.

Сервер 103 может включать шину 210, процессор 220, оперативную память 230, ROM (ПЗУ) 240, запоминающее устройство 250, устройство ввода 260, устройство вывода 270 и коммуникационный интерфейс 280. Через шину 210 осуществляется связь между элементами сервера 103.

В состав процессора 220 может входить любой тип традиционного процессора или микропроцессора, в задачу которого входит интерпретация и выполнение инструкций. Под оперативной памятью 230 понимается RAM или любой другой тип динамического запоминающего устройства, хранящего информацию и инструкции, предназначенные для выполнения процессором 220. Под ROM 240 понимается традиционные устройства ROM или любые другие статические запоминающие устройства, хранящие информацию и инструкции для использования процессором 220. К запоминающему устройству 250 относятся любые типы магнитных и/или оптических записываемых носителей и соответствующие приводы. На запоминающем устройстве 250 может храниться база данных, как например, база данных 110 (Фиг.1).

Как вариант, база данных 110 может храниться на альтернативном запоминающем устройстве 250, таком как удаленное запоминающее устройство, или в оперативной памяти 230.

Устройство ввода 260 может включать одно и более традиционное средство ввода информации на web-сервер 103, такое как клавиатура, мышка, световое перо, цифровая клавиатура, микрофон, устройства виртуальной реальности и т.д. Под устройством вывода 270 подразумевается одно и более традиционное средство вывода информации для оператора, включая монитор, принтер, колонки и т.д. Коммуникационный интерфейс 280 может включать в себя любые устройства связи, посредством которых осуществляется связь между web-сервером 103 и другими устройствами и/или системами. Например, в состав коммуникационного интерфейса 280 могут входить средства связи с другими устройствами через сеть, такую как сеть 102.

В одном из вариантов реализации изобретения оперативная память 230 содержит инструкции, посредством которых реализуется WHIPS 202. WHIPS 202 может взаимодействовать с традиционным программным обеспечением web-сервера. К примеру ПО web-сервера 203. Под ПО web-сервера 203 подразумевается любое традиционные программы web-серверов, как например, web-сервер Apache с открытыми исходниками или информационный сервер Internet (Internet Information Server, US), предлагаемый Microsoft Corporation (Redmond, Washington).

WHIPS

На Фиг.3 приведена схема взаимодействия элементов ПО, включая WHIPS 202, запущенного на сервере 103. В состав WHIPS 202 может входить коммуникационный интерфейс 301, фильтр 302, сравнительные таблицы 303 и менеджер ресурсов 304.

Коммуникационный интерфейс 301 перехватывает входящий из сети 102 график, адресованный web-серверу 103, и направляет его на фильтр 302. Коммуникационный интерфейс 301 может быть реализован несколькими различными методами. В одном варианте, опираясь на протокол управления передачей (transmission control protocol, TCP) wrapper software, коммуникационный интерфейс 301 функционирует как модуль доступа для web-сервера 203. В другом варианте исполнения коммуникационный интерфейс 301 может располагаться на программной уровне, а ПО сервера 203 "привязывается" к определенному порту. Коммуникационный интерфейс 301 перехватывает график на сетевом уровне и передает его на указанный порт. Еще одним вариантом применения коммуникационного интерфейса 301 является использование виртуального устройства. ПО web-сервера 203 "привязывается" к виртуальному устройству, тогда как коммуникационный интерфейс 301 "привязывается" к действительному сетевому сокету (например, коммуникационному интерфейсу 280). Коммуникационный интерфейс 301 получает сетевой трафик от действительного сокета и перенаправляет его к ПО web-сервера 203. Очевидно, что реализации коммуникационного интерфейса 301 могут использоваться различные способы и что выбор оптимального способа зависит от ряда факторов, таких как установленное аппаратное обеспечение и программная среда, в которой работает WHIPS 202, и, наконец, ПО web-сервера 203.

Фильтр 302 выполняет сравнение команд, полученных по коммуникационному интерфейсу 301 со списком, хранящимся в сравнительных таблицах 303. Если, исходя из результатов сравнения, фильтр 302 определяет, что команда неправомерна, коммуникационный интерфейс 301 не пропускает ее к web-серверу server 203. Посредством блокировки входящих команд фильтр 302 предотвращает действие вредоносных программ, поступающих на ПО web-сервера 203 с целью дестабилизировать работу сервера 103 или повредить его.

Менеджер ресурсов 304 выполняет мониторинг ресурсов сервера 103. При нехватке ресурсов сервера 103 менеджер 304 может уменьшить использование ресурсов на сервере 103. Посредством предотвращения нехватки ресурсов на web-сервере 103 исключается возможность перегрузки и повышается общая стабильность web-сервера 103.

Более подробно фильтр 302, сравнительные таблицы 303 и менеджер ресурсов 304 описываются ниже.

ФИЛЬТР И СРАВНИТЕЛЬНЫЕ ТАБЛИЦЫ

На Фиг.4 приведена схема типового применения сравнительных таблиц 303, соответствующих положениям данного изобретения. В общих чертах сравнительные таблицы 303 представляют группу таблиц, в которых представлены команды, такие как команды HTTP, и допустимые параметры для этих команд. Допустимые параметры для команд определяются исходя из ресурсов, которые сервер 103 должен предоставить вычислительному устройству конечного пользователя 101.

Как показано на Фиг.4, сравнительные таблицы 303 могут включать таблицы GET (статические) 401, таблицы GET (динамические) 402 и таблицы POST 403.

Команда GET используется конечными пользователями для извлечения ресурсов с сервера 103. Простая команда GET может иметь, например, следующий вид: GET <URI>, где URI - это универсальный идентификатор ресурсов (uniform resource identifier), который обозначает ресурсы, подлежащие извлечению. URI может, например, обозначать документ (например, страницу HTML), изображение или аудиофайл, находящийся на сервере 103.

Ресурсы, указанные URI в команде GET, могут не являться статическими ресурсами. Напротив, URI может указывать на динамические данные, создаваемые сервером. Например, URI может обозначать файл сценария, который должен выполнить сервер для генерирования динамических данных, зависящих от одной или более переменных. Команда GET может обозначать сценарий, согласно которому сервер перед отправкой пользователя прогноза погоды выполняет поиск наиболее позднего прогноза.

Таблица 401 может включать все разрешенные статические команды GET для сервера 103. Например, на сервере 103 может находиться HTML-файл "home.html" 410 и изображение "family.jpg" 411, которые необходимо сделать доступными для вычислительного устройства конечного пользователя 101. Хотя в таблице 401 указаны только две записи, фактически в таблицах, подобных таблице 401, может содержаться гораздо больше записей.

Таблица 402 может включать записи для команд GET, относящихся к динамическим элементам, такими как команды GET, запускающие выполнение сценария. Сценарии должны соответствовать стандарту CGI для создания интерактивных web-сайтов. В таблице 402 показаны два сценария - 420 и 421. Согласно положениям данного изобретения таблица 402 кроме имени сценария может включать дополнительную информацию. В таблице 402 могут, например, храниться элементы 423 и 424, определяющие тип сценария, обозначенного по имени файла, и предполагаемые параметры ввода сценария. Например, сценарий Peri 421, выполняющий обработку информации о пользователе, такой как имя пользователя, имеет ограничения по длине имени (например, 50 символов или менее). Соответственно, в информации 424 для сценария Peri 421 в таблице 402 может дополнительно указываться наличие или отсутствие ограничений в сценарии Peri на длину вводимого имени пользователя.

В WHIPS 202 могут находиться таблицы для других команд, а не только для команды GET. Например, команда HTTP POST позволяет пользователям передавать данные на обработку серверу 103. Команда POST является типовой динамической командой, обращающейся к определенным сценариям для обработки данных пользователя. В таблице 403 могут храниться элементы, такие как 430 и 431, относящиеся к командам POST. Записи для команд POST структурируются аналогично элементам для динамических таблиц команд GET 402.

Для обеспечения эффективного доступа к таблицам 401-403 данные таблицы могут храниться и/или быть организованы в древовидную структуру. Кроме того, на сервере 103 может быть выделена область памяти под кэш для хранения наиболее часто используемых элементов-таблиц 401-403, что значительно ускоряет доступ сервера к последним. Также, хотя это не показано на схемах, в состав сравнительных таблиц 303 могут входить такие таблицы как таблицы команд HTTP PUT.

На Фиг.5 приведена блок-схема, иллюстрирующая взаимодействие коммуникационного интерфейса 301, фильтра 302 и сравнительных таблиц 303, соответствующих положениям данного изобретения. Коммуникационный интерфейс 301 направляет входящие команды, полученные от вычислительного устройства конечного пользователя 101, к фильтру 302 (операция 501).

Фильтр 302 выполняет поиск команд в сравнительных таблицах 303 (операция 502). Например, если полученная команда является статической командой GET, фильтр 302 может сравнить ресурсы, к которым обращается команда GET, с записями в таблице 401. При наличии команды в сравнительных таблицах 303 фильтр 302 отправляет коммуникационному интерфейсу 301 сигнал о том, что команда приемлема (операции Acts 503 и 504). Коммуникационный интерфейс 301 может затем передать команду web-серверу 203 на обработку (операция 505).

Однако при отсутствии команды в таблицах или при несоответствии команды формату, указанному в сравнительных таблицах 303, фильтр 302 отправляет коммуникационному интерфейсу 301 сигнал о том, что команда неприемлема (операции 503 и 506). Следовательно, команда обращается к закрытым ресурсам web-сервера 103 и может быть вредоносной. Затем коммуникационный интерфейс 301 может удалить поступившую команду или в качестве альтернативы занести данное событие в журнал (операция 507).

Web-сервер 103 может вывести пользователю, отправившему запрещенную команду, сообщение о ошибке "request not found" (запрос не найден).

Перед применением сравнительных таблиц 303 для определения статуса полученной команды WHIPS 202 индексирует сравнительные таблицы. WHIPS 202 может индексировать сравнительные таблицы до загрузки ПО web-сервера 203. Сравнительные таблицы 303 могут постепенно обновляться по мере того, как администраторы изменяют содержание ПО web-сервера 203.

При построении сравнительных таблиц 303 WHIPS 202 исследует все файлы, определяющие содержание или являющиеся частью ПО web-сервера 203. В основном служебные программы web-сервера хранят такие типы файлов в оглавлении файловой структуры, начиная с корневого web-каталога. Следовательно, WHIPS 202 может рекурсивно просканировать все каталоги ниже корневого каталога для поиска соответствующих файлов. Статические файлы могут использоваться для построения статических таблиц GET 401. Сценарии могут быть соответственно размещены в динамических таблицах GET 402 и таблицах POST 403. WHIPS 202 может исследовать найденные сценарии для извлечения дополнительной информации, такой как информация 423 и 424, характеризующая тип сценария, включая данные по параметрам ввода для конечных пользователей.

МЕНЕДЖЕР РЕСУРСОВ

Менеджер ресурсов 304 отслеживает уровень ресурсов сервера 103 и может уменьшать использование ресурсов при их нехватке. Таким образом, менеджер ресурсов 304 может работать совместно с фильтром 302 для повышения стабильности сервера 103.

На Фиг.6 приведена схема, объясняющая основные пути взаимодействия между менеджером ресурсов 304, работающем на сервере 103, и элементами сервера 103. В частности, менеджер ресурсов 304 может взаимодействовать с коммуникационным интерфейсом 280 (и/или программным обеспечением, задействованным коммуникационным интерфейсом 301), запоминающим устройством 250, памятью 230 и процессором 220. В общем, данные элементы сервера 103 могут считаться ресурсами сервера 103. Менеджер ресурсов 304 может отслеживать и управлять уровнем активности данных ресурсов.

На Фиг.7 приведена блок-схема, иллюстрирующая работу менеджера ресурсов 304, соответствующего принципам данного изобретения. Менеджер ресурсов 304 может начинать свою работу с проверки уровня активности коммуникационного интерфейса 280. В данную процедуру входит проверка количества открытых соединений между сервером 103 и вычислительными устройствами конечных пользователей 101.

Вычислительное устройство конечного пользователя 101, на которое должна поступить информация с сервера 103, начинает свою работу с передачи запроса на установку соединения с сервером 103. Сервер 103 в свою очередь может принять или отклонить запрос на установку соединения. Кроме этого сервер 103 в любое время может отслеживать количество открытых соединений.

Менеджер ресурсов 304 поддерживает уровень активности коммуникационного интерфейса 280 не выше порогового значения. Пороговое значение может быть установлено администратором локально на сервере 103 или с удаленного компьютера через сеть 102. Менеджер ресурсов 304 может выполнить проверку превышения порогового значения для уровня активности коммуникационного интерфейса 280 (операция 702). При обнаружении превышения порогового значения менеджер ресурсов 304 может принять меры по сокращению количества активных соединений (операция 703). Под данными мерами также может подразумеваться закрытие открытых соединений. Например, менеджер ресурсов 304 может сначала закрыть открытые, но не активные соединения. Если количество соединений по-прежнему слишком высоко, менеджер ресурсов 304 может закрыть соединения сервера 103 с низким приоритетом. Если количество соединений по-прежнему слишком высоко, менеджер ресурсов 304 может приступить к закрытию открытых соединений, выбираемых случайным образом. В дополнение, если количество открытых соединений по-прежнему превышает пороговое значение, менеджер ресурсов 304 может блокировать любые новые запросы на установку соединений от вычислительных устройств конечных пользователей 101.

Кроме проверки уровня активности коммуникационного интерфейса 280 менеджер ресурсов 304 может выполнять проверку использования памяти 230. Если количество свободной памяти превышает заранее установленное пороговое значение (например, 95% памяти 230 занято), менеджер ресурсов 304 может принять меры по устранению нехватки памяти (операции 705 и 706). Эти меры могут включать, например, закрытие неактивных процессов (так называемые "зомби-процессы").

Менеджер ресурсов 304 может также выполнять проверку использования процессора. При превышении нагрузкой процессора 220 предварительно установленного порогового значения (например, использование процессора более чем на 90%), менеджер ресурсов 304 может принять меры по снижению нагрузки (операции 708 и 709). Данные меры аналогичны операции 706 и могут включать, например, остановку неактивных процессов или процессов с низким приоритетом.

Менеджер ресурсов 304 способен проверять количество оставшегося свободного места на запоминающем устройстве 250, как например жестком диске(ах). При снижении свободного места на запоминающем устройстве 250 ниже предварительно установленного порогового значения (например, занято 95%) менеджер ресурсов 304 может принять соответствующие меры, (операции 711 и 712), как, например, перенаправление поступающих команд записи на жесткий диск на консоль (т.е. на монитор) или выполнение сжатия некритических файлов (файлы отчетов).

Как следует из вышесказанного и как показано на Фиг.7, целью работы менеджера ресурсов 304 является снижение использования ресурсов и, таким образом, уменьшение вероятности отказа сервера 103 вследствие перегрузки.

Команды, используемые для проверки загрузки процессора, использования запоминающих устройств и проверки нагрузки на сетевые соединения широко известны и поэтому подробно не рассматриваются в данном документе.

ЗАКЛЮЧЕНИЕ

WHIPS, как изложено выше, включает в себя фильтр, который исследует поступающие команды для обеспечения поступления на обработку только разрешенных команд, не обращающихся к конфиденциальным или закрытым ресурсам web-сервера. Несанкционированные команды блокируются. Также WHIPS может включать в себя менеджер ресурсов, который отслеживает использование ресурсов на сервере. Менеджер ресурсов может выполнять действия, направленные на снижение использования ресурсов или нагрузки.

Вышеприведенное описание предпочтительного варианта осуществления изобретения содержит иллюстрации и описания, но никоим образом не ограничивает изобретение указанной формой выполнения.

В свете изложенных выше основных принципов изобретения следует понимать, что вследствие дальнейших исследований или же в результате приобретения некоторого опыта по реализации изобретения возможно внесение в данное изобретение изменений и дополнений. Более того, последовательности операций, приведенных на Фиг.5 и 7, могут отличаться в различных вариантах осуществления данного изобретения. Более того, возможно параллельно выполнение независимых операций.

Хотя WHIPS в вышеизложенных разделах рассматривался как элемент, выполняющийся на web-сервере, WHIPS может (в других вариантах осуществления) быть адаптирован для использования в сетевых средах с серверами приложений.

Некоторые части изобретения были описаны как программное обеспечение, выполняющее одну или несколько функций.

В более общем смысле под программным обеспечением следует понимать тип логической схемы. В логическую схему может входить аппаратное обеспечение, как, например интегрированная микросхема для определенного приложения, программируемая на объекте вентильная матрица, программное обеспечение или комбинация аппаратного или программного обеспечения.

Ни один элемент, операцию или инструкцию, использованную в описании настоящего приложения не следует считать критической или неотъемлемой частью данного изобретения, пока последнее не указано в явной форме. Также в данном документе при употреблении единственного числа (неопределенного артикля "а", в оригинале описания) подразумевается один или более объектов. В случае, если речь идет об одном объекте, используется термин один ("one") или аналогичный оборот.

Область охвата изобретения определена пунктами патентной формулы и ее эквивалентами.

1. Способ обработки команд по меньшей мере одного пользователя, включающий:

перехват команд, поступающих на web-сервер;

сравнение перехваченных команд с предварительно введенным набором разрешенных на web-сервере команд; и

удаление тех перехваченных команд, для которых, при их сравнении с предварительно введенным набором команд, не найдено соответствий, при этом указанные перехваченные команды не пропускаются на web-сервер.

2. Способ по п.1, дополнительно включающий:

направление программному обеспечению web-сервера тех перехваченных команд, для которых найдены соответствия в предварительно введенном наборе команд.

3. Способ по п.1, в котором сравнение перехваченных команд с предварительно введенным набором команд включает в себя поиск соответствий для перехваченных команд во множестве таблиц.

4. Способ по п.3, в котором множество таблиц включает отдельные таблицы для хранения команд, относящихся к различным типам HTTP-команд.

5. Способ по п.4, в котором команды HTTP включают команды GET и POST.

6. Способ по п.1, включающий:

мониторинг ресурсов web-сервера; и

снижение использования ресурсов web-сервера при превышении порогового значения для уровня использования ресурсов.

7. Вычислительное устройство, включающее:

коммуникационный интерфейс, сконфигурированный для получения сетевого графика, предназначенного для вычислительного устройства, при этом график содержит команды по меньшей мере одного пользователя;

сравнительные таблицы, сконфигурированные для хранения по меньшей мере одного набора команд по меньшей мере одного пользователя;

программное обеспечение web-сервера, сконфигурированное для получения сетевого графика от коммуникационного интерфейса и ответа на команды, поступающие с сетевым графиком; и фильтр, сконфигурированный для выполнения поиска в сравнительных таблицах, исходя из полученных с сетевым графиком команд, при этом фильтр передает инструкции коммуникационному интерфейсу для запрета передачи сетевого графика программному обеспечению web-сервера в случае нахождения в полученном сетевом графике команд, для которых не найдено соответствий по меньшей мере в одном наборе команд.

8. Вычислительное устройство по п.7, в котором сравнительные таблицы дополнительно включают:

множество таблиц, причем каждое множество таблиц выделено для хранения команд, относящихся к различным типам HTTP-команд.

9. Вычислительное устройство по п.8, при котором команды HTTP включают команды GET и POST.

10. Вычислительное устройство по п. 8, в котором по меньшей мере одна из множества таблиц хранит информацию по сценариям, запускаемым командами HTTP.

11. Вычислительное устройство по п. 7, дополнительно включающее:

базу данных, подключенную к программному обеспечению сервера, и содержащую информацию, запрашиваемую командами, поступающими с сетевым графиком.

12. Вычислительное устройство по п.7, дополнительно включающее:

менеджер ресурсов, сконфигурированный для мониторинга ресурсов вычислительного устройства и для снижения уровня использования ресурсов при превышении последним порогового значения.

13. Вычислительное устройство по п.12, в котором отслеживаемые ресурсы включают по меньшей мере один из следующих: мощность процессора, объем памяти и пропускная способность сетевого интерфейса.

14. Способ обработки команд по меньшей мере одного пользователя, включающий:

исследование файлов, связанных с хранящейся на web-сервере информацией;

создание таблиц, определяющих разрешенные команды по меньшей мере одного пользователя для доступа к исследованным файлам;

запрет полученным командам, предназначенным для web-сервера, на достижение web-сервера при отсутствии соответствий для них в созданных таблицах; и

направление полученных команд программному обеспечению web-сервера при нахождении соответствий для полученных команд в созданных таблицах.

15. Способ по п.14, в котором исследование файлов, связанных с хранящейся на сервере информацией, включает рекурсивное исследование файлов в каталогах, расположенных ниже корневого каталога web-сервера.

16. Способ по п.14, в котором исследование файлов, связанных с хранящейся на сервере информацией, включает обновление результатов исследования файлов при изменении последних.

17. Способ по п.14, в котором в исследуемые файлы включают статические файлы.

18. Способ по п.14, в котором в исследуемые файлы включаются сценарии.

19. Способ по п.14, в котором таблицы включают отдельные таблицы для хранения команд, относящихся к различным командам HTTP.

20. Способ по п.19, в котором команды HTTP включают команды GET и POST.

21. Способ по п.14, дополнительно включающий: мониторинг ресурсов web-сервера; и снижение уровня использования ресурсов web-сервера при превышении последним порогового значения.

22. Система обработки команд, содержащая:

средства исследования команд по меньшей мере одного пользователя, поступающих на web-сервер;

средства для сравнения исследованных команд с предварительно введенным набором команд, допустимых для web-сервера; и

средства - для удаления тех исследованных команд, для которых средствами для сравнения команд не найдено соответствий в предварительно введенном наборе команд, при этом указанные исследованные команды не пропускаются к web-серверу.

23. Система по п.22, дополнительно включающая: средства для направления команд web-серверу при нахождении соответствий для этих команд средствами для сравнения в наборе предварительно введенных команд.

24. Система по п.22, дополнительно включающая: средства создания таблиц, в которых хранятся наборы предварительно введенных команд.

25. Система по п.24, в котором таблицы включают отдельные таблицы для хранения команд, относящихся к различным командам HTTP.

26. Система по п.22, дополнительно включающая средства для мониторинга ресурсов web-сервера; и средства снижения уровня использования ресурсов web-сервера при превышении последним порогового значения.

27. Машиночитаемый носитель для хранения инструкций для предотвращения вторжения на web-сервер, на котором хранятся инструкции, при выполнении которых процессором процессор:

перехватывает команды по меньшей мере одного пользователя, поступающие на web-сервер; сравнивает перехваченные команды с предварительно введенным набором команд, разрешенных для web-сервера; и удаляет те перехваченные команды, для которых не найдены соответствия в предварительно введенном наборе команд.

28. Машиночитаемый носитель по п.27, в котором инструкции дополнительно обеспечивают: направление процессором перехваченных команд программному обеспечению web-сервера при нахождении соответствий в предварительно введенном наборе команд.

29. Машиночитаемый носитель по п.27, в котором сравнение перехваченных команд с предварительно введенным набором команд включает поиск перехваченных команд в множестве таблиц.

30. Машиночитаемый носитель по п.27, в котором инструкции дополнительно обеспечивают: мониторинг процессором ресурсов web-сервера; снижение уровня использования ресурсов web-сервера при превышении последним порогового значения.

31. Система для защиты от атаки злоумышленников, проводимой с помощью конкретных из указанных команд, в сети с сервером приложений, в которой по меньшей мере один клиент направляет команды указанному серверу для получения ответов от указанного сервера на указанные команды, при этом указанная система содержит:

средства для получения указанных команд, включая указанные конкретные команды;

средства для сравнения всех указанных команд, включая все указанные конкретные команды, с предварительно введенным набором команд;

средства для удаления любой из указанных команд, включая указанные конкретные команды, для которой не найдены соответствия в указанном предварительно введенном наборе команд, при этом обеспечивается удаление команд; и

средства для направления всех не удаленных команд к программному обеспечению указанного сервера для получения ответов.

32. Способ защиты сервера от атаки злоумышленников, проводимой с помощью конкретных из указанных команд, в сети с сервером приложений, в которой по меньшей мере один клиент направляет команды указанному серверу для получения ответов от указанного сервера на указанные команды, при этом указанный способ включает:

получение указанных команд, включая указанные конкретные команды;

сравнение всех указанных команд, включая все указанные конкретные команды, с предварительно введенным набором команд;

удаление любой из указанных команд, включая указанные конкретные команды, для которой не найдены соответствия в указанном предварительно введенном наборе команд, при этом обеспечивается удаление команд; и

направление всех не удаленных команд к программному обеспечению указанного сервера для получения указанных ответов.



 

Похожие патенты:

Изобретение относится к области защиты информации и может быть использовано как на программном, так и на аппаратном уровне реализации в вычислительных и информационных системах для криптографической защиты информации в цифровой форме.

Изобретение относится к области защиты вычислительных сетей, в частности к способу обеспечения безопасности распределенной вычислительной сети. .

Изобретение относится к способам и системам обработки визуализируемой цифровой информации. .

Изобретение относится к области вычислительной техники и может быть использовано для доверенной загрузки компьютера и защиты от несанкционированного доступа (НСД) к информации, хранимой в персональных компьютерах и в компьютерных информационно-вычислительных системах.

Изобретение относится к области судебной экспертизы электронных носителей информации и, в частности, к обеспечению доступа к закрытой паролем информации, содержащейся в электронных записных книжках (ЭЗК).

Изобретение относится к протоколам взаимодействия равноправных объектов сетевой структуры и, в частности, касается защитных инфраструктур для протоколов взаимодействия равноправных объектов.

Изобретение относится к области техники защиты и контроля доступа к информации в автоматизированных системах управления. .

Изобретение относится к локальным сетям. .

Изобретение относится к аутентификации в системе связи. .
Изобретение относится к области вычислительной техники и может быть использовано для создания многопроцессорных многопоточных ЭВМ. .

Изобретение относится к системам обнаружения событий и оповещения программ-запросчиков, зарегистрированным для такого уведомления. .

Изобретение относится к вычислительной технике и предназначено для решения задач обработки двумерных и трехмерных изображений. .

Изобретение относится к области вычислительной техники и предназначено для моделирования задач при проектировании ВС. .

Изобретение относится к вычислительной технике и применяется при построении коммутационных средств мультипроцессорных вычислительных и управляющих систем, абонентских систем связи с децентрализованным управлением и информационно-измерительных систем.

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

Изобретение относится к области вычислительной техники и может быть использовано в автоматизированных системах управления. .

Изобретение относится к автоматике и вычислительной технике и может найти применение при построении распределенных систем программного управления технологическими процессами, роботами и робототехническими комплексами, а также подсистем логического управления многоуровневых иерархических АСУ и мультипроцессорных систем широкого класса
Наверх