В рассылке netfilter-devel опубликован (http://marc.info/?l=netfilter-devel&m=126190148319485&w=2) способ обхода правил фильтрации iptables с использованием модуля nf_conntrack_ftp. Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу. Весь процесс происходит совершенно незаметно для пользователя и не требует каких-то особых разрешений для веб-браузера. Вкупе с модулем nf_nat_ftp, метод позволяет также получать доступ к произвольным портам хостов локальной сети, находящимися за NAT.Продемонстрированный эффект не вызван ошибкой разработчиков, а является проблемой слабо защищенной, но довольно распространенной конфигурации. Для эксплуатации уязвимости могут быть также использованы также и другие способы с другими хелперами conntrack. Рекомендуется проверить конфигурацию и/или временно отключить модули nf_conntrack_ftp, sip и подобные.
Например, при использовании модуля nf_conntrack_ftp в ...URL: http://marc.info/?l=netfilter-devel&m=126190148319485&w=2
Новость: https://www.opennet.ru/opennews/art.shtml?num=24832
как вариант перед "-m state --state ESTABLISHED,RELATED -j ACCEPT" добавить правила блокирующие пакеты на незащищенные порты.костыль конечно, но для параноиков сойдет :)
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)
А модуль открывает _только соединения с --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)
в активном ftp дата-коннект всегда идет с 20 порта
>в активном ftp дата-коннект всегда идет с 20 портаэто я знаю. Вопрос в том, нет ли в том модуле.. дыры, позволяющей не с 20-го 8-)
Не в тему, но хорошо бы pf на линукс портировать.
вот именно, не в тему. pf тут нафиг не нужен.
Не понятно при чем тут вообще pf. Действительно не в тему.
FTP вообще давно пора запретить.
>FTP вообще давно пора запретить.Действительно, удивительно дебильно сделанный протокол.
>Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу.Це троян. Причем тут айпитаблес.
>>Злоумышленник может получить доступ к любому порту на атакуемой машине как только пользователь откроет специально сформированную веб-страницу.
>
>Це троян. Причем тут айпитаблес.При том, что если пользователь откроет данный web-скрипт в браузере, этот скрипт может пробиться на любой порт его машины, даже есть он прикрыт iptables.
>При том, что если пользователь откроет данный web-скрипт в браузере, этот скрипт может пробиться на любой порт его машины, даже есть он прикрыт iptables.Заменяем iptables на pf, а nf_conntrack_ftp на ftp-proxy и получаем совершенно аналогичный эффект.
Так что конкретный фаервол тут не при чем.
Вот именно. Вообще непонятно, в чём новость. Это документированная всем известная фича. Все правила всегда пишутся с учётом этих вещей. Даже примеров использования этой фичи в инете море (навскидку, вспоминается статья во phrack скольки-то летней давности на примере трекинга IRC-протокола).
Насколько я понял, проблема именно в conntrack_ftp модуле iptables, которые не отслеживает всю цепочку при инициировании активного соединения. Одно дело когда соединиться на произвольный порт можно только после обращения к FTP, другое дело - после обращения к web-скрипту. Conntrack_ftp должен позволять выполнять обратные PORT команды только для хостов к которым до этого в течение нескольких секунд было _успешное_ обращение по 21 и только 21 порту (conntrack модуль должен отследить, что команда PORT выполнена именно в этом соединении, т.е. поймали в потоке для FTP сессии PORT x,x,x,x,y,z и разрешаем только эти "x,x,x,x,y,z"). Также conntrack_ftp не должен давать через PORT соединяться на системные номера портов ( < 1024).Поэтому, IMHO, это самая настоящая уязвимость, вызванная недальновидностью разработчиков conntrack модулей, которые не достаточно плотно вгрызаются в логику транслируемых сессий.
Резюмирую, чтобы меня правильно поняли: через FTP такая возможность остается, но проблема именно в том, что такое сейчас можно сделать через web. Вынудить пользователя открыть web-страницу - элементарно. Заманить пользователя на FTP и выполнить нужную PORT команду - нереально.
либо вы не мыслите логически, либо читали статью по диагонали.скрипт как раз нужен чтобы подключиться к липовому фтп серверу и отправить PORT. тем самым разрешив поддельному серверу инициировать соединение на любой порт клиента (если конечно правилами iptables это не запрещено).
>скрипт как раз нужен чтобы подключиться к липовому фтп серверу и отправить
>PORT. тем самым разрешив поддельному серверу инициировать соединение на любой порт
>клиента (если конечно правилами iptables это не запрещено).Вы правы, в примере fake-server.py запускается на 21 порту, web-скрипт лишь выступает в роли ftp-клиента.
>Це троян. Причем тут айпитаблес.Издеваетесь? Проблема в дебильной логике работы FTP протокола - айпитаблес вынужден отслеживать FTP сессии и динамически открывать для них порты. На самом деле - при таком паскудстве можно считать что фаера почти нет: Если хоть как-то удастся убедить ремотного юзера изобразить нечто похожее на ФТП сессию - готов клиент, нужный порт расфайрволен и можно на него долбиться прямым соединением. Как будто фаера и нет. При том, порт может быть произвольный - FTP позволяет любой. В итоге вместо фаера получается сито. При том - я не думаю что такие проблемы только у айпитаблеса, по идее они у всех кто может трекать FTP сессии. А кто не может - у них проблемы с неработой FTP, соответственно :)
>Издеваетесь? Проблема в дебильной логике работы FTP протокола - айпитаблес вынужден отслеживать FTP сессии и динамически открывать для них порты.Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.
> На самом деле - при таком паскудстве можно считать что фаера почти нет
Для вас это новость? Если не ошибаюсь даже в том же руководстве по айпитаблес для начинающих эта проблема описана.
>При том - я не думаю что такие проблемы только у айпитаблеса, по идее они у всех кто может трекать FTP сессии.
Ну если вы думаете ровно так же как и я, что айпитаблес тут не при делах, то зачем столько много букв?
>Протокол 1971 года выпуска, далеко не идеальныйЯ бы сказал, он феноменален по дебильности и архаичности его устройства. Ну, в 1971 может и не умели делать лучше, но с тех пор человеческий разум ушел вперед.
>но до сих пор нечем заменить.
Да бросьте вы. Есть добрая дюжина протоколов на замену. А если ни 1 не нравится можно наконец задизайнить новый, с шахматами и поэтессами.
А вот некоторые минусы FTP:
1) Нет integrity check файла. Так что слив DVD-sized исоху и обнаружив что у него не сходится md5, останется заново перекачивать весь файл. Поскольку метода понять где битый кусок вообще нет.
2) На заливке кучи мелочи FTP просто нереально тормозит.
3) Он всасывает на файрволах. Его крайне трудно нормально спроксировать.
4) Он подвержен ряду тупых атак. Он также заставляет открывать под атаки другие системы.
5) Шифрования по сути нет (FTPS малопопулярен), с кодировками вечно горбизна, etc.Общий вывод? Закопать и не вспоминать. Лучшее что можно с ним сделать.
>Для вас это новость? Если не ошибаюсь даже в том же руководстве
>по айпитаблес для начинающих эта проблема описана.Нет, для меня это не новость но как по мне
>Ну если вы думаете ровно так же как и я, что айпитаблес
>тут не при делах, то зачем столько много букв?Может быть поможет кому-то побыстрее отказаться от юзежа этой архаики. Тогда и закопать можно будет попроще. Туда же и SMTP всякие надо с POP3, из-за которых нынче 95% мыла - спам. Это ж пипец как круто - 95% затраченных на серваки бабок работает на рекламеров которые задарма гоняют мегатонны своего срача.
>>Протокол 1971 года выпуска, далеко не идеальный
>
>Я бы сказал, он феноменален по дебильности и архаичности его устройства. Ну,
>в 1971 может и не умели делать лучше, но с тех
>пор человеческий разум ушел вперед.
>
>>но до сих пор нечем заменить.
>
>Да бросьте вы. Есть добрая дюжина протоколов на замену. А если ни
>1 не нравится можно наконец задизайнить новый, с шахматами и поэтессами.smb? nfs? ssh? люстры с похмельем?
А насчет изобретения очередного велосипеда, вначале нужно определится с протоколом на бумаге, боюсь что ничего не получится.
>Общий вывод? Закопать и не вспоминать. Лучшее что можно с ним сделать.
>Может быть поможет кому-то побыстрее отказаться от юзежа этой архаики. Тогда и
>закопать можно будет попроще. Туда же и SMTP всякие надо с
>POP3, из-за которых нынче 95% мыла - спам. Это ж пипец
>как круто - 95% затраченных на серваки бабок работает на рекламеров
>которые задарма гоняют мегатонны своего срача.Опять же попробуйте нарисовать неуязвимую замену для SMTP на бумаге, хотя бы в виде блок-схемы, боюсь что у вас ничего не получится. Чем вам POP3 не угодил не понятно.
> Опять же попробуйте нарисовать неуязвимую замену для SMTP на бумаге, хотя бы в виде блок-схемы, боюсь что у вас ничего не получится.Не нужна неуязвимая система. Нужна система с авторизачией отправителя, позволяющая эффективно блокировать спамеров и их сервера. Такая система есть и давно используется и расширяется для нужд MILCOM (NATO и т. д).
>Нужна система с авторизачией отправителя, позволяющая эффективно блокировать спамеров и их сервера.Проблема в том, что на 95% спам рассылается ботнетами, от обычных пользователей, с обычной почтой, еще 5% это регистрация пачками на бесплатных доменнах, як mail.ru и рассылка отуда. Так что ваша авторизация будет успешно пройдена спамерами в первый же день. Никаких спамерских серверов.
Таким образом, засев с бумагой и карандашом, вы быстро придете к выводам о неэффективности велосипедостроительства.
>>Нужна система с авторизачией отправителя, позволяющая эффективно блокировать спамеров и их сервера.
>
>Проблема в том, что на 95% спам рассылается ботнетами, от обычных пользователей,
>с обычной почтой, еще 5% это регистрация пачками на бесплатных доменнах,
>як mail.ru и рассылка отуда. Так что ваша авторизация будет успешно
>пройдена спамерами в первый же день. Никаких спамерских серверов.
>
>Таким образом, засев с бумагой и карандашом, вы быстро придете к выводам
>о неэффективности велосипедостроительства.Можно привести пример немного из другой оперы.
Часто получаете спам на джаббер?
А если ещё и антибот с антиспамом включить?
А можно ещё и явно запретить принимать что-то от неизвестных контактов.
А даже если спам будет проходить, то механизмов борьбы с ним в im гораздо больше.Аську прошу не приводить в обратный пример - это как раз пример спаммерского сервера)
Кстати, были прецеденты, когда после закрытия какого-то хостера, количество спама уменьшалось на десятки процентов.
Есть над чем подумать)
>Кстати, были прецеденты, когда после закрытия какого-то хостера, количество спама уменьшалось на
>десятки процентов.
>Есть над чем подумать)Думать не о чем - отключались "головы" ботнетов которые хостились в этих ДЦ. Вскоре появлялись в других местах и всё налаживалось. С наступающим.
>[оверквотинг удален]
>>Проблема в том, что на 95% спам рассылается ботнетами, от обычных пользователей,
>>с обычной почтой, еще 5% это регистрация пачками на бесплатных доменнах,
>>як mail.ru и рассылка отуда. Так что ваша авторизация будет успешно
>>пройдена спамерами в первый же день. Никаких спамерских серверов.
>>
>>Таким образом, засев с бумагой и карандашом, вы быстро придете к выводам
>>о неэффективности велосипедостроительства.
>
>Можно привести пример немного из другой оперы.
>Часто получаете спам на джаббер?Мой jabber не публичен, а другими im практически не пользуюсь.
>А если ещё и антибот с антиспамом включить?
Вот то все обрадуются, когда необходимо будет рассылку сделать, тысячам абонентов.
>А можно ещё и явно запретить принимать что-то от неизвестных контактов.
Во-первых SMTP это позволяет, "белые списки" никто не отменял.
Во-вторых представьте картину:
Захожу, так на сайт некой компании N, вижу что они продают бублики из козъего сыра с левой резьбой на M32, пишу им письмо с просьбой выставить счет/коммерческое предложение на партию таких бубликов, а в ответ тишина, письмо было порезано как от неизвестного контакта, компания N в пролете.>Аську прошу не приводить в обратый пример - это как раз пример
>спаммерского сервера)
>Кстати, были прецеденты, когда после закрытия какого-то хостера, количество спама уменьшалось на
>десятки процентов.
>Есть над чем подумать)От любого провайдера/хостера может идти спам, причем сам он будет абсолютно не виновен, что кто-то из его абонентов подхватил троян, просматриваю порнуху.
>>А если ещё и антибот с антиспамом включить?
>
>Вот то все обрадуются, когда необходимо будет рассылку сделать, тысячам абонентов.Я имею в виду, в клиенте включить.
Не на сервере.>>А можно ещё и явно запретить принимать что-то от неизвестных контактов.
>
>Во-первых SMTP это позволяет, "белые списки" никто не отменял.
>
>Во-вторых представьте картину:
>Захожу, так на сайт некой компании N, вижу что они продают бублики
>из козъего сыра с левой резьбой на M32, пишу им письмо
>с просьбой выставить счет/коммерческое предложение на партию таких бубликов, а в
>ответ тишина, письмо было порезано как от неизвестного контакта, компания N
>в пролете.Опять же, в клиенте, не на сервере.
А в таких случаях обычно должен стоять graylist, но никак не blacklist.
Кстати, такие ситуации и сейчас есть - каждый настраивает SMTP сервер в меру своей распущенности)
Я имею в виду, что бывали ситуации, что и у компаний покрупнее отфильтровывались письма.
Тут в обсуждениях почтовых серверов и антиспам систем люди иногда писали, какие меры борьбы со спамом они принимали.
Помнится, предлагали блочить все китайские ip адреса.
Для некоторых контор, кстати, это эффективная мера)Есть и ещё один момент - много ли почтовых провайдеров предоставляют доступ своих клиентов к настройке антиспама (которые относятся к их ящику).
Хотя тут можно настроить на уровне клиента.>От любого провайдера/хостера может идти спам, причем сам он будет абсолютно не
>виновен, что кто-то из его абонентов подхватил троян, просматриваю порнуху.Насчет виновности - насколько я помню, были прецеденты, закрывали.
На это можно посмотреть и с другой точки зрения:
Если с хостера идет спам, его ip адреса попадают в блеклист.
Что ведет к проблемам для других его клиентов.
Что ведет к тому, что хостер начинает шевелиться после их обращений в его техподдержку.
>>>А если ещё и антибот с антиспамом включить?
>>
>>Вот то все обрадуются, когда необходимо будет рассылку сделать, тысячам абонентов.
>
>Я имею в виду, в клиенте включить.
>Не на сервере.Как вы себе это представляете, "У вас новое письмо, отгадайте загадку для его получения." Так что-ли? Где смысл?
>[оверквотинг удален]
>>
>>Во-вторых представьте картину:
>>Захожу, так на сайт некой компании N, вижу что они продают бублики
>>из козъего сыра с левой резьбой на M32, пишу им письмо
>>с просьбой выставить счет/коммерческое предложение на партию таких бубликов, а в
>>ответ тишина, письмо было порезано как от неизвестного контакта, компания N
>>в пролете.
>
>Опять же, в клиенте, не на сервере.
>А в таких случаях обычно должен стоять graylist, но никак не blacklist.SMTP и это позволяет.
>Кстати, такие ситуации и сейчас есть - каждый настраивает SMTP сервер в
>меру своей распущенности)
>Я имею в виду, что бывали ситуации, что и у компаний покрупнее
>отфильтровывались письма.
>Тут в обсуждениях почтовых серверов и антиспам систем люди иногда писали, какие
>меры борьбы со спамом они принимали.
>Помнится, предлагали блочить все китайские ip адреса.
>Для некоторых контор, кстати, это эффективная мера)SMTP и это позволяет.
>Есть и ещё один момент - много ли почтовых провайдеров предоставляют доступ
>своих клиентов к настройке антиспама (которые относятся к их ящику).
>Хотя тут можно настроить на уровне клиента.Я не хочу гадать много или не много, вы таки скажите чем все таки то что вы предлагаете отличается от SMTP?
>>От любого провайдера/хостера может идти спам, причем сам он будет абсолютно не
>>виновен, что кто-то из его абонентов подхватил троян, просматриваю порнуху.
>
>Насчет виновности - насколько я помню, были прецеденты, закрывали.
>На это можно посмотреть и с другой точки зрения:
>Если с хостера идет спам, его ip адреса попадают в блеклист.
>Что ведет к проблемам для других его клиентов.
>Что ведет к тому, что хостер начинает шевелиться после их обращений в
>его техподдержку.Вот не нужно перекладывать проблему с больной головы на здоровую, у вашего хостера и провайдера своих проблем хватает уж поверьте.
> Вот то все обрадуются, когда необходимо будет рассылку сделать, тысячам абонентов.Для рассылки большому количеству абоннтов есть server-side списки рассылки с подпиской. Если юзверь вздумает расслыать "письма счастья" и проч. ---- воспринимать как злоупотребление.
> Во-первых SMTP это позволяет, "белые списки" никто не отменял.
Это не работает. Авторизации отправителя нет.
> Захожу, так на сайт некой компании N ... пишу им ... коммерческое предложение ...
> а в ответ тишинаЭта тема мусолится с 90-х годов. Из недавнего: Вот, пришло от Juniper-а мне письмо, что почту с бесплатных ящиков они обрабатывать не будут. И таких примеров ---- масса. Если ты крупный корпоративный заказчик --- будь добр, пиши с корпоративного мыла.
> От любого провайдера/хостера может идти спам, причем сам он будет абсолютно не виновен, что кто-то из его абонентов подхватил троян, просматриваю порнуху.
Обеими руками "За!" Ключевое слово "может".
>> Вот то все обрадуются, когда необходимо будет рассылку сделать, тысячам абонентов.
>
>Для рассылки большому количеству абоннтов есть server-side списки рассылки с подпиской. Если
>юзверь вздумает расслыать "письма счастья" и проч. ---- воспринимать как злоупотребление.Представьте что вы работаете в телекоме, раз в месяц вам необходимо разослать счета по всем абонентам, еще необходимо рассылать письма с информацией о предстоящих технических работах и вызванных ими перерывах в связи.
Представьте что вы работаете в крупной компании-дистрибьюторе и вам необходимо извещать всех ваших дилеров обо всех изменениях в цене, условиям предоставления услуг, скидкам, изменениям в партнерских программах, новых продуктах и новых услугах.
Ваши действия при предлагаемой вами схеме?
>
>> Во-первых SMTP это позволяет, "белые списки" никто не отменял.
>
>Это не работает. Авторизации отправителя нет.И не будет. Авторизация может работать только на основе факта известности существования клиента.
>> Захожу, так на сайт некой компании N ... пишу им ... коммерческое предложение ...
>> а в ответ тишина
>
>Эта тема мусолится с 90-х годов. Из недавнего: Вот, пришло от Juniper-а
>мне письмо, что почту с бесплатных ящиков они обрабатывать не будут.Черт я не знаю, что такое не бесплатный ящик электронной почты, нехай уже 2010 год на дворе, да и как определить платишь ты за него или нет
>И таких примеров ---- масса. Если ты крупный корпоративный заказчик ---
>будь добр, пиши с корпоративного мыла.А если мелкий не имеющий своего сервера, принимай 200 миллиграмм отсосина на ночь.
А как определить корпоративное мыло или нет?>> От любого провайдера/хостера может идти спам, причем сам он будет абсолютно не виновен, что кто-то из его абонентов подхватил троян, просматриваю порнуху.
>
>Обеими руками "За!" .За что вы "За!", я вроде ничего не предлагал.
>Ключевое слово "может"
Вы администровали почтовый сервер? Вопрос на миллиард долларов, как в реальном времени стопроцентно отсеять спам идущий от любого из ваших тысяч клиентов?
В общем я так и не вижу, что вы предлагаете вместо SMTP.
> Представьте что ... раз в месяц вам необходимо разослать счета по всем абонентамЯ же сказал: список рассылки по подписке.
> Черт я не знаю, что такое не бесплатный ящик электронной почты,
> нехай уже 2010 год на дворе, да и как определить платишь ты за него или нетНе нужно юродствовать. Так чтобы короче: на Juniper с mail.ru не слать.
> А если мелкий не имеющий своего сервера ... ?
Мелкий купит себе virtual mail hosting за $30/year и не будет пудрить мозги.
> Вы администровали почтовый сервер?
Да.
> Вопрос на миллиард долларов, как в реальном времени стопроцентно
> отсеять спам идущий от любого из ваших тысяч клиентов?Ещё раз повторю: не нужно 100%. Столько даже в морге не дают.
Тут дело катастрофически неэффективных затратах вычислительных
мощностей и энергоресурсов используемых на борьбу с mail abuse.
Причём в убытке как раз провайдеры и их клиенты.
>Я же сказал: список рассылки по подписке.Что это такое? Желательно с ссылкой на RFC.
>Не нужно юродствовать. Так чтобы короче: на Juniper с mail.ru не слать.
Такие бедная контора, что не может на антиспам разорится, или просто совсем положить на клиентов? Кстати попробуйте перекрыть у себя на сервере почту с mail.ru, через сколько времени вам вставят, и ограничится-ли только лишением премии? Если сервер конечно не "локалхост", а реальный в эксплуатации.
>Мелкий купит себе virtual mail hosting за $30/year и не будет пудрить мозги.
А смысл? Гемора на порядок больше, не говоря про затраты денег и времени, а главное спама то меньше не будет, в поле from можно поставить что-угодно, и почту де-факто можно на сервер с любого адреса послать, так что ваше ограничение совсем никак не повлияет на спамеров, зато для ваших клиентов доставит огромные сложности.
>> Вы администровали почтовый сервер?
>Да.И вам охота ежедневно отвечать за корреспонденцию, от клиентов которых вы в глаза не видели? Вот сейчас праздники новогодние, вам охота выходить на работу (пусть даже удаленно), потому что из-за какого-то "любителя клубнички" ваш почтовик попал в блеклист.
> И вам охота ежедневно отвечать за корреспонденцию, от клиентов которых вы в глаза не видели? Вот сейчас праздники новогодние, вам охота выходить на работу (пусть даже удаленно), потому что из-за какого-то "любителя клубнички" ваш почтовик попал в блеклист.При авторизации отправителя совсем незачем блеклистить весь сервер, т. к. доподлинно известно с аккаунта какой овцы был отослан спам.
>При авторизации отправителя совсем незачем блеклистить весь сервер, т. к. доподлинно известно с аккаунта какой овцы был отослан спам.Знаете... надоело.
То вам SMTP не нравится, то оказывается что оно ничего.То вы предлагаете банить хостеров и провайдеров если от них идет спам, а на вопрос а как этому провайдеру достоверно узнать спам клиентом отправлен или нет, вы отвечаете что это не нужно.
Только что вы предлагали забанить целые сервера (mail.ru).
Потом придумали какие-то "списки рассылки со стороны сервера".
Теперь вот про авторизацию отправителя, мало того что это почти везде есть, ну кроме open relay, ну авторизуется на SMTP сервере клиент, ну отправит сообщение, а как узнать спам идет или нет?
Возьмите документацию уже по SMTP, возьмите бумагу и карандаш, нарисуйте как это все работает, если вам покажется что вы нашли оптимальное решение, возьмите паузу, поищите в гугле,яндексе и т.д., что народ говорит об этом, и если уже совсем уверены, напишите статью, опубликуйте. А вот так изливать поток сознания мало связанного с реальностью, оно никому не нужно.
> Знаете... надоело.Да. Надоело объяснять принципы функционирования STANAG 4066 Annex E, XMPP, ACP 142...
Всё прозрачно и с авторизацией отправителя и с многоадресной рассылкой и т.д... В SMTP это необязательные для использования костыли, оттягивающие его смерть. В указанных стандартах ---- это требования, составляющие сущность функционирования протоколов.
Так я в исходном посте как-раз и утверждаю, что нет необходимости в строительстве велосипедов. Велосипед изобретён, осталось им только воспользоваться, а не навешивать GPS-навигатор на кусок деревянной доски с прибитыми подшипниками вместо колёс."Обычного" пользователя таким образом можно идентифицировать и надавать по шапке за разгильдяйство.
> smb? nfs?В локалке -- да.
> ssh?
Для "вебсайтик залить" -- да, rsync -e ssh -- лучше не придумать. Ну или WebDAV for the rest of them.
> люстры с похмельем?
Ничего не перепутали?
>> smb? nfs?
>
>В локалке -- да.Согласен.
>> ssh?
>
>Для "вебсайтик залить" -- да, rsync -e ssh -- лучше не придумать.
> Ну или WebDAV for the rest of them.Опять же.
>> люстры с похмельем?
>
>Ничего не перепутали?Не, де факто сетевые файловые системы, вполне сравнимые с nfs.
> smb? nfs? ssh? люстры с похмельем?9P рулит
http://ru.wikipedia.org/wiki/9P
> Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.Что значит нечем? Для чего нечем? Для раздачи файлов от маленьких до больших - HTTP, от больших до очень больших - torrent. Для закачки файлов на свой сервер - SFTP.
Не покрыта, пожалуй, только анонимная закачка - так такие помойки и не нужны вовсе.
>> Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.
>
>Что значит нечем? Для чего нечем? Для раздачи файлов от маленьких до
>больших - HTTP, от больших до очень больших - torrent. Для
>закачки файлов на свой сервер - SFTP.
>Не покрыта, пожалуй, только анонимная закачка - так такие помойки и не
>нужны вовсе.Отлично, осталось сделать только чтобы та самая пресловутая домохозяйка могла по ссылке в любом браузере открыть, ну и как нибудь решить вопрос со скоростью, хотя это не первостепенно.
> осталось сделать только чтобы та самая пресловутая домохозяйкаПресловутая домохозяйка FTP для закачки не пользуется по определению. Для скачки и http и torrent открываются в браузере.
> ну и как нибудь решить вопрос со скоростью, хотя это не первостепенно
Полагаю, это про SFTP, ибо у других прооколов проблем со скоростью нет.
У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.
>Пресловутая домохозяйка FTP для закачки не пользуется по определению. Для скачки и http и torrent открываются в браузере.Как же она файлами то обменивается?
>Полагаю, это про SFTP, ибо у других прооколов проблем со скоростью нет.У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.
Скажем так про ssh вообще, мне так sshfs больше нравится чем sftp. А скорость по определению ниже, так как упирается помимо io, как в остальных протоколах еще и в cpu, потому как криптография, а на множестве воркерах cpu может совсем потухнуть, не говоря уже об "отзывчивости".
>У SFTP скорость меньше полных 100MBit у меня там получалась только на совсем допотопном железе типа второго пня.
Видимо у вас везде гигабит, или один клиент, и все это происходит в локализованном сегменте сети, потому как даже при идеальной связи на 100Mbit iperf таких значений не дает.
> до сих пор нечем заменитьВообще-то вовсю используются HTTP (который далеко не замена, но для основной цели -- "получить файлик" -- гораздо лучше подходит, и латентность тоже ниже) и RSYNC (который не то что замена, а бизнес-класс после FTP -- только бы вот ещё браузилку в браузерах).
>> до сих пор нечем заменить
>
>Вообще-то вовсю используются HTTP (который далеко не замена, но для основной цели
>-- "получить файлик" -- гораздо лучше подходит, и латентность тоже ниже)
>и RSYNC (который не то что замена, а бизнес-класс после FTP
>-- только бы вот ещё браузилку в браузерах).Ну собственно вы сами все написали.
> Протокол 1971 года выпуска, далеко не идеальный но до сих пор нечем заменить.sftp? всмысле ftp over ssh?
я вообще ftp не пользуюсь, ибо дырень та еще, а вот файлы как-то копировать надо и sftp вполне спасает
Я вот только одного нефкурю, как обычный юзер получит доступ к conntrac_ модулям
Сразу же как их включит на гейте админ. А он их включит сразу же как начнут жаловаться, что FTP не работает.
Ладно, почему состояние сети, протокола, пакета, влияет на настройку????
Ладно... Адаптация и всё такое...
Тогда, почему команда пришедшая из одной подсети, влияет на настройки другой подсети?Если я зашлю пакет с запросом на размер TCP окна в пару терабайт, система раком встанет???
Или из вне, ICMP broadcast, с адресом отправителя 192.168.255.255, роутер всю подсеть загадит? Нет. Так какого ..я тут так?!
Команды тут не причем, для гейта пакеты вполне нормальные, скрипт просто игнорирует вопли клиента о том на какой порт отвечать.
>Или из вне, ICMP broadcast, с адресом отправителя 192.168.255.255, роутер всю подсеть
>загадит?Вообще я заметил модную тенденцию: в P2P сетях (ed2k/*mule, torrent) некоторые откровенно инжектят левые адреса. Явно рассчитывая на то что клиенты протупят и будут туда долбиться. И кстати не все клиенты достаточно умны чтобы отсеивать такое свинство :). Правда для меня остается загадкой великий смысл такого срача. Сильно засрать так что-то трудно, нечто типа "just because we can"?
> Вообще я заметил модную тенденцию: в P2P сетях (ed2k/*mule, torrent) некоторые откровенно инжектят левые адреса.В torrent'е с нулём на конце ? тогда это мюТоррент делает, из-за ошибки в реализации протокола PeerExchange (PEX)
>Я вот только одного нефкурю, как обычный юзер получит доступ к conntrac_ модулямОбычно этот по дефолту есть. Чтобы ФТП работал.
Предлагаю для ясности убрать из заголовка слово iptables
Набор правил написанных невежей, следует блочить порты <49151 , вот если бы был бы обход ограничения по портам,а так это тупой ртфм протокола фтп.
>Набор правил написанных невежей, следует блочить порты <49151 , вот если бы
>был бы обход ограничения по портам,а так это тупой ртфм протокола
>фтп.Дык проблема известная была то, только почему-то не думал никто о ней.
Решение также известно, правда его мало кто используется:
For first case we can avoid problem by changing
net.ipv4.ip_local_port_range and specifying only these values in
--dport at the "-m state --state" rule.
For second case, we can play with FORWARD chain rules and make its
conntrack-based (and specify --dport for tcp / udp).
We can simple unload conntrack_ftp too.Кроме того,
>I've just asked friend of mine to connectremote ftp through a particular 2.4.x ADSL router with probably loaded
ip_conntrack_ftp, and his records showed me, that active ftp worked
without any problems, lsmod was almost empty (i.e. modules really
built-in), but no appropriate rules existed in iptables.То есть, если у вас коробка с гордой надпись D-Link, Linksys и подобное, то большая вероятность, что модуль там загружен и правила описаны такие же, как и в сообщении.
frox - прозрачный прокси-сервер для FTP
Есть идеи, как с этим бороться?
Я говорю про линукс в дешевых роутерах.На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".
>Есть идеи, как с этим бороться?
>Я говорю про линукс в дешевых роутерах.
>
>На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".поставить открытую прошивку, например openwrt и настроить iptables.
>>Есть идеи, как с этим бороться?
>>Я говорю про линукс в дешевых роутерах.
>>
>>На серверах-то всегда можно отключить ip_conntrack_ftp и говорить "юзайте пассивный ftp".
>
>поставить открытую прошивку, например openwrt и настроить iptables.Вариант, согласен.
Правда, не для всех роутеров есть открытые прошивки.
Плюс есть ADSL модемы, к примеру, компании ZTE.
Дешевые, простые и без открытых прошивок)
Да, кстати.
Попробую популярно объяснить, что это такое.
Юзер заходит браузером на страничку хакера.
У него в браузере выполняется 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.А что можно сделать, если у юзера роутер - железка, в которой до настройки фаерволла не добраться?
"не надо юзать дешевые железки" - не вариант.
Как вариант - все-таки включать брандмауэр виндовс.
Ну да, фигня)
А что делать?
А брандмауэр виндовс разве не пропустит это соединение ? Оно же было инициировано самими клиентом (а-ля estalished) или я не до конца понимаю логику работы этого брандмауэра ?
>А брандмауэр виндовс разве не пропустит это соединение ? Оно же было
>инициировано самими клиентом (а-ля estalished) или я не до конца понимаю
>логику работы этого брандмауэра ?Если по простому, скрипт просит сервера подключиться к нему на 445 порт.
Сам он устанавливает соединение, естественно, не с 445 порта.
Так что это соединение новое, входячее.
Ну в домашних роутерах еще в добавок часто включен upnp, так что...
>Ну в домашних роутерах еще в добавок часто включен upnp, так что...
>Да вообще.
NAT с такими приколами - вообще не защищает.
> NAT с такими приколами - вообще не защищает.Вроде нат и не для защиты нужен.
>А что можно сделать, если у юзера роутер - железка, в которой
>до настройки фаерволла не добраться?
>"не надо юзать дешевые железки" - не вариант.
>Как вариант - все-таки включать брандмауэр виндовс.
>Ну да, фигня)
>А что делать?менять железки на *wrt - поддерживаемые.
это приколы мелких коробок...
Закрывать правилом active ftp , 20-й порт.
там, где можно перестроить правила FW в нужном порядке - ибо часто
ACCEPT 0 -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHEDстоит 1-м.
В *wrt - непросто, но можно - в консоли. или скриптом в веб-морде dd-wrt.
А можно отрубать команду PORT, или поменять PORT на PASV ?
А вообще ощущение, что чувак прочитал википедию:"Специально для работы FTP протокола через межсетевые экраны, было сделано расширение NAT, называемое NAT-PT (rfc2766), позволяющее транслировать входящие соединения от сервера к клиенту через NAT. В процессе такого соединения NAT подменяет передаваемые данные от клиента указывая серверу истинный адрес и порт с которым сможет соединиться сервер, а потом транслирует соединение от сервера от этого адреса, клиенту на его адрес. Несмотря на все меры и нововведения принятые для поддержки FTP протокола, на практике функция NAT-PT обычно отключается во всех роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз."
>[оверквотинг удален]
>называемое NAT-PT (rfc2766), позволяющее транслировать входящие соединения от сервера к клиенту
>через NAT. В процессе такого соединения NAT подменяет передаваемые данные от
>клиента указывая серверу истинный адрес и порт с которым сможет соединиться
>сервер, а потом транслирует соединение от сервера от этого адреса, клиенту
>на его адрес. Несмотря на все меры и нововведения принятые для
>поддержки FTP протокола, на практике функция NAT-PT обычно отключается во всех
>роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз."
>
>
>http://ru.wikipedia.org/wiki/FTPпроблема не только в ftp.
Кроме того, если раньше невозможно было заставить пользователя зайти на фтп и набрать там определенные комманды, то сейчас это можно сделать совсем незаметно с помощью браузера
>[оверквотинг удален]
>>поддержки FTP протокола, на практике функция NAT-PT обычно отключается во всех
>>роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз."
>>
>>
>>http://ru.wikipedia.org/wiki/FTP
>
>проблема не только в ftp.
>Кроме того, если раньше невозможно было заставить пользователя зайти на фтп и
>набрать там определенные комманды, то сейчас это можно сделать совсем незаметно
>с помощью браузераС помощью товарища браузера это можно делать очень давно, как минимум с того времени как в нем завелись java и flash. Только одно не понятно зачем при этом злоумышленику использовать ftp, если соединение от клиента уже поднято.
>браузера [...] java и flash. Только одно не понятно зачем при этом злоумышленику
>использовать ftp, если соединение от клиента уже поднято.:))))
Эх, было б ещё смешней, если б не так грустно.
>>браузера [...] 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.
Но, блин, в прошивке ж есть еще пачка всяких тамhttp://svn.dd-wrt.com:8000/dd-wrt/browser/src/linux/brcm/lin...
ip_conntrack_sip.h
ip_conntrack_h323.hэти-то как обойти..
>>браузера [...] java и flash. Только одно не понятно зачем при этом злоумышленику
>>использовать ftp, если соединение от клиента уже поднято.
>
>:))))
>
>Эх, было б ещё смешней, если б не так грустно.
>С помощью товарища браузера это можно делать очень давно, как минимум с
>того времени как в нем завелись java и flash. Только одно
>не понятно зачем при этом злоумышленику использовать ftp, если соединение от
>клиента уже поднято.Клиент говорит серверу "подключись ко мне на 445 порт".
Роутер клиента делает временный проброс порта на 445 порт клиента.
Думаем.
>Думаем.Я подумал в сторону http://secunia.com/advisories/search/?search=firefox сотоварищи, а Ъ?
>>Думаем.
>
>Я подумал в сторону http://secunia.com/advisories/search/?search=firefox сотоварищи, а Ъ?С одной стороны да.
С другой... не вижу в сети массовых эпидемий, связанных с уязвимостью FF.
Если есть ссылки, поделитесь.
Самому интересно, почему при "вроде бы большем" количестве дырок, чем в IE, до сих пор нет новостей про взломы FF.
>Если есть ссылки, поделитесь.Что припоминалось -- точно не вспомню, но: http://google.com/search?q=firefox+vulnerability+botnet
>
>>С помощью товарища браузера это можно делать очень давно, как минимум с
>>того времени как в нем завелись java и flash. Только одно
>>не понятно зачем при этом злоумышленику использовать ftp, если соединение от
>>клиента уже поднято.
>
>Клиент говорит серверу "подключись ко мне на 445 порт".
>Роутер клиента делает временный проброс порта на 445 порт клиента.
>Думаем.Вариант без ftp. "Клиент" соединяется с любого возможного порта, по любому возможному протоколу и заливает "вирусню" используя уязвимости браузера.
>[оверквотинг удален]
>>>того времени как в нем завелись java и flash. Только одно
>>>не понятно зачем при этом злоумышленику использовать ftp, если соединение от
>>>клиента уже поднято.
>>
>>Клиент говорит серверу "подключись ко мне на 445 порт".
>>Роутер клиента делает временный проброс порта на 445 порт клиента.
>>Думаем.
>
>Вариант без ftp. "Клиент" соединяется с любого возможного порта, по любому возможному
>протоколу и заливает "вирусню" используя уязвимости браузера.Это вариант без FTP.
А для варианта с FTP нужно использовать FTP)
>Это вариант без FTP.
>А для варианта с FTP нужно использовать FTP)Если у вас завелся зверек, то уже c ftp он или нет не имеет значения. В любом случае дело не в iptables и не ftp.
интересно скайп этим тоже пользуется ?
>интересно скайп этим тоже пользуется ?Нет. Но он является отличным примером беспомощности межсетевого экранирования.
нет, но в атаке на Чайна Гугль - было аналогично Скайпу.p.s.
автор материала - категорчески прав.
что SPI глобально(недосаточно надежно/безопасно для продакшна как FW), что conntrack хелперы("костыли")-угроза.