Jan Engelhardt
9ef0298a8e
netfilter: nf_log: avoid oops in (un)bind with invalid nfproto values
...
Like many other places, we have to check that the array index is
within allowed limits, or otherwise, a kernel oops and other nastiness
can ensue when we access memory beyond the end of the array.
[ 5954.115381] BUG: unable to handle kernel paging request at 0000004000000000
[ 5954.120014] IP: __find_logger+0x6f/0xa0
[ 5954.123979] nf_log_bind_pf+0x2b/0x70
[ 5954.123979] nfulnl_recv_config+0xc0/0x4a0 [nfnetlink_log]
[ 5954.123979] nfnetlink_rcv_msg+0x12c/0x1b0 [nfnetlink]
...
The problem goes back to v2.6.30-rc1~1372~1342~31 where nf_log_bind
was decoupled from nf_log_register.
Reported-by: Miguel Di Ciurcio Filho <miguel.filho@gmail.com>,
via irc.freenode.net/#netfilter
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Signed-off-by: Patrick McHardy <kaber@trash.net>
2011-03-02 12:10:13 +01:00
..
2011-03-02 07:54:41 +09:00
2011-02-14 17:35:07 +01:00
2010-10-25 13:58:36 -07:00
2010-07-23 12:59:36 +02:00
2010-06-25 14:46:56 +02:00
2010-05-13 15:02:08 +02:00
2011-02-09 08:08:20 +01:00
2011-02-01 16:06:30 +01:00
2011-01-06 11:22:20 -08:00
2010-10-07 09:43:45 +02:00
2010-05-13 15:02:08 +02:00
2008-01-31 19:28:07 -08:00
2010-06-10 23:31:35 -07:00
2008-01-31 19:28:07 -08:00
2010-03-30 22:02:32 +09:00
2010-05-13 15:02:08 +02:00
2008-04-14 11:15:52 +02:00
2010-06-10 23:31:35 -07:00
2011-01-24 19:01:07 +01:00
2010-02-15 18:13:33 +01:00
2010-03-30 22:02:32 +09:00
2009-11-12 02:05:06 -08:00
2010-03-30 22:02:32 +09:00
2010-05-13 15:02:08 +02:00
2010-10-18 11:03:14 +02:00
2010-02-15 17:45:08 +01:00
2010-02-15 17:45:08 +01:00
2010-10-29 19:59:40 +02:00
2010-03-30 22:02:32 +09:00
2010-10-21 08:21:34 -07:00
2011-01-06 11:25:00 -08:00
2010-05-13 15:02:08 +02:00
2010-05-13 15:02:08 +02:00
2011-03-02 12:10:13 +01:00
2010-08-19 17:18:01 -07:00
2009-09-30 16:12:20 -07:00
2011-02-17 11:32:38 +01:00
2010-06-15 13:49:24 -07:00
2010-06-15 13:49:24 -07:00
2010-05-13 15:02:08 +02:00
2011-01-10 20:11:38 +01:00
2010-07-15 17:20:46 +02:00
2010-05-11 18:31:17 +02:00
2010-06-08 16:09:52 +02:00
2010-05-11 18:33:37 +02:00
2010-06-25 14:44:07 +02:00
2010-05-11 18:35:27 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:31:17 +02:00
2010-06-08 16:09:52 +02:00
2010-07-23 12:59:36 +02:00
2010-10-21 10:12:48 +11:00
2010-05-11 18:35:27 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:31:17 +02:00
2010-05-11 18:35:27 +02:00
2010-08-19 17:16:25 -07:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:31:17 +02:00
2010-06-22 08:13:31 +02:00
2011-01-24 21:35:36 +01:00
2010-10-04 21:00:42 +02:00
2010-05-11 18:31:17 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:35:27 +02:00
2010-05-11 18:31:17 +02:00
2010-05-11 18:31:17 +02:00
2010-06-08 16:09:52 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:33:37 +02:00
2010-07-23 14:07:47 +02:00
2010-05-11 18:33:37 +02:00
2010-06-11 18:37:08 -07:00
2010-05-11 18:33:37 +02:00
2010-10-15 15:53:27 +02:00
2010-02-10 17:50:47 +01:00
2010-06-09 14:47:40 +02:00
2010-10-21 10:12:48 +11:00
2011-02-17 11:32:38 +01:00
2010-06-08 16:09:52 +02:00
2010-06-01 12:00:41 +02:00
2010-05-11 18:33:37 +02:00
2010-05-11 18:35:27 +02:00
2010-06-15 11:56:19 -07:00
2010-05-11 18:31:17 +02:00
2010-05-11 18:35:27 +02:00
2010-11-17 12:27:45 -08:00
2010-05-13 15:16:27 +02:00
2011-02-17 11:32:38 +01:00
2010-05-11 18:31:17 +02:00
2010-05-11 18:33:37 +02:00