Читаем Защита от хакеров корпоративных сетей полностью

Повторные передачи и дублирующие пакеты не являются чем-то необычным в обычных сетях, но в большинстве случаев содержимое пакетов должно быть одинаковым. Для рассмотренных примеров работы протоколов ARP и службы DNS вполне возможно написать программу, которая наблюдала бы за ответами, вычисляла бы кэш-величину пакета, а затем сохраняла бы эти данные в течение определенного периода времени. Поступление другого пакета с согласованными подходящим образом характеристиками, но с различными кэш-величинами свидетельствовало бы о возможных сетевых проблемах. (Следует очень внимательно отнестись к игнорированию частей пакета, которые нельзя на 100 % считать подозрительными до подсчета кэш-величины, как, например, время жизни пересылаемого пакета TTL). В основном это принцип систем обнаружения вторжения IDS со всеми их преимуществами и недостатками.

Перегрузка сети уведомлениями ACK (ACK Storms)

Ранее в этой главе был кратко рассмотрен пример перехвата Telnet-сессии. Цель перехвата заключалась в выполнении команды на сервере. Для этого примера автор сознательно выбрал короткую команду, в выводе результатов выполнения которой не было необходимости. На то были причины. Протокол TCP может идеально подойти для перехвата сессии. Если злоумышленник попытается контролировать оба конца соединения или удержать затянувшееся перехваченное соединение, то он может столкнуться с некоторыми трудностями. Давайте выясним, почему.

Напомним, что протокол TCP является надежным средством доставки сетевых пакетов данных. Так как TCP находится выше обслуживаемого протоколом IP ненадежного уровня, на котором пакеты иногда теряются, искажаются или принимаются вне очереди, то протокол TCP вынужден взять на себя ответственность за решение этих проблем. Существенным является то, что протокол TCP в случае необходимости решает подобные проблемы путем повторной передачи пакетов. Реализующее протокол TCP программное обеспечение сохраняет на каждом хосте копию всех ранее посланных данных до тех пор, пока не будет получено уведомление (ACK-пакет) об успешном приеме данных, генерируемое получателем пакетов на другом конце соединения. Данные удаляются только после подтверждения приема. Если в поддерживаемой программным обеспечением очереди на отправку данных имеются данные, на которые в течение определенного промежутка времени не получено уведомление об их приеме, то они посылаются повторно, предполагая, что ранее эти данные потерялись при передаче.

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

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

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

Перейти на страницу:

Похожие книги

Цифровой журнал «Компьютерра» № 29
Цифровой журнал «Компьютерра» № 29

ОглавлениеБольшие новостиВиноватого в проблемах iPhone 4 уволили из Apple Автор: Михаил КарповВ Microsoft работают над новой мобильной ОС? Автор: Михаил КарповSkype проведёт первичное размещение акций на бирже Автор: Михаил КарповGoogle закупает беспилотники Автор: Юрий ИльинБилл Гейтс похоронил университеты Автор: Михаил КарповКосмические пираты уничтожили 1295 долларов Автор: Михаил КарповGoogle сговорился с телекомами Автор: Михаил КарповПолиция провела обыск корейского офиса Google Автор: Михаил КарповMicrosoft призывает не переходить на Mac Автор: Михаил КарповПланшет HP на основе WebOS появится в начале 2011 года Автор: Михаил КарповZeus: вирус, который грабит банки Автор: Юрий ИльинКак спасти Microsoft Автор: Андрей ПисьменныйОснователь 4chan рассказал суду о троллях и ньюфагах Автор: Михаил КарповПорностудия судится с пиратами Автор: Михаил КарповLenovo: четыре туза и джокер Автор: Юрий ИльинЧто Apple покажет на конференции в сентябре? Автор: Михаил КарповНа Android сделают телефон-игровую приставку Автор: Михаил КарповOracle атаковал Google и Android Автор: Юрий ИльинКому достанутся дополнительные частоты LTE Автор: Максим БукинТерралабПромзона: Гибридный велосипед Автор: Николай МаслухинСофт: Как настроить модем 3G в Ubuntu Автор: Крестников ЕвгенийПромзона: Походный фильтр для воды Автор: Николай МаслухинСофт: Как устранить эффект красных глаз в Pixelmator Автор: Скрылина СофьяПромзона: Энергетический фонтан Автор: Николай МаслухинСофт: Превращаем Firefox в удобный инструмент Автор: Роман БобылевПромзона: Сенсорный торговый автомат из Японии Автор: Николай МаслухинRaskin — попытка реализации масштабирующегося интерфейса Автор: Андрей ПисьменныйПромзона: Телефон с двумя экранами Автор: Николай МаслухинСофт: Как найти звезду с помощью Android Автор: Николай МаслухинСвоя играВасилий Щепетнёв: Эра Старика Прохазки Автор: Василий ЩепетневКафедра Ваннаха: Требуется военная клиометрия Автор: Ваннах МихаилКивино гнездо: В постели со шпионами Автор: Берд КивиВасилий Щепетнёв: Планы на будущее Автор: Василий ЩепетневКафедра Ваннаха: Свёртка реки Хроноса Автор: Ваннах МихаилИнтерактивАндрей Терехов (РУССОФТ) о русском аутсорсинге Автор: Ирина МатюшонокАналитик Михаил Елашкин о конфликте Oracle и Google Автор: Крестников ЕвгенийReaDitorialТехномир – новая мутация цивилизации Автор: Алексей СысоевИдентификация, абстрагирование, смысл Автор: Юрий ГуськовГолубятня-ОнлайнГолубятня: Интерактив №5 Автор: Сергей ГолубицкийГолубятня: Абсолютная власть Автор: Сергей ГолубицкийГолубятня: 20 килобайтиков Автор: Сергей Голубицкий

Журнал «Компьютерра»

Зарубежная компьютерная, околокомпьютерная литература