The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Обход правил межсетевого экрана с использованием модулей трекинга FTP-соединений

27.12.2009 11:37

В рассылке netfilter-devel опубликован способ обхода правил фильтрации iptables с использованием модуля nf_conntrack_ftp. Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу. Весь процесс происходит совершенно незаметно для пользователя и не требует каких-то особых разрешений для веб-браузера. Вкупе с модулем nf_nat_ftp, метод позволяет также получать доступ к произвольным портам хостов локальной сети, находящимися за NAT.

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

Например, при использовании модуля nf_conntrack_ftp в сочетании с набором правил:


   iptables -A INPUT -i lo -j ACCEPT
   iptables -A INPUT -p icmp -j ACCEPT
   iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
   iptables -A INPUT -p tcp --dport 80 -j ACCEPT 
   iptables -P INPUT DROP 
   iptables -P OUTPUT -j ACCEPT


или

   iptables -A FORWARD -s 192.168.0.0/24 -o eth1 -j ACCEPT
   iptables -A FORWARD -d 192.168.0.0/24 -i eth1 -j ACCEPT
   iptables -P FORWARD DROP

   iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j SNAT
--to-source x.x.x.x
   sysctl -w net.ipv4.conf.all.forwarding=1


Несмотря на ограничения, пользователь может подсоединиться к внешнему ftp серверу в активном режиме и выполнить реконнект на произвольный локальный порт, даже если он закрыт пакетным фильтром от внешней сети:


   USER anonymous
   PASS test@example.com
   PORT x,x,x,x,y,z

