Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 155970 - 20050301 netfilter: fix crash on nat+icmp packets
Summary: 20050301 netfilter: fix crash on nat+icmp packets
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel
Version: 4.0
Hardware: All
OS: Linux
Target Milestone: ---
: ---
Assignee: David Miller
QA Contact: Brian Brock
Whiteboard: impact=unknown,public=20050302,report...
Depends On:
TreeView+ depends on / blocked
Reported: 2005-04-26 12:13 UTC by Mark J. Cox
Modified: 2007-11-30 22:07 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2005-07-27 06:59:52 UTC
Target Upstream Version:

Attachments (Terms of Use)

Description Mark J. Cox 2005-04-26 12:13:56 UTC

"This patch fixes a kernel crashing bug when using NAT. The crash occurs in 
the case when we send out a UDP packet to a closed port on another host, 
with the UDP packet being SNATed. The remote host replies with an ICMP 
port unreachable (type 3, code 3). We need to adjust the ICMP packet, 
because the UDP packet was SNATed."

This may have security consequences.

Was fixed in 2.6.11 as part of

Comment 1 David Miller 2005-04-26 23:01:02 UTC
Rusty's patch is enormous, breaks the kABI of netfilter completely,
and we're still fixing fallout from that change in 2.6.12-rcX

But the patch in the netfilter posting is OK, simple, not
a kABI breaker, and correct.  I'll try to cons up a clean
RHEL4 patch for davej, but no promises on getting to that
this week as I'm very busy with existing stuff and leave for
Chicago on Thursday afternoon.

Comment 2 David Miller 2005-07-27 06:59:52 UTC
Actually, the 2.6.9 based code we have in RHEL4 does not have
this bug.  It references the IP header via skb->nh.iph which
is fine.  Later code used a local variable to store the pointer,
which is what introduced the bug.

Therefore RHEL4 does not have this problem and we need do nothing.

Note You need to log in before you can comment on or make changes to this bug.