PDA

Просмотр полной версии : Ip-spoofing


Cobalt
02.04.2007, 10:28
Перевод взят с сайта www.gfs-team.ru (http://www.gfs-team.ru/)

Представляем вам перевод статьи Matt Tanase об IP Spoofing. Оригинал статьи
на английском можно найти тут: http://www.securityfocus.com/infocus/1674

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

История
Концепция IP-Spoofing в первые появилась(обсуждалась) в научных кругах в 80-х
годах. Хотя о ней было известно давно, но она долгое время оставалось лишь
теорией. Пока Роберт Моррис(Robert Morris), чей сын написал первого
интернет-червя, не обноружил уязвимость в TCP-протоколе под названием
предсказание последовательности. Стивен Беловин(Stephen Bellovin) углубленно
разобрал эту уязвимость в статьеSecurity Problems in the TCP/IP Protocol Suite,
в которой рассмотренны проблемы строения TCP/IP протокола. В одном печально
известном взломе Кевина Митника(Kevin Mitnik) "Рождество", он взломал компьютер
Tsutomu Shimomura с использованием IP-Spoofing и "предсказание последовательности"
атак. Хотя популярность данных методов снизалась, из-за уменьшения количества
сервисов которым они подвержены, эти методы могут быть использованны и сейчас
и все администраторы должны боротся с этим.

Техническое Реализация
Чтобы понять как это все работает, необходимо разобратся в структуре протокола
TCP/IP. Базовое понимание структуры заголовков и методов обмена данными в сети,
являтся очень важным.

Internet Protocol - IP
Internet Protocol - это сетевой протокол, работающий на 3-м уровне сетевой модели
OSI. В этом протоколе не содержится ни какой информации о состоянии соединения,
которая используется для маршрутизации пакетов в сети. Так же в нем не содержится
методов для определения - доставлен ли пакет до адресата, или нет.
http://www.gfs-team.ru/pictures/spoof/spoof1.jpg
IP Spoofing
При рассмотрении заголовка IP-пакета, мы видим что первые 12 байт(3 верних
строчки на рисунке) содержат различную информацию о пакете. Следующие 8 байт(
следующие 2 строчки на рисунке) содержат - исходный и целевой IP адреса. При
использовании одной из многочисленных программ, хакер может с легкостью изменить
эти адреса - например поле содержащие исходный IP адрес. Важно заметить, что
каждый пакет передается не зависимо от других пакетов, из-за спецификации
протокола IP. Имейте это ввиду, когда мы будем рассматривать TCP протокол.

Transmission Control Protocol - TCP
Протокол IP можно рассматривать как оболочку для протоколов 4-го уровня сетевой
модели OSI, к которому относится TCP. В отличие от IP, TCP использует связи-
ориентированную структуру. Это означает, что для установления TCP соединения
необходимо пройти 3-х ступенчитаю фазу(SYN-SYN/ACK-ACK) и только затем можно будет
передавать данные. Эта "цепочка", обеспечивает надежность передачи данных,
поскольку отправитель получает подтверждение от получателя пакетов, после
каждой передачи данных.
http://www.gfs-team.ru/pictures/spoof/spoof1.jpg
IP Spoofing
Как вы можете видеть выше, TCP пакет сильно отличается от IP пакета. Обратим
внимание на первые 12 байт, которые содержат - порт и последовательную информацию.
Как и в случае с IP пакетами, TCP пакетами можно манипулировать с помощью
специальных программ. Исходный и Целевой порты, как правило, зависят от сетевых
приложений, находящихся в эксплуатации (например, HTTP через порт 80).
Важным в понимании IP-Spoofing являются sequence и acknowledgement поля. Данные
содержащиеся в этих полях, гарантируют доставку пакета. Sequence number - это
поле содержит первый байт текущего пакета, который относится к текущему потоку
данных. Acknowledgement number - в свою очередь содержит номер следующего пакета.
Такая взаимосвязь позволяет определить - все ли пакеты были получены.
TCP-протокол значительно отличается от IP-протокола, поскольку соединение
тщательно конролируется.

Возможности TCP/IP структуры
Теперь, когда мы имеем общее представление о TCP/IP протоколах, давайте
рассмотрим возможные последствия. Очевидно, что очень легко подделать адрес
отправителя, манипулируя заголовком IP-пакета. Этот способ рассматривается в
атакках описанных ниже.
Другим последствием, характерным для TCP, является предсказание последовательности
чисел, которые могут привести к "угону сессии". Мы рассмотрим последсвтия такого
нападения ниже.

Spoofing Attacks
Имеется несколько вариаций аттак которые искользуют IP-Spoofing. Хотя некоторые
из них уже давно устарели, но некоторые все же предоставляют угрозу для сетевой
безопастности.

Non-Blind Spoofing - Обман не в слепую
Этот тип нападения реализуется, когда нападающий и жертва находятся в одной
подсети. Sequence и acknowledgement номера(поля пакета) могут быть перехвачены,
устранив тем самым проблему их подбора. Самая большая угроза при таком виде
спуфинга, это перехват сессии. Это достигается путем искажения текущей сессии,
и последующим установлением новой сессии с правильными sequence и acknowledgement
полями с атакуемым компьютером(от перевод. - таким образом атакуемый компьютер
принимает вас за компьютер с которым была установленна сессия ранее). Используя
эту технику, нападающий может обойти авторизацию при установке соединения.

Blind Spoofing - Атака в слепую
Это более сложный вид атаки, поскольку sequence и acknowledgement поля нам не
известны. Для того чтобы обойти это, взломщик отправляет несколько пакетов целевой
машине, с целью - подобрать эти поля. В отличии от сегодняшних, компьютеры в
прошлом использовали простые технологии для генерации sequence чисел. Было
довольно легко обнаружить правильную формулу с помощью исследования пакетов и
TCP сессий. Сегодня же, большинство операционных систем используют рандомную
генерацию sequence чисел, что сильно затрудняет их определение(подбор). Но если
все же удастся выявить sequence числа, то можно будет обмениватся пакетами с
целевым компьютером.
Несколько лет назад, компьютеры использовали сервисы аутентификации на основе
хостов(например Rlogin). Тщательно проведеная атака, может использоватся для
внесения изменений в целевую систему(например добавление нового пользователя) в
слепую, тем самым открывая путь для компьютера взломщика, который не принадлежит
к довереным хостам.

Denial of Service Attack - Атака на отказ в обслуживании
IP-Spoofing в настоящие время используются в одной из самых сложных для
отражения аттак - DoS(Denial of Service Attack). Нападающие стремятся забить
пропускной канал жертвы, и заставить ее потреблять большее количество ресурсов.
Тем самым взломщикам не нужно беспокоится о правильном заполнении sequence и
acknowledgement полей пакетов. Наоборот, они хотят заполонить жертву наибольшим
количеством пакетов в короткий промежуток времени. Для того чтобы максимально
продлить время атаки, они подменяют исходные IP адреса, что делает сложным
отслеживание и остановку атаки.
Когда в нападении принимают участие несколько(множество?) скомпроментированых
хостов, становится очень сложно блокировать все входящие и исходящие соединения.

Защита против IP-Spoofing
Ниже приводятся несколько мер предосторожности, которые могут быть предприняты
для снижения возможности проведения IP-Spoofing атак:
Фильтрация на роутере - применение входящих и исходящих фильтров
на роутерах в вашей сети, является прекрасным способом защиты от IP-Spoofing
аттак. Вам необходимо будет использовать ACL (access control list) который
блокирует неизветсные IP аддреса. Так же, этот интерфейс(роутер) не должен
принимать пакеты, source поле в которых содержит аддреса относящиеся к вашей
внутреней сети, поскольку это распространенная техника, используемая для обхода
firewallов. Так же следует запретить прохождение пакетов изнутри ващей сети,
source поля которых содержат адреса, не отосящиеся к вашей внутренией сети, для
того чтобы предотвратить возможно IP-Spoofinga компьютерами вашей внутреней сети.
Шифрование и Аутендификация - выполнение шифрования и аутендификации так же
позволит сократить риск использования IP-Spoofing атак. Обе этих функции доступны
в Ipv6 протоколе, который устранит возможность проведения Spoofing атак. Так же
следует удалить все службы аутендификации на основе хостов(Rlogin, etc..).

Заключение
IP-Spoofing это проблема, которая не будет иметь легкого решения, пока интернет
построен на базе протоколов TCP/IP. Понимаение как и для чего используются
Spoofing атаки, в сочетании с несколькими простыми превентивными мерами,
позволит защитить вашу сеть от подобного рода атак.

© Matt Tanase


© перевод s0

Перевод взят с сайта www.gfs-team.ru (http://www.gfs-team.ru/)

Xex
02.04.2007, 12:26
дайте линки на софт для спуффинга, нифига не могу найти...

ShadOS
02.04.2007, 12:39
Ищи в google программу Netwox.