Коллектив авторов - Защита от хакеров корпоративных сетей
Было рассмотрено использование четырех инструментальных средств перехвата сессии: Juggernaut, Hunt, dsniff и Ettercap. Первое из них, программа Juggernaut, появилось раньше других и может осуществлять несложный анализ трафика соединения, его перехват и сброс. Второе, программа Hunt, помимо этих действий, может также перехватывать пересылаемые по протоколу ARP данные и ретранслировать пакеты для оказания помощи при устранении перегрузки сети уведомлениями ACK. Два последних, программа Ettercap и инструментальное средство dsniff, выполняют те же действия, но они также полезны при перехвате сессий с использованием протоколов с шифрованием передаваемых с их помощью данных. Каждое из перечисленных инструментальных средств свободно распространяется и может быть выполнено на платформе Linux.
Можно выделить два основных подхода к защите от перехвата соединения: предупреждение и обнаружение. Защита от перехвата соединений прежде всего основана на шифровании данных. Следует отметить, что в основном шифрование применимо к сетевому трафику. Но даже при использовании протоколов шифрования, передаваемых по сети данных, злоумышленник сможет успешно перехватить данные жертвы. Как было показано в главе, не все формы шифрования являются гарантией защиты. При наличии протоколов шифрования есть два ключевых момента предупреждения перехвата сессии. Первый из них – образованность и осведомленность пользователей. Второй – использование поточных протоколов шифрования типа IPSec. Второй подход к защите от перехвата – обнаружение факта перехвата. Следствием большинства технологий перехвата является необычный трафик или поведение, например сброс соединения, зависание, перегрузка сети уведомлениями ACK или странный мусор на экране. Вполне возможно создать программные средства, которые и были созданы, отслеживающие, по крайней мере, некоторые характерные признаки атак этого типа.
Конспект
Основные сведения о перехвате сеанса
· Перехват сеанса основан на злоупотреблении доверием участвующих в соединении сторон.
· Перехват сеанса описывается сценарием гонки: сможет ли злоумышленник получить пакет с ответом раньше легитимного сервера или клиента? Если у злоумышленника была возможность продумать план атаки, то в большинстве случаев ответ, вероятно, будет положительным. Для осуществления своих планов злоумышленнику потребуется инструментальное средство для наблюдения за запросами, позволяющее как можно быстрее сгенерировать ответ на запрос, который он хочет сфальсифицировать, и удалить легитимный ответ.
· Аномальные поведения (изменения в протоколе обмена, увеличение объема пересылаемых данных или кэша протокола разрешения адресов ARP) являются следствием предпринимаемых злоумышленником попыток перехвата сеанса, для обнаружения которых могут быть соответствующим образом сконфигурированы хосты или, возможно, системы обнаружения вторжения IDS.
· Злоумышленник может удаленным способом модифицировать таблицы маршрутизации для переадресации пакетов или размещения своей системы на пути пересылки пакетов между двумя хостами по выбранному маршруту.
· Злоумышленник может обмануть протокол управляющих сообщений в сети Интернет ICMP и переадресовать пакеты, убедив нужные ему хосты в наличии наилучшего маршрута пересылки данных, проходящего через его IP-адрес. Модификацией исходных текстов злоумышленник может добиться того, что операционные системы типа UNIX не будут уменьшать счетчик предписанного времени жизни пересылаемого пакета TTL и не посылать ICMP-сообщения о недостижимости адресата, что может иметь большое значение для уклонения от обнаружения средствами трассировки маршрута типа утилиты traceroute.
· При атаке на протокол разрешения адресов ARP во время выдачи машиной жертвы широковещательного запроса для определения МАС-адресов, соответствующих выделенным IP-адресам (возможно, заданному по умолчанию IP-адресу шлюза жертвы), все, что потребуется от злоумышленника, – это ответить раньше реально запрашиваемой машины.
Популярные инструментальные средства перехвата сеанса
· Программа Juggernaut, написанная редактором журнала «Phrack», была пионерской работой в области создания инструментальных средств снифинга и перехвата сеансов. Она обладает обширными функциональными возможностями и может обслуживать произвольные порты протокола TCP. Программа Juggernaut очень интересна, но ее разработка в настоящее время прекращена.
· Программа Hunt, написанная Паулем Краузом (Pavel Krauz), по своим функциональным возможностям схожа с программой Juggernaut, но в ней добавлены средства имитации соединения (спуфинга) по протоколу ARP; Ettercap – многоцелевая программа, используемая прежде всего для снифинга, захвата и регистрации трафика в коммутируемых локальных сетях LAN. Она поддерживает пассивный и активный анализы различных протоколов.
· SMBRelay – программа, написанная SirDystic cDc, которая позволяет перехватывать данные протокола блока серверных сообщений SMB, разрывая соединение клиента после его аутентификации и занимая существующий SMB-сеанс с тем же самым мандатом.
· Эксперименты с протоколом ARP и перехват сеанса TCP могут создавать излишний трафик в сети и помехи. Синхронизация и дублирование обмениваемых между хостами уведомлений ACK в перехваченном сеансе приводят к перегрузке сети уведомлениями ACK. Можно написать программу, которая бы наблюдала за ответами, вычисляла бы кэш-величину пакета и затем сохраняла ее на определенный срок времени. Получение пакета с приблизительно соответствующими характеристиками, но с отличающейся кэш-величиной свидетельствует о возможных проблемах в сети.
Исследования атак типа MITM в зашифрованных соединениях
· Широкое использование шифрования является одним из самых простых способов укрепления защиты от многих сетевых атак перехвата сессии. SSH2 по своим функциональным возможностям может заменить Telnet, FTP, rlogin и rcp. Кроме того, можно туннелировать протоколы типа HTTP или X Windows поверх SSH2-соединения.
· Атаки типа MITM («человек (злоумышленник) посередине») являются, вероятно, наиболее эффективным типом атак, используемых сегодня злоумышленниками при перехвате зашифрованных протоколов и сессий типа SSH1 и SSL.
Часто задаваемые вопросы
Наиболее часто авторы книги отвечали на приведенные ниже вопросы. Вопросы интересны тем, что позволяют читателю лучше усвоить изложенный в главе материал и реализовать его на практике для обеспечения безопасности вычислительных систем. Если у читателя возникли вопросы по главе, зайдите на сайт www.syngress.com/solutions и щелкните мышкой на кнопке «Ask the Author».
Вопрос: Существуют ли какие-либо решения проблемы повторной синхронизации и появления команд на экране жертвы? Ответ: Несмотря на развитие в течение нескольких лет технологических средств, так или иначе относящихся к перечисленным вопросам, провести исследование в области методов перехвата довольно легко. Пока еще не было выпущено каких-либо инструментальных средств решения проблемы повторной синхронизации и появления команд на экране жертвы. Но автор, исходя из собственного исследования, проведенного во время написания этой главы, подозревает о существовании некоторых подходов к решению перечисленных проблем, основанных на объявлении размеров окон. По мере получения новых результатов в этой области и появления соответствующих инструментальных средств на сайте internettradecraft.com site будут указаны ссылки на первоисточники по этой теме.
Вопрос: Какие инструментальные средства доступны для создания программ перехвата?
Ответ: Основные компоненты программы перехвата сеанса – инструментарий, реализующий функции снифинга пакетов, их обработки и генерации необработанных пакетов. Разработчик должен определиться с логикой обработки, но некоторые из наиболее трудных вещей уже реализованы. Для реализации функций снифинга пакетов потребуется библиотека libpcap, которую можно найти на сайте tcpdump.org. Для генерации пакетов широко используется библиотека libnet, созданная packetfactory.net. Обе библиотеки имеют разумную степень независимости от платформы, они даже поддерживают порты Windows NT. Библиотеки можно найти по следующим адресам:
• www.tcpdump.org;
• www.packetfactory.net.Вопрос: Какие еще инструментальные средства могут оказаться полезными при перехвате сеанса? Ответ: Вероятно, в начале списка должны оказаться программы, наиболее полно обеспечивающие возможности снифинга. Компоненты, входящие в состав программ Juggernaut и Hunt, хороши для быстрой черновой работы, но далеки от удовлетворения всех желаний. Внимательно ознакомьтесь с представленной в главе 10 этой книги информацией о снифинге. Вам потребуются любые инструментальные средства, какие только удастся найти, способные помочь изменить маршрут трафика, если основной инструментарий перехвата сеанса окажется неадекватным в этой области. Найденные инструментальные средства могут включать инструментарий работы с протоколом ARP, переадресации управляющих сообщений протокола ICMP или инструментарий спуфинга маршрутизирующих протоколов RIP/OSPF/BGP.