Answer the question
In order to leave comments, you need to log in
What runs first?
Good day, dear Toaster.ru Users!
Today I saw an unusual feint with my ears:
first, run the iptables rules script, and then write one in /proc/sys/net/ipv4/ip_forward The
person who did this explained it this way: they say, with this approach, there is a guarantee that the forward will not turn on without firewall rules
, I used to do this: rules /etc/sysctl.conf + saved the rules in this way: service iptablespersistent save (debian) or service iptables save (centos)
actually the question itself is: is the attack (forward to another interface) real with my approach when you turn on the server?
Answer the question
In order to leave comments, you need to log in
В теории действительно могут пробежать форвард-пакеты до включения iptables, это такой короткий промежуток времени, за который вряд ли можно успеть что-то сделать, т.е. некритично.
Но можно усугубить: если вы используйте conntrack в FORWARD вместе с правилом
then it is potentially possible that the connection will be established before iptables is loaded, and later, when iptables has loaded the rules, the connection will go according to this rule. But it's rare when someone uses conntrack in FORWARD, and even with the omission of all established / connected connections. Usually this is true for INPUT servers, but certainly not for FORWARD.
So, if everything is correct for you, you do not use conntrack with this construction for FORWARD, the default policy for FORWARD is DROP, and you strictly control where in which directions over the networks, then there is no reason to panic. Anyway, all illegal connections will drop after iptables initialization, and the time before iptables is loaded is hardly critical, although it is better to load it early, of course. And this is not critical for systemd, for example, because it is parallel and asynchronous (or for many other init systems).
I didn't think of any other cases.
As a conclusion: omitting paranoia and ESTABLISHED/RELATED ACCEPT in FORWARD, the attack is unrealistic.
В общем случае да. И дело не в другом интерфейсе, а во всем, что за ним, как правило это локальная сеть.
Но счет идет на доли секунд-несколько секунд - от момента загрузки ядра до срабатывания правила iptables -P FORWARD DROP
, если оно есть. И может проявиться только при перезапуске скрипта фаервола или рестарте сервера. К тому же, если скрипт перезапускается, то форвард в ядре уже разрешен предыдущим запуском скрипта, поэтому, такой "финт" отрабатывает только один раз при загрузке системы.
Если же в дефолт полиси вместо DROP ACCEPT, то и нет особого смысла включать маршрутизацию в ядре после отработки правил фаера. Хотя, это зависит от количества правил и речь там идет о времени, которое необходимо на отработку самих этих правил.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question