Создав на удаленном сервере специальный скрипт на Flash, Java или JavaScript (XMLHTTPRequest), злоумышленник может сэмулировать сессию с conntack-модулем, выступая в роли фиктивного FTP-сервера.

  1. Главная ссылка к новости (http://marc.info/?l=netfilter-...)
Автор новости: Аноним
Тип: Проблемы безопасности
Короткая ссылка: https://opennet.ru/24832-iptables
Ключевые слова: iptables, security, linux, netfilter, conntrack
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (85) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, ро (?), 20:20, 27/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    как вариант перед "-m state --state ESTABLISHED,RELATED -j ACCEPT" добавить правила блокирующие пакеты на незащищенные порты.

    костыль конечно, но для параноиков сойдет :)

     
     
  • 2.24, ро (?), 11:47, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    iptables -A INPUT -p tcp -m helper --helper ftp -p tcp ! --dport 1024:4096 -j DROP

    или

    iptables -A INPUT -p tcp --sport 20 ! --dport 1024:4096 -j DROP

    (запрешаем коннект на порты которые не лежат в диапазоне 1024:4096)

     
     
  • 3.59, Evgeniy (??), 03:04, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    А модуль открывает _только соединения с --sport 20 ?
    ему нельзя сказать, чтобы открыть на указанный порт с --sport != 20  ?

    >iptables -A INPUT -p tcp -m helper --helper ftp -p tcp !
    >--dport 1024:4096 -j DROP
    >
    >или
    >
    >iptables -A INPUT -p tcp --sport 20 ! --dport 1024:4096 -j DROP
    >
    >
    >(запрешаем коннект на порты которые не лежат в диапазоне 1024:4096)

     
     
  • 4.71, ро (?), 11:25, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    в активном ftp дата-коннект всегда идет с 20 порта
     
     
  • 5.81, Evgeniy (??), 19:26, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >в активном ftp дата-коннект всегда идет с 20 порта

    это я знаю. Вопрос в том, нет ли в том модуле.. дыры, позволяющей не с 20-го 8-)

     

  • 1.2, mitya (ok), 20:58, 27/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • –6 +/
    Не в тему, но хорошо бы pf на линукс портировать.
     
     
  • 2.16, i (??), 08:51, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    вот именно, не в тему. pf тут нафиг не нужен.
     
  • 2.19, User294 (ok), 10:18, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Не понятно при чем тут вообще pf. Действительно не в тему.
     

  • 1.3, аноним (?), 21:03, 27/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    FTP вообще давно пора запретить.
     
     
  • 2.20, User294 (ok), 10:19, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >FTP вообще давно пора запретить.

    Действительно, удивительно дебильно сделанный протокол.


     

  • 1.4, Ъ (?), 21:35, 27/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу.

    Це троян. Причем тут айпитаблес.

     
     
  • 2.5, Аноним (-), 21:55, 27/12/2009 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу.
    >
    >Це троян. Причем тут айпитаблес.

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

     
     
  • 3.6, аноним (?), 22:41, 27/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >При том, что если пользователь откроет данный web-скрипт в браузере, этот скрипт может пробиться на любой порт его машины, даже есть он прикрыт iptables.

    Заменяем iptables на pf, а nf_conntrack_ftp на ftp-proxy и получаем совершенно аналогичный эффект.

    Так что конкретный фаервол тут не при чем.

     
     
  • 4.7, Просто Лось. (?), 23:40, 27/12/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот именно. Вообще непонятно, в чём новость. Это документированная всем известная фича. Все правила всегда пишутся с учётом этих вещей. Даже примеров использования этой фичи в инете море (навскидку, вспоминается статья во phrack скольки-то летней давности на примере трекинга IRC-протокола).
     
     
  • 5.17, Антон (??), 09:54, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Насколько я понял, проблема именно в conntrack_ftp модуле iptables, которые не о... большой текст свёрнут, показать
     
     
  • 6.18, Антон (??), 10:02, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Резюмирую, чтобы меня правильно поняли: через FTP такая возможность остается, но проблема именно в том, что такое сейчас можно сделать через web. Вынудить пользователя открыть web-страницу - элементарно. Заманить пользователя на FTP и выполнить нужную PORT команду - нереально.
     
  • 6.22, ро (?), 10:36, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    либо вы не мыслите логически, либо читали статью по диагонали.

    скрипт как раз нужен чтобы подключиться к липовому фтп серверу и отправить PORT. тем самым разрешив поддельному серверу инициировать соединение на любой порт клиента (если конечно правилами iptables это не запрещено).

     
     
  • 7.25, Антон (??), 12:23, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >скрипт как раз нужен чтобы подключиться к липовому фтп серверу и отправить
    >PORT. тем самым разрешив поддельному серверу инициировать соединение на любой порт
    >клиента (если конечно правилами iptables это не запрещено).

    Вы правы, в примере fake-server.py запускается на 21 порту, web-скрипт лишь выступает в роли ftp-клиента.

     
  • 2.21, User294 (ok), 10:26, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Це троян. Причем тут айпитаблес.

    Издеваетесь? Проблема в дебильной логике работы FTP протокола - айпитаблес вынужден отслеживать FTP сессии и динамически открывать для них порты. На самом деле - при таком паскудстве можно считать что фаера почти нет: Если хоть как-то удастся убедить ремотного юзера изобразить нечто похожее на ФТП сессию - готов клиент, нужный порт расфайрволен и можно на него долбиться прямым соединением. Как будто фаера и нет. При том, порт может быть произвольный - FTP позволяет любой. В итоге вместо фаера получается сито. При том - я не думаю что такие проблемы только у айпитаблеса, по идее они у всех кто может трекать FTP сессии. А кто не может - у них проблемы с неработой FTP, соответственно :)

     
     
  • 3.31, Ъ (?), 18:54, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Издеваетесь? Проблема в дебильной логике работы FTP протокола - айпитаблес вынужден отслеживать FTP сессии и динамически открывать для них порты.

    Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.

    > На самом деле - при таком паскудстве можно считать что фаера почти нет

    Для вас это новость? Если не ошибаюсь даже в том же руководстве по айпитаблес для начинающих эта проблема описана.

    >При том - я не думаю что такие проблемы только у айпитаблеса, по идее они у всех кто может трекать FTP сессии.

    Ну если вы думаете ровно так же как и я, что айпитаблес тут не при делах, то зачем столько много букв?

     
     
  • 4.37, User294 (ok), 10:31, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Я бы сказал, он феноменален по дебильности и архаичности его устройства Ну, в 1... большой текст свёрнут, показать
     
     
  • 5.39, Ъ (?), 11:42, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    smb nfs ssh люстры с похмельем А насчет изобретения очередного велосипеда,... большой текст свёрнут, показать
     
     
  • 6.40, Demo (??), 13:39, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > Опять же попробуйте нарисовать неуязвимую замену для SMTP на бумаге, хотя бы в виде блок-схемы, боюсь что у вас ничего не получится.

    Не нужна неуязвимая система. Нужна система с авторизачией отправителя, позволяющая эффективно блокировать спамеров и их сервера. Такая система есть и давно используется и расширяется для нужд MILCOM (NATO и т. д).

     
     
  • 7.47, Ъ (?), 19:21, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Нужна система с авторизачией отправителя, позволяющая эффективно блокировать спамеров и их сервера.

    Проблема в том, что на 95% спам рассылается ботнетами, от обычных пользователей, с обычной почтой, еще 5% это регистрация пачками на бесплатных доменнах, як mail.ru и рассылка отуда. Так что ваша авторизация будет успешно пройдена спамерами в первый же день. Никаких спамерских серверов.

    Таким образом, засев с бумагой и карандашом, вы быстро придете к выводам о неэффективности велосипедостроительства.

     
     
  • 8.56, XoRe (ok), 00:32, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Можно привести пример немного из другой оперы Часто получаете спам на джаббер ... большой текст свёрнут, показать
     
     
  • 9.62, аноним (?), 05:03, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Думать не о чем - отключались головы ботнетов которые хостились в этих ДЦ Вск... текст свёрнут, показать
     
  • 9.63, Ъ (?), 07:35, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Мой jabber не публичен, а другими im практически не поль... большой текст свёрнут, показать
     
     
  • 10.65, XoRe (ok), 10:32, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Я имею в виду, в клиенте включить Не на сервере Опять же, в клиенте, не на сер... большой текст свёрнут, показать
     
     
  • 11.74, Ъ (?), 13:46, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Как вы себе это представляете, У вас новое письмо, отгадайте загадку для его по... большой текст свёрнут, показать
     
  • 10.72, Demo (??), 11:30, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Для рассылки большому количеству абоннтов есть server-side списки рассылки с под... большой текст свёрнут, показать
     
     
  • 11.75, Ъ (?), 14:08, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Представьте что вы работаете в телекоме, раз в месяц вам необходимо разослать сч... большой текст свёрнут, показать
     
     
  • 12.78, Demo (??), 16:03, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Я же сказал список рассылки по подписке Не нужно юродствовать Так чтобы короч... большой текст свёрнут, показать
     
     
  • 13.79, Ъ (?), 16:43, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Что это такое Желательно с ссылкой на RFC Такие бедная контора, что не может н... большой текст свёрнут, показать
     
     
  • 14.82, Demo (??), 01:05, 31/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    При авторизации отправителя совсем незачем блеклистить весь сервер, т к доподл... текст свёрнут, показать
     
     
  • 15.83, Ъ (?), 05:52, 31/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Знаете надоело То вам SMTP не нравится, то оказывается что оно ничего То ... большой текст свёрнут, показать
     
     
  • 16.84, Demo (??), 11:46, 31/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Да Надоело объяснять принципы функционирования STANAG 4066 Annex E, XMPP, ACP 1... текст свёрнут, показать
     
  • 8.70, Demo (??), 11:14, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Так я в исходном посте как-раз и утверждаю, что нет необходимости в строительств... текст свёрнут, показать
     
  • 6.44, Michael Shigorin (ok), 17:45, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > smb? nfs?

    В локалке -- да.

    > ssh?

    Для "вебсайтик залить" -- да, rsync -e ssh -- лучше не придумать.  Ну или WebDAV for the rest of them.

    > люстры с похмельем?

    Ничего не перепутали?

     
     
  • 7.48, Ъ (?), 19:23, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >> smb? nfs?
    >
    >В локалке -- да.

    Согласен.

    >> ssh?
    >
    >Для "вебсайтик залить" -- да, rsync -e ssh -- лучше не придумать.
    > Ну или WebDAV for the rest of them.

    Опять же.

    >> люстры с похмельем?
    >
    >Ничего не перепутали?

    Не, де факто сетевые файловые системы, вполне сравнимые с nfs.

     
  • 6.69, andr.mobi (??), 10:43, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > smb? nfs? ssh? люстры с похмельем?  

    9P рулит
    http://ru.wikipedia.org/wiki/9P

     
  • 4.41, аноним (?), 15:55, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.

    Что значит нечем? Для чего нечем? Для раздачи файлов от маленьких до больших - HTTP, от больших до очень больших - torrent. Для закачки файлов на свой сервер - SFTP.
    Не покрыта, пожалуй, только анонимная закачка - так такие помойки и не нужны вовсе.

     
     
  • 5.49, Ъ (?), 19:34, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >> Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.
    >
    >Что значит нечем? Для чего нечем? Для раздачи файлов от маленьких до
    >больших - HTTP, от больших до очень больших - torrent. Для
    >закачки файлов на свой сервер - SFTP.
    >Не покрыта, пожалуй, только анонимная закачка - так такие помойки и не
    >нужны вовсе.

    Отлично, осталось сделать только чтобы та самая пресловутая домохозяйка могла по ссылке в любом браузере открыть, ну и как нибудь решить вопрос со скоростью, хотя это не первостепенно.

     
     
  • 6.77, аноним (?), 15:31, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > осталось сделать только чтобы та самая пресловутая домохозяйка

    Пресловутая домохозяйка FTP для закачки не пользуется по определению. Для скачки и http и torrent открываются в браузере.

    > ну и как нибудь решить вопрос со скоростью, хотя это не первостепенно

    Полагаю, это про SFTP, ибо у других прооколов проблем со скоростью нет.
    У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.

     
     
  • 7.80, Ъ (?), 17:44, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Пресловутая домохозяйка FTP для закачки не пользуется по определению. Для скачки и http и torrent открываются в браузере.

    Как же она файлами то обменивается?


    >Полагаю, это про SFTP, ибо у других прооколов проблем со скоростью нет.

    У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.

    Скажем так про ssh вообще, мне так sshfs больше нравится чем sftp. А скорость по определению ниже, так как упирается помимо io, как в остальных протоколах еще и в cpu, потому как криптография, а на множестве воркерах cpu может совсем потухнуть, не говоря уже об "отзывчивости".

    >У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.

    Видимо у вас везде гигабит, или один клиент, и все это происходит в локализованном сегменте сети, потому как даже при идеальной связи на 100Mbit iperf таких значений не дает.

     
  • 4.43, Michael Shigorin (ok), 17:39, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > до сих пор нечем заменить

    Вообще-то вовсю используются HTTP (который далеко не замена, но для основной цели -- "получить файлик" -- гораздо лучше подходит, и латентность тоже ниже) и RSYNC (который не то что замена, а бизнес-класс после FTP -- только бы вот ещё браузилку в браузерах).

     
     
  • 5.50, Ъ (?), 19:36, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >> до сих пор нечем заменить
    >
    >Вообще-то вовсю используются HTTP (который далеко не замена, но для основной цели
    >-- "получить файлик" -- гораздо лучше подходит, и латентность тоже ниже)
    >и RSYNC (который не то что замена, а бизнес-класс после FTP
    >-- только бы вот ещё браузилку в браузерах).

    Ну собственно вы сами все написали.

     
  • 4.85, Andrew (??), 03:40, 09/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.

    sftp? всмысле ftp over ssh?
    я вообще ftp не пользуюсь, ибо дырень та еще, а вот файлы как-то копировать надо и sftp вполне спасает

     

  • 1.8, pavlinux (ok), 00:09, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я вот только одного нефкурю, как обычный юзер получит доступ к conntrac_ модулям
     
     
  • 2.10, demon (??), 00:14, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Сразу же как их включит на гейте админ. А он их включит сразу же как начнут жаловаться, что FTP не работает.
     
     
  • 3.12, pavlinux (ok), 02:42, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ладно, почему состояние сети, протокола, пакета,  влияет на настройку????
    Ладно... Адаптация и всё такое...
    Тогда,  почему команда пришедшая из одной подсети, влияет на настройки другой подсети?

    Если я зашлю пакет с запросом на размер TCP окна в пару терабайт, система раком встанет???
    Или из вне, ICMP broadcast, с адресом отправителя 192.168.255.255, роутер всю подсеть загадит? Нет. Так какого ..я тут так?!
      


     
     
  • 4.13, Gra2k (ok), 03:13, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Команды тут не причем, для гейта пакеты вполне нормальные, скрипт просто игнорирует вопли клиента о том на какой порт отвечать.
     
  • 4.38, User294 (ok), 10:37, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Или из вне, ICMP broadcast, с адресом отправителя 192.168.255.255, роутер всю подсеть
    >загадит?

    Вообще я заметил модную тенденцию: в P2P сетях (ed2k/*mule, torrent) некоторые откровенно инжектят левые адреса. Явно рассчитывая на то что клиенты протупят и будут туда долбиться. И кстати не все клиенты достаточно умны чтобы отсеивать такое свинство :). Правда для меня остается загадкой великий смысл такого срача. Сильно засрать так что-то трудно, нечто типа "just because we can"?

     
     
  • 5.46, Аноним (-), 19:10, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > Вообще я заметил модную тенденцию: в P2P сетях (ed2k/*mule, torrent) некоторые откровенно инжектят левые адреса.

    В torrent'е с нулём на конце ? тогда это мюТоррент делает, из-за ошибки в реализации протокола PeerExchange (PEX)

     
  • 2.23, User294 (ok), 10:59, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Я вот только одного нефкурю, как обычный юзер получит доступ к conntrac_ модулям

    Обычно этот по дефолту есть. Чтобы ФТП работал.

     

  • 1.9, Аноним (-), 00:13, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Предлагаю для ясности убрать из заголовка слово iptables
     
  • 1.14, Gra2k (ok), 03:23, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Набор правил написанных невежей, следует блочить порты <49151 , вот если бы был бы обход ограничения по портам,а так это тупой ртфм протокола фтп.
     
     
  • 2.15, Аноним (-), 05:42, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Дык проблема известная была то, только почему-то не думал никто о ней Решение т... большой текст свёрнут, показать
     

  • 1.26, Touch (??), 14:13, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    frox - прозрачный прокси-сервер для FTP
     
  • 1.27, XoRe (ok), 14:29, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть идеи, как с этим бороться?
    Я говорю про линукс в дешевых роутерах.

    На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".

     
     
  • 2.42, ро (?), 16:13, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Есть идеи, как с этим бороться?
    >Я говорю про линукс в дешевых роутерах.
    >
    >На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".

    поставить открытую прошивку, например openwrt и настроить iptables.

     
     
  • 3.66, XoRe (ok), 10:36, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>Есть идеи, как с этим бороться?
    >>Я говорю про линукс в дешевых роутерах.
    >>
    >>На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".
    >
    >поставить открытую прошивку, например openwrt и настроить iptables.

    Вариант, согласен.
    Правда, не для всех роутеров есть открытые прошивки.
    Плюс есть ADSL модемы, к примеру, компании ZTE.
    Дешевые, простые и без открытых прошивок)

     

  • 1.28, XoRe (ok), 15:06, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Да, кстати.
    Попробую популярно объяснить, что это такое.
    Юзер заходит браузером на страничку хакера.
    У него в браузере выполняется JS скрипт.
    Этот JS скрипт стучится на сервер хакера, на 21 порт.

    Скрипт шлет команды:
    USER anonymous
    PASS test@example.com
    PORT 192,168,1,2,1,189

    Роутер юзера видит (за счет nf_conntrack_ftp), что юзер говорит FTP серверу:
    "Подключайся ко мне, на ip адрес 192.168.1.2 и на порт 445".
    445 порт - это 1*256 + 189 (последние числа в команде PORT).

    Роутер думает "Бедный юзер, FTP сервер не сможет до него достучаться. Ведь юзер за натом.".
    И переделывает команду "PORT 192,168,1,2,1,189" в команду "PORT 8,8,8,8,201,128".
    Где, 8.8.8.8 - это внешний ip адрес роутера (допустим).
    А 201,128 - это значит порт 51584 (201*256 + 128).
    А ещё добрый роутер делает временный проброс порта 51584 на адрес 192.168.1.2 и порт 445.

    Сервер хакера (который слушает на 21 порту) получает команду "PORT 8,8,8,8,201,128".
    И пытается ткнуться на ip адрес 8.8.8.8 и порт 51584.
    Добрый роутер пробрасывает это соединение.
    И сервер хакера без особых усилий достукивается до порта 445 юзера с ip адресом 192.168.1.2.

    А дальше уже все зависит от умений и знаний хакера.
    Можно не только на 445 порт подключаться, а на любой.
    У винды "открытые веселые порты" есть с номерами больше 1024.

    Как вы можете видеть, атака НЕ зависит от включения/выключения ftp протокола на компьютере клиента.
    FTP клиентом выступает JS скрипт в браузере юзера.

    Если у юзера роутер - это ваш сервер, то конечно можно принять меры.
    Поставить frox, сделать правила iptables или ещё чего.
    Или можно тупо вырубить nf_conntrack_ftp.

    А что можно сделать, если у юзера роутер - железка, в которой до настройки фаерволла не добраться?
    "не надо юзать дешевые железки" - не вариант.
    Как вариант - все-таки включать брандмауэр виндовс.
    Ну да, фигня)
    А что делать?

     
     
  • 2.29, Huko (?), 15:42, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    А брандмауэр виндовс разве не пропустит это соединение ? Оно же было инициировано самими клиентом (а-ля estalished) или я не до конца понимаю логику работы этого брандмауэра ?
     
     
  • 3.34, XoRe (ok), 21:52, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А брандмауэр виндовс разве не пропустит это соединение ? Оно же было
    >инициировано самими клиентом (а-ля estalished) или я не до конца понимаю
    >логику работы этого брандмауэра ?

    Если по простому, скрипт просит сервера подключиться к нему на 445 порт.
    Сам он устанавливает соединение, естественно, не с 445 порта.
    Так что это соединение новое, входячее.

     
  • 2.30, Аноним (-), 16:39, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ну в домашних роутерах еще в добавок часто включен upnp, так что...
     
     
  • 3.35, XoRe (ok), 23:05, 28/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну в домашних роутерах еще в добавок часто включен upnp, так что...
    >

    Да вообще.
    NAT с такими приколами - вообще не защищает.

     
     
  • 4.45, const86 (ok), 18:26, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > NAT с такими приколами - вообще не защищает.

    Вроде нат и не для защиты нужен.

     
  • 2.58, Evgeniy (??), 01:58, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А что можно сделать, если у юзера роутер - железка, в которой
    >до настройки фаерволла не добраться?
    >"не надо юзать дешевые железки" - не вариант.
    >Как вариант - все-таки включать брандмауэр виндовс.
    >Ну да, фигня)
    >А что делать?

    менять железки на *wrt - поддерживаемые.

      это приколы мелких коробок...

    Закрывать правилом active ftp ,  20-й порт.
    там, где можно перестроить правила FW в нужном порядке - ибо часто
    ACCEPT     0    --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

    стоит 1-м.

    В *wrt - непросто, но можно - в консоли. или скриптом в веб-морде dd-wrt.


     
  • 2.61, pavlinux (ok), 04:51, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    А можно отрубать команду PORT, или поменять  PORT на PASV ?
     

  • 1.32, Ъ (?), 20:21, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А вообще ощущение, что чувак прочитал википедию:

    "Специально для работы FTP протокола через межсетевые экраны, было сделано расширение NAT, называемое NAT-PT (rfc2766), позволяющее транслировать входящие соединения от сервера к клиенту через NAT. В процессе такого соединения NAT подменяет передаваемые данные от клиента указывая серверу истинный адрес и порт с которым сможет соединиться сервер, а потом транслирует соединение от сервера от этого адреса, клиенту на его адрес. Несмотря на все меры и нововведения принятые для поддержки FTP протокола, на практике функция NAT-PT обычно отключается во всех роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз."

    http://ru.wikipedia.org/wiki/FTP

     
     
  • 2.36, Аноним (-), 05:36, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален проблема не только в ftp Кроме того, если раньше невозм... большой текст свёрнут, показать
     
     
  • 3.51, Ъ (?), 19:43, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >>поддержки FTP протокола, на практике функция NAT-PT обычно отключается во всех
    >>роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз."
    >>
    >>
    >>http://ru.wikipedia.org/wiki/FTP
    >
    >проблема не только в ftp.
    >Кроме того, если раньше невозможно было заставить пользователя зайти на фтп и
    >набрать там определенные комманды, то сейчас это можно сделать совсем незаметно
    >с помощью браузера

    С помощью товарища браузера это можно делать очень давно, как минимум с того времени как в нем завелись java и flash. Только одно не понятно зачем при этом злоумышленику использовать ftp, если соединение от клиента уже поднято.

     
     
  • 4.53, Michael Shigorin (ok), 21:42, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >браузера [...] java и flash. Только одно не понятно зачем при этом злоумышленику
    >использовать ftp, если соединение от клиента уже поднято.

    :))))

    Эх, было б ещё смешней, если б не так грустно.

     
     
  • 5.57, Evgeniy (??), 01:56, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>браузера [...] java и flash. Только одно не понятно зачем при этом злоумышленику
    >>использовать ftp, если соединение от клиента уже поднято.
    >
    >:))))
    >
    >Эх, было б ещё смешней, если б не так грустно.

      А это приколы мелких коробок.
    Помнишь, мы как-то давно про это говорили.

    Закрывать правилом active ftp ,  20-й порт.
    там, где можно перестроить правила FW в нужном порядке - ибо часто
    ACCEPT     0    --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

    стоит 1-м.

    В *wrt - непросто, но можно - в консоли. или скриптом в веб-морде dd-wrt.

     
  • 5.60, Evgeniy (??), 03:16, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Но, блин, в прошивке ж есть еще пачка всяких там

    http://svn.dd-wrt.com:8000/dd-wrt/browser/src/linux/brcm/linux.v24_2/include/linux/netfilter_ipv4

    ip_conntrack_sip.h
    ip_conntrack_h323.h

    эти-то как обойти..

    >>браузера [...] java и flash. Только одно не понятно зачем при этом злоумышленику
    >>использовать ftp, если соединение от клиента уже поднято.
    >
    >:))))
    >
    >Эх, было б ещё смешней, если б не так грустно.

     
  • 4.54, XoRe (ok), 00:19, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/

    >С помощью товарища браузера это можно делать очень давно, как минимум с
    >того времени как в нем завелись java и flash. Только одно
    >не понятно зачем при этом злоумышленику использовать ftp, если соединение от
    >клиента уже поднято.

    Клиент говорит серверу "подключись ко мне на 445 порт".
    Роутер клиента делает временный проброс порта на 445 порт клиента.
    Думаем.

     
     
  • 5.55, Michael Shigorin (ok), 00:25, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Думаем.

    Я подумал в сторону http://secunia.com/advisories/search/?search=firefox сотоварищи, а Ъ?

     
     
  • 6.67, XoRe (ok), 10:41, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>Думаем.
    >
    >Я подумал в сторону http://secunia.com/advisories/search/?search=firefox сотоварищи, а Ъ?

    С одной стороны да.
    С другой... не вижу в сети массовых эпидемий, связанных с уязвимостью FF.
    Если есть ссылки, поделитесь.
    Самому интересно, почему при "вроде бы большем" количестве дырок, чем в IE, до сих пор нет новостей про взломы FF.

     
     
  • 7.73, Michael Shigorin (ok), 12:14, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Если есть ссылки, поделитесь.

    Что припоминалось -- точно не вспомню, но: http://google.com/search?q=firefox+vulnerability+botnet

     
  • 5.64, Ъ (?), 07:50, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >
    >>С помощью товарища браузера это можно делать очень давно, как минимум с
    >>того времени как в нем завелись java и flash. Только одно
    >>не понятно зачем при этом злоумышленику использовать ftp, если соединение от
    >>клиента уже поднято.
    >
    >Клиент говорит серверу "подключись ко мне на 445 порт".
    >Роутер клиента делает временный проброс порта на 445 порт клиента.
    >Думаем.

    Вариант без ftp. "Клиент" соединяется с любого возможного порта, по любому возможному протоколу и заливает "вирусню" используя уязвимости браузера.

     
     
  • 6.68, XoRe (ok), 10:41, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >>>того времени как в нем завелись java и flash. Только одно
    >>>не понятно зачем при этом злоумышленику использовать ftp, если соединение от
    >>>клиента уже поднято.
    >>
    >>Клиент говорит серверу "подключись ко мне на 445 порт".
    >>Роутер клиента делает временный проброс порта на 445 порт клиента.
    >>Думаем.
    >
    >Вариант без ftp. "Клиент" соединяется с любого возможного порта, по любому возможному
    >протоколу и заливает "вирусню" используя уязвимости браузера.

    Это вариант без FTP.
    А для варианта с FTP нужно использовать FTP)

     
     
  • 7.76, Ъ (?), 14:13, 30/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Это вариант без FTP.
    >А для варианта с FTP нужно использовать FTP)

    Если у вас завелся зверек, то уже c ftp он или нет не имеет значения. В любом случае дело не в iptables и не ftp.

     

  • 1.33, JL2001 (ok), 21:36, 28/12/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    интересно скайп этим тоже пользуется ?
     
     
  • 2.52, Ъ (?), 19:47, 29/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >интересно скайп этим тоже пользуется ?

    Нет. Но он является отличным примером беспомощности межсетевого экранирования.  

     
  • 2.86, Basiley (ok), 22:00, 19/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    нет, но в атаке на Чайна Гугль - было аналогично Скайпу.

    p.s.
    автор материала - категорчески прав.
    что SPI глобально(недосаточно надежно/безопасно для продакшна как FW), что conntrack хелперы("костыли")-угроза.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру