URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 129485
[ Назад ]

Исходное сообщение
"Выпуск пакетного фильтра iptables 1.8.9"

Отправлено opennews , 12-Янв-23 15:27 
Опубликован выпуск классического инструментария для управления пакетным фильтром  iptables 1.8.9, развитие которого последнее время сосредоточено на компонентах для сохранения обратной совместимости - iptables-nft и ebtables-nft, предоставляющих утилиты с тем же синтаксисом командной строки, как в iptables и ebtables, но транслирующих полученные правила в байткод nftables.  Оригинальный набор программ iptables, включая ip6tables, arptables и ebtables, в 2018 году переведён в разряд устаревших и уже заменён на nftables в большинстве дистрибутивов...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=58469


Содержание

Сообщения в этом обсуждении
"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:27 
Динамические правила на уровне приложения (с привязкой к иноде экзешника на диске и пид запущенного кода, с защитой от подмены) там не хотят добавить в линукс?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:30 
ты понимаешь, что это бред? есть миллион способов обойти эти правила, например через создание подпроцесса "curl". Всё, пид там будет другой. "Индоа экзешника" тоже другая. И ничего не "подменено".

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:35 
Именно. Нужна проверка, что файл именно тот, который был в момент установки правила.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:37 
Кстати, с неймспейсами можно без проблем запихнуть всех потомков в те же рамки. Но надо контролировать, что родительский процесс именно то чем представляется. Может хеш бинаря в памяти проверять тоже.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:38 
Тебе нужен явно другой инструмент... Например, апармор может наследовать права при запуске дочернего процесса, и пофик, какая там будет нода и пида.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:40 
В момент установки правила, а не в момент запуска.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено InuYasha , 13-Янв-23 19:31 
т.е. правило должно создаваться после запуска программы?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 20:08 
Собственно, да, при запуске проверять что это тот самый файл, потом разрешающее правило привязывается и не должно быть возможности подменить процесс, файл, или код.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:57 
Запускай нехорошие приложения в network namespaces с зарезанным доступом в сеть. Ну или android-way, от другого пользователя с фильтрацией по owner в iptables

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 16:22 
Угу, очень многие приложения хотят локалхост для работы и чтобы выполнить ip link set lo up надо мапить рута в неймспейсе, и в итоге все приложения проверяющие айди считают что запущены от рута и имеют много лишних возможностей. Есть назойливый софт, отказывающийся запускаться от рута опять же, или работающий иначе. Пока единственное решение запуск от другого пользователя, но мне хотелось бы видеть список исходящих соединений процесса и разрешать/блокировать их в интерфейсе.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 21:48 
SELinux в помощь.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Full Master , 12-Янв-23 23:07 
> ip link set lo up надо мапить рута в неймспейсе

cap net admin не хватит?


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 23:45 
А это не хуже? Потому что unshare не получает реальных админских прав, только в неймспейсе рут.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 23:48 
Но кстати этого рута в неймспейсе емнип достаточно чтобы выставить cap_sys_admin+ep для любого файла, так что тоже такое себе.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 12:34 
Ты неправ, аноним, нужно запускать в cgroup net_cls. Неймспейс тот же, но по clsid можно фильтровать как минимум в nftables, но может, и под iptables есть модуль.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Дуров , 12-Янв-23 17:36 
opensnitch не так работает?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено An0nim0us , 12-Янв-23 23:20 
Сейчас из того что развивается есть только opensnitch.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 13-Янв-23 14:01 
> правила на уровне приложения (с привязкой к иноде экзешника

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


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено InuYasha , 13-Янв-23 19:33 
и что - оно там разве не работает?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 13-Янв-23 22:06 
предполагаю, что достаточно убить или пропатчить сервис AppIdSvc или как его там.
это как SElinux отключить.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено InuYasha , 13-Янв-23 23:51 
А почему тогда "пытались"? Вроде, на винде полно сервисов работает. Даже в звербанке.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 14-Янв-23 06:59 
> А почему тогда "пытались"?

потому что это должно не отключаться так просто.
т.е. находиться в ядре (по рандомным адресам хехе).
и не модулем.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 14-Янв-23 07:18 
я забыл сформулировать в чем именно грабли.

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

2) что делать если "приложение" способно и будет создавать от себя другие "приложения" ?

возможна эвристика против обычных юзеров: либо +r+x, либо +w. если +w+x - не запускать вообще.
предлагаю рассмотреть самостоятельно.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 16-Янв-23 01:03 
> анон не в курсе про хардлинки.

У всех хардлинков на один файл одинаковый inode.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 20-Янв-23 22:06 
> У всех хардлинков на один файл одинаковый inode.

значит симлинки. все время путаю их.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 20-Янв-23 21:44 
> что делать если "приложение" способно и будет создавать от себя другие "приложения" ?

У каждого процесса есть родитель. Эту цепочку можно отследить.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено ivan_erohin , 20-Янв-23 22:07 
> У каждого процесса есть родитель. Эту цепочку можно отследить.

родитель init или systemd. что дальше ?



"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 24-Янв-23 20:06 
>> У каждого процесса есть родитель. Эту цепочку можно отследить.
> родитель init или systemd. что дальше ?

Это уже не относится к теме. Мы говорили о том,

> "что делать если "приложение" способно и будет создавать от себя другие "приложения" ?


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:36 
"Но как, Холмс?"
Кто пояснит, почему от простых и понятных правил, которыми и был удобен iptables, отказались в пользу мешанины из фигурных скобок?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 15:59 
А чтобы деды не разобрались

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 16:03 
Можно каждое правило отдельной строкой команде nft передавать.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено пууук , 12-Янв-23 16:26 
Так никто не отказался, вон все твои "простые" правила сохранили и продолжают пилить. Пользуйся на здоровье, а движок стал лучше и быстрее.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 17:53 
В современном мире надо эмитировать развитие даже если продукт завершён, иначе скажут что оно протухло и заброшено.  

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 18:47 
Эмитируют облигации и электроны. Развитие имитируют.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено пох. , 12-Янв-23 20:16 
Скромное напоминание: обещанного рыжым аналога ipchains -C "как только так сразу же" так и не завезли. Как и работающего gre фильтра/ната. Как и работающего матчинга по ipsec sa. И много еще чего. Все что тебе надо знать про "развитие" и "завершенность".

Т.е. оно недоделано, доделано никогда не будет, и действительно протухло и заброшено уже ПЯТНАДЦАТЬ гребаных лет - ровно с момента когда рыжему, видимо, предложили непыльную должность в коммерческой лавке.

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

Просто остальные либо за деньги, либо г-но полное и абсолютное.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 21:51 
Потому, что «мешанина из фигурных скобок» удобно парсится и генерируется компьютером. А руками правила для фаерволла пишут только админы высоконагруженных локалхостов. В современном мире принято оперировать высокоуровневыми концептами, а не хардкодить номера портов, айпишники и прочие переменные.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 16-Янв-23 01:11 
Интересно посмотреть на исследование сколько в современном мире хостов администрируют корпорации, а сколько - "админы локалхостов", думаю исследование провалится ещё на обсуждении терминов кто есть кто =)

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 16:07 
Лучше бы json в iptables завезли, чтобы парсить выхлоп было удобно.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 16:51 
> Лучше бы json

лучше бы лекарство от жысон головного мозга придумали.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 16:58 
Жсон очень удобен для шелл-скриптов. Лучше и безопасней xml опять же.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено анонна , 12-Янв-23 18:58 
а sed придумали трусы. ага. вот так и живем.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 00:02 
Нет, sed придумали умные люди, которые в отличие от тебя понимают, что такое область применимости. Именно поэтому sed не умеет работать с json и именно поэтому ты этого не понимаешь.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено анонна , 13-Янв-23 00:55 
черт а оператор | тебе просто так дали?))

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено анонна , 13-Янв-23 01:01 
> Нет, sed придумали умные люди, которые в отличие от тебя понимают, что
> такое область применимости. Именно поэтому sed не умеет работать с json
> и именно поэтому ты этого не понимаешь.

я поражаюсь новым поколениям программистов, которые не видели линукса во времена отсутствия системд)) они вечно ищут что то что усложнит работу, но им будет казаться, что так лучше)) вы прям как строители забивающие гвозди микроскопом))


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Анончик , 13-Янв-23 04:27 
sed не для парсинга если что, это потоковый редактор всего навсего.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено анонна , 27-Янв-23 05:11 
> sed не для парсинга если что, это потоковый редактор всего навсего.

кстати да браузер тоже ток читалка html разметки, а погляди че натворили?)))


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено An0nim0us , 12-Янв-23 23:27 
вас услышали и написали nftables
nft --json list ruleset

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 00:16 
Для "json'ификации" вывода команд есть https://kellyjonbrazil.github.io/jc/

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 18:26 
Это надо быть сверхчеловеком чтобы помнить все эти правила. Как-то надо было настроить, с трудом разобрался, через неделю залез в конфиг и ничего не понял от слова совсем.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 00:08 
Я тебе секрет професии открою, только не рассказывай никому. Вместо того, чтобы заучивать правила, разберись с принципом работы и научись быстро искать нужное в мане. А свободное время можно потратить на что-нибудь приятное.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 00:31 
К счастью я выпилился из ойти и вкатился в сварщики на севера вахтовым методом. Сказать что доволен - ничего не сказать. Лишь жалею, что не сделал это раньше.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 04:07 
Теперь ты настоящий сварщик.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 03:03 
Работаю админом. Тоже ничерта не помню эти таблицы, правила, ipсеты, каждый раз когда нужно потрогать iptables - разбираю с нуля.
Мне тоже хотелось бы попроще.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено пох. , 13-Янв-23 14:34 
Учи firewalld - он как раз для тебя, попроще. Синтаксис немного уе..нский, но разбираться - ни в чем не надо, просто запомнить.

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

И пришедший на твое еще неостывшее место сможет продолжить с той же точки без лишнего времени на разбирательства.


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 12:36 
В nftables можно писать комментарии к правилам, считать по счётчикам, и вообще кучу всякой метаинформации сохранять.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено я , 13-Янв-23 13:55 
В iptables тоже можно писать комментарии и считать по счётчикам, если уж на то пошло.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 12-Янв-23 19:20 
Я наверно тоже ИДИОТ, ufw мне всегда хватало. А iptables кроме как платной поддержкой с курсами - никак оправдать не могу. Но любопытно проверить, вот напишите мне правило, которое я не смогу повторить в ufw? Встряхну кудрями вьющимися, не за деньги :-)

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено пох. , 12-Янв-23 20:20 
ты не наверное, ты точно.

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


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Sw00p aka Jerom , 12-Янв-23 21:19 
>ты не наверное, ты точно.

Сожгут вас на костре, за ваши знания :)

пс: убил


"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Anonim , 12-Янв-23 22:20 
А код будет? Что бы предметно.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 13-Янв-23 03:09 
Так то ufw сам iptables юзает и надо заметить довольно мусорно после него становится. Так что при большом желании всегда можешь "доделать" правила ufw через iptables, даже если что то в ufw нельзя будет сделать. То есть у задачи нулевая практическая ценность.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Роман , 14-Янв-23 21:00 
как там сделать NAT - хотя бы простой с маскарадом, без вписывания параметров для iptables вручную? мой беглый гугл не помог, предлагают руками лезть в before/after rules

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено InuYasha , 13-Янв-23 19:39 
А... э... за 4 года уже даже я переписал все свои хотелки на nft. И синтаксис там реально удобнее, даже с комментариями. Нечастый случай когда инновации реально полезны.
Хотя, наверное, на ipt ещё дофига всего держится. Какие-нибудь openWRT и проприетарные аналоги с гуями под это дело.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 16-Янв-23 01:22 
И не жалко вам было 4 года потратить на переписывание одного и того же?

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено InuYasha , 16-Янв-23 14:22 
4 года делали ОНИ, а не я. А я ща эти годы потратил 3-4 дня, наверное.

"Выпуск пакетного фильтра iptables 1.8.9"
Отправлено Аноним , 16-Янв-23 18:59 
OpenWRT на nftables, начиная с последнего мажорного релиза.