В ядре Linux устранена следующая уязвимость: netfilter: nft_ct: добавить serqadj расширение для натированных соединений Для FTP-трафика мож…
В ядре Linux устранена следующая уязвимость: netfilter: nft_ct: добавить serqadj расширение для натированных соединений Для FTP-трафика может потребоваться регулировка последовательности с режимами PASV/EPSV. из-за необходимости перезаписать полезную нагрузку пакета (IP, порт) на ftp контроль Связь. Это может потребовать изменений в TCP длины и ожидаемых seq / ack_seq. Самый простой способ воспроизвести эту проблему - с режимом PASV. Пример правил: таблица ftp_nat { ct помощник ftp_helper { тип "ftp" протокол tcp l3proto inet } цепная предвариция { тип фильтра крюк prerouting priority 0; политика принять; tcp порт 21 ct государственный новый ct адперный набор "ftp_helper" } } таблица ip nat { цепная предвариция { тип nat крюк предварижающий приоритет -100; политика принять; tcp порт 21 dnat ip prefix на карту папы { 192.168.100.1: 192.168.13.2/32 } } цепочка по маршруту { тип nat крюк почтовый приоритет 100; политика принять; tcp sport 21 snat ip prefix to грустная карта { 192.168.13.2 : 192.168.100.1/32 } } } Обратите внимание, что помощнику ftp назначается * после * настройки dnat. Обратное (нат после назначения помощника) обрабатывается существующим зарегистрируйтесь в nf_nat_setup_info() и не покажет проблему. Тополя: +----------------------------------------------------------------------------------------------------------------------------------------------- | FTP: 192.168.13.2 | <-> | НАТ: 192.168.13.3, 192.168.100.1 | +----------------------------------------------------------------------------------------------------------------------------------------------- | | +--------------------------------------------------------- | Заказчик: 192.168.100.2 | +--------------------------------------------------------- ftp nat изменения не работают так, как ожидалось в этом случае: Подключено к 192.168.100.1. [..] ftp> эпсв EPSV/EPRT на выключен IPv4. ftp> ls 227 Ввод пассивного режима (192,168,100,1,209,129). 421 Сервис недоступен, удаленный сервер имеет закрытое соединение. Ярлыки логов: Отсутствующий nfct_seqadj_ext_add() вызов настройки ВНИМАНИЕ: CPU: 1 PID: 0 в net/netfilter/nf_conntrack_seqadj.c:41 [..] __nf_nf_nat_mangle_tcp_packet+0x100/0x160 [nf_nat] nf_nat_ftp+0x142/0x280 [nf_nat_ftp] help+0x4d1/0x880 [nf_conntrack_ftp] nf_confirm+0x122/0x2e0 [nf_conntrack] nf_hook_slow+0x3c/0xb0 .. Исправьте это, добавив необходимое расширение, когда назначен помощник по отслеживаю Связь, которая имеет привязку к наты.
| Продукт | Вендор | Статус |
|---|---|---|
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux-allwinner-5.19 | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws-5.0 | Отслеживается | |
| linux-aws-5.11 | Отслеживается |