From: "Christoph A." <casmls@gmail.com>
To: Netfilter Developer Mailing List <netfilter-devel@vger.kernel.org>
Cc: "Christoph A." <casmls@gmail.com>
Subject: security impact of creating rulesets with iptables (cmd)
Date: Sun, 09 Aug 2009 23:43:58 +0200 [thread overview]
Message-ID: <4A7F431E.70706@gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 1753 bytes --]
Hi,
I read Jan's "Towards the perfect ruleset" paper [1]
[1] http://jengelh.medozas.de/documents/Perfect_Ruleset.pdf
and I would have a question about the mentioned security risk when
creating hole rulesets with the iptables command (chapter 3).
I understand why it is a bad idea to create n rules by using multiple
times iptables -A... (instead of iptables-restore) because it
"downloads" the entire table n-times and sets the entire table n-times
(performing n*2 operations) while passing n^2 rules between kernel and
userspace.
The second and more interesting point is that this would also introduce
a timeframe where packets could slip through while these exchanges
between kernel and userspace are happening. Why does setting the policy
to DROP not solve this problem?
I asume these commands are processed from top to bottom, I couldn't
imagine of a opportunity when packets could slip through
example
(presuming an empty INPUT chain)
1: iptables -P INPUT DROP
2: iptables -A INPUT -s 10.0.0.0/8 -j DROP
3: iptables -A INPUT -p tcp --dport 22 --syn -j ACCEPT
After (1) the chain would be empty
after (2):
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source
destination
0 0 DROP all -- * * 10.0.0.0/8
0.0.0.0/0
(3):
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source
destination
0 0 DROP all -- * * 10.0.0.0/8
0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0
0.0.0.0/0 tcp dpt:22
I'm not using iptables -A sequences in scripts anymore but would be
curious about this security risk anyway.
curious
Christoph A.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
next reply other threads:[~2009-08-09 21:46 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-09 21:43 Christoph A. [this message]
2009-08-09 22:18 ` security impact of creating rulesets with iptables (cmd) Jan Engelhardt
2009-08-09 23:28 ` Christoph A.
2009-08-10 6:58 ` Patrick McHardy
2009-08-10 8:31 ` Jan Engelhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A7F431E.70706@gmail.com \
--to=casmls@gmail.com \
--cc=netfilter-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.