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

Томас Птасек (Thomas Ptacek) и Тимоти Ньюшем (Timothy Newsham) в 1998 году написали статью под названием “Вставка, сокрытие и отказ в обслуживании: обман сетевых систем обнаружения вторжений” (“Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection'), которая стала стандартной ссылкой при изучении данной проблемы. В этом труде рассмотрены атаки, которые не обнаруживаются сетевыми Системами обнаружения вторжений по причине различной интерпретации получаемых пакетов этими системами и конечными хостами-получателями. Описаны условия, при которых системы обнаружения вторжений пропускают потенциально опасный трафик. Теорию подтверждают несколько примеров. Указанный материал можно прочитать по адресу www.robertgraham.com/mirror/ Ptacek-Newsham-Evasion-98.html.

Кроме атак отказа в обслуживании в этой статье описаны основы других атак, основанных на обмане сетевых систем обнаружения вторжений. Первый тип этих атак получил название атак со вставкой (insertion attack). Хакер отправляет пакеты атакуемому хосту. Один или несколько пакетов, которые пропускает NIDS, так и не достиг нут хоста-получателя или будут отброшены как ошибочные. Авторы сделали важный вывод, что системы обнаружения вторжений и хосты-получатели по-разному воспринимают один и тот же трафик или даже “видят” различный трафик.

Второй тип атак называют скрытыми атаками. В этом случае хотя и сетевая система обнаружения вторжений, и хост-получатель получают один и тот же трафик, но NIDS отклоняет один или несколько пакетов, а хост-получатель принимает все эти пакеты. Хотя термин “отклоняет” не совсем точен, особенно при сравнении с отбрасыванием пакетов устройствами фильтрации, но именно он применен в цитируемом труде. Успех скрытой атаки объясняется тем, что система обнаружения вторжений ошибается при анализе пакета или его данных, которые выполняет хост-получатель, т.е. хост-получатель получает пакет или данные, которые не замечает сетевая система обнаружения вторжений.

Атака со вставкой

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

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

Таким образом, нарушитель отправляет на ТСР-порт 23 атакуемого хоста три отдельных пакета, в полезной нагрузке каждого из которых передается один или несколько символов (рис. 8.1). Первый пакет содержит букву R. Этот пакет получают, исследуют и принимают и система обнаружения вторжений (NIDS), и хост-получатель. В передающемся вторым пакете, содержащем букву О, указана неправильная контрольная сумма. С помощью контрольных сумм проверяется целостность пакета, поэтому такой пакет должен быть отброшен. Давайте представим, что NIDS “видит” этот пакет, но она не запрограммирована на проверку контрольных сумм TCP-пакетов и просто пропускает этот пакет как действительную часть потока символов, передаваемых на хост-получатель. Хост-получатель принимает пакет, обнаруживает ошибку в контрольной сумме и отбрасывает его. Нарушителю удалось вставить символ, который заставляет систему обнаружения вторжений ошибиться при выявлении действительной атаки. Наконец, в третьем пакете, получаемом и принимаемом как NIDS, так и атакуемым хостом в полезной нагрузке передается набор символов EWT.

Система обнаружения вторжений собрала поток ТСР-данных и расценила его как безвредный, так как для ТСР-порта 23 у нее нет сигнатуры на строку ROEWT. Тем не менее хост-получатель собирает этот поток в виде REWT и организует telnet-сеанс с соответствующим пользователем, который остается необнаруженным NIDS. (Примечание: здесь рассмотрена очень упрощенная схема этой атаки, для ее успеха дополнительно необходима синхронизация порядковых номеров ТСР-сегментов.)

Рис. 8.1. Пример атаки со вставкой

Скрытая атака

При скрытой атаке хост-получатель принимает пакет, который не замечает сетевая система обнаружения вторжений (рис. 8.2). Здесь снова устанавливается telnet-сеанс с помощью передачи строки REWT на атакуемый хост-получатель. Если хакеру удастся отправить трафик таким образом, что NIDS отклоняет пакет, а хост-получатель принимает его, то это позволит злоумышленнику избежать разоблачения.

Один из возможных сценариев проведения этой атаки заключается в отправке данных в SYN-пакете. Хотя это и не соответствует стандартному соединению, отправка данных в SYN-пакете допускается документом RFC 793. После завершения полной процедуры согласования параметров соединения эти данные будут учтены как начало потока получаемой информации. Таким образом, на ТСР-порт 23 атакуемого хоста первым отправляется SYN-пакет, данные которого представляют собой букву R. Система обнаружения вторжений просматривает полезную нагрузку только после завершения процедуры установки соединения, поэтому данные SYN-пакета полностью игнорируются. Хост-получатель принимает этот пакет и сохраняет букву Я как начало следующего потока данных. После этого завершается процедура установки соединения без дополнительной передачи каких-либо данных. Затем передается обычный ТСР-пакет, данные которого представляют собой строку Е\\ГГ.

Рис. 8.2. Пример скрытой атаки

Результатом сборки TCP-потока данных на порт 23 хоста-получателя сетевой системой обнаружения вторжений является строка EWT. Эта строка не соответствует ни одной заданной сигнатуре. Хост-получатель собирает поток данных в виде строки REWT и успешно запускает сеанс троянской версии telnet.

Чтобы подвести итог, можно сказать, что существует много методов, которые могут быть использованы для атак со вставкой и скрытых атак против сетевых систем обнаружения вторжений. Хотя здесь не раскрыты атаки на уровне приложений, например манипуляции с протоколом HTTP, но в настоящее время прослеживается тенденция увеличения количества именно этих скрытых атак на уровне приложений. Многие из них имеют успех из-за того, что NIDS не в состоянии спрогнозировать реакции стека протоколов TCP/IP хоста-получателя на передаваемый пакет. Существует множество аспектов работы стека протоколов TCP/IP, которые отличаются в различных операционных системах.

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

Исследование полей ip-заголовка | Обнаружение нарушений безопасности в сетях | Поля ip-заголовка


Обнаружение нарушений безопасности в сетях



Новости за месяц

  • Октябрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс