|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Gleb Smirnoff 2:5020/400 10 Apr 2004 12:58:50 To : Denis Sotchenko Subject : Re: arp -------------------------------------------------------------------------------- Denis Sotchenko <Denis.Sotchenko@p112.f118.n5020.z2.fidonet.org> wrote: DS>>> p.s. отрывание яиц гадёнышу советовать не стоит - сам знаю =) DS>>> интересны именно превентивные меры на будущее. AVZ>> а как-нить можно определить, кто это делает? DS> Управляемыми свичами. Расставили их несколько штук, выявили. DS> А теперь самое интересное: виновником оказался дохлый свич у DS> юзера. Он никак себя не проявляет, судя по tcpdump'у - никакого DS> подозрительного траффика нет. Hикто с таким не сталкивался? DS> Я уже всю голову сломал размышлениями, как может свич в одном DS> конце сегмента мешать соединению двух компов в другом конце... Денис, от тебя не ожидал. Рассказываю механизм, которому пора в FAQ: Когда любой Ethernet свитч получает пакет от адреса A на адрес B на порту X, и если адрес A не принадлежит к мультикастовой/броадкастовой группе, то свитч записывает в свою forwarding database, что адрес A достигаем посылкой пакеты на порт X. Это свойство свитчей позволяет очень легко устроить DoS. Если я пошлю броадкаст пакет с адресом A, то изменю forwarding database всех свитчей таким образом, что они будут посылать пакеты адресуемые A в направлении меня. (В качестве proof of concept я написал netgraph ноду, которая отражает любой ARP запрос обратно в Ethernet. Как результат - не работает ARP в сети и через некоторое время не работает ничего. Аналогично я пробовал отражать PADI пакеты и таким образом DoSил PPPoE. Hапомню, что PADI и ARP who has являются броадкастами) Таким образом работают все свитчи, даже управляемые. Разница в том, что у управляемых можно посмотреть как перестраивается fib. Теперь про твою беду: иногда дешевые свитчи сгорают таким образом, что начинают действовать следующим образом: при получении броадкаста на порт X, они отсылают его на все порты, вместо того, что бы послать на все порты кроме X. Результат таков: ARP запрос успешно доставляется тому, кто на него должен ответить. Пока ядро ОС генерирует и отсылает ARP ответ, "больной" свитч успевает отослать пакет назад и все свитчи "думают" что отправитель броадкаста находится за больным свитчом. Когда ARP ответ высылается, то он не доставляется по назначению, он уходит на "больной" свитч. P.S. Согласно нашему опыту (ГЗ МГУ) наиболее подвержены этому Cnet. P.P.S. Кто ведет opennet, мб запостите в FAQ? Hа unixfaq постить без мазы, тк совсем не unix. -- Totus tuus, Glebius. GLEBIUS-RIPN GLEB-RIPE --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/657749ba07e9.html, оценка из 5, голосов 10
|