CVE-2009-3726: Null Pointer Dereference

Published Oct 15, 2009
·
Updated

Hi,

Description of problem:

execution of a particular program from the Arachne suite reliably causes a kernel panic due to a NULL-pointer dereference in nfs4proclock().

Version-Release number of selected component (if applicable):

2.6.18-164.2.1.el5

How reproducible:

always on NFSv4 mounted directories

Steps to Reproduce: 1. wget http://www.genoscope.cns.fr/externe/redhat/XMLMissingField 2. Save a copy on an NFSv4-mounted directory 3. Execute it Actual results:

Kernel panic

Expected results:

No panic

Additional info:

Console output:

Unable to handle kernel NULL pointer dereference at 0000000000000030 RIP: [<ffffffff8837b210>] :nfs:nfs4proclock+0x21f/0x3ad PGD 1026eec067 PUD 1026f2f067 PMD 0 Oops: 0000 [1] SMP last sysfs file: /block/dm-1/range CPU 0 Modules linked in: ipmidevintf ipmisi ipmimsghandler nfs lockd fscache nfsacl sunrpc bonding ipv6 xfrmnalgo cryptoapi video hwmon backlight sbs i2cec button battery asusacpi acpimemhotplug ac joydev sg shpchp i2cnforce2 i2ccore forcedeth dmsnapshot dmzero dmmod satanv libata mptsas mptscsih mptbase scsitransportsas sdmod scsimod ext3 jbd uhcihcd ohcihcd ehcihcd Pid: 4070, comm: XMLMissingField Not tainted 2.6.18-164.2.1.el5 #1 RIP: 0010:[<ffffffff8837b210>] [<ffffffff8837b210>] :nfs:nfs4proclock+0x21f/0x3ad RSP: 0018:ffff810819bdbdd8 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: ffff810827c52088 RSI: 0000000000000006 RDI: ffff810819bdbe38 RBP: ffff81081a6dfdc0 R08: 0000000000000001 R09: ffff810819bdbd68 R10: ffff810819bdbd68 R11: 00000000000000d0 R12: ffff810827c52088 R13: 0000000000000000 R14: ffff810819a9b930 R15: 0000000000000006 FS: 00002b97d31fc7b0(0000) GS:ffffffff803c1000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000030 CR3: 00000010268cb000 CR4: 00000000000006e0 Process XMLMissingField (pid: 4070, threadinfo ffff810819bda000, task ffff810827d6a7e0) Stack: 00000000000003e8 0000000000000000 ffff810819a9b930 ffffffff88373e4f 0000000000000000 0000000000000000 0000000000000000 0000000019a9ba40 ffff810819bdbe18 ffff810819bdbe18 0000000000000000 0000000000000000 Call Trace: [<ffffffff88373e4f>] :nfs:nfssyncinodewait+0x116/0x1db [<ffffffff8836a226>] :nfs:dosetlk+0x55/0x8c [<ffffffff80039e72>] fcntlsetlk+0x11e/0x273 [<ffffffff800b66fa>] auditsyscallentry+0x180/0x1b3 [<ffffffff8002e5bb>] sysfcntl+0x269/0x2dc [<ffffffff8005d28d>] tracesys+0xd5/0xe0

Code: 49 8b 45 30 4c 89 e6 4c 89 ef 45 8a 74 24 58 48 8b 40 18 48 RIP [<ffffffff8837b210>] :nfs:nfs4proclock+0x21f/0x3ad RSP <ffff810819bdbdd8> CR2: 0000000000000030 <0>Kernel panic - not syncing: Fatal exception

Also see http://www.spinics.net/linux/lists/linux-nfs/msg03357.html

Other sources

The nfs4proclock function in fs/nfs/nfs4proc.c in the NFSv4 client in the Linux kernel before 2.6.31-rc4 allows remote NFS servers to cause a denial of service (NULL pointer dereference and panic) by sending a certain response containing incorrect file attributes, which trigger attempted use of an open file that lacks NFSv4 state.

MITRE

Affected Software

403 affected components
Linux Linux kernel=2.6.27.12
Linux Linux kernel=2.6.20.6
Linux Linux kernel=2.6.28-rc4
Linux Linux kernel=2.6.25.4
Linux Linux kernel=2.6.25.11
Linux Linux kernel=2.4.15
Linux Linux kernel=2.6.20.9
Linux Linux kernel=2.6.26-rc4
Linux Linux kernel=2.4.30-rc3
Linux Linux kernel=2.6.18-rc3
Linux Linux kernel=2.6.29-rc8-kk
Linux Linux kernel=2.6.11
Linux Linux kernel=2.6.25.9
Linux Linux kernel=2.6.23.4
Linux Linux kernel=2.6.22.15
Linux Linux kernel=2.6.16.16
Linux Linux kernel=2.6.18.7
Linux Linux kernel=2.6.17.12
Linux Linux kernel=2.6.16.39
Linux Linux kernel=2.6.27.3
Linux Linux kernel=2.6.29.3
Linux Linux kernel=2.6.21
Linux Linux kernel=2.6.16.9
Linux Linux kernel=2.4.35.2
Linux Linux kernel=2.6.17.9
Linux Linux kernel=2.6.11.2
Linux Linux kernel=2.6.27.1
Linux Linux kernel=2.6.15.3
Linux Linux kernel=2.4.11
Linux Linux kernel=2.6.11.10
Linux Linux kernel=2.4.34.6
Linux Linux kernel=2.6.24.7
Linux Linux kernel=2.4.37.2
Linux Linux kernel=2.6.1
Linux Linux kernel=2.6.16.43
Linux Linux kernel=2.6.16.6
Linux Linux kernel=2.4.32
Linux Linux kernel=2.6.16.8
Linux Linux kernel=2.6.20.13
Linux Linux kernel=2.6.22.4
Linux Linux kernel=2.6.14.7
Linux Linux kernel=2.6.18-rc2
Linux Linux kernel=2.6.13
Linux Linux kernel=2.6.17.2
Linux Linux kernel=2.6.13.3
Linux Linux kernel=2.6.23.13
Linux Linux kernel=2.6.11.8
Linux Linux kernel=2.6.24.2
Linux Linux kernel=2.4.36.6
Linux Linux kernel=2.6.18-rc5
Linux Linux kernel=2.4.26
Linux Linux kernel=2.6.26.5
Linux Linux kernel=2.6.16.34
Linux Linux kernel=2.6.25.20
Linux Linux kernel=2.4.37.4
Linux Linux kernel=2.6.18-rc4
Linux Linux kernel=2.6.22.21
Linux Linux kernel=2.6.25.12
Linux Linux kernel=2.6.23.7
Linux Linux kernel=2.6.30-rc2
Linux Linux kernel=2.6.17.8
Linux Linux kernel=2.6.14.4
Linux Linux kernel=2.6.14
Linux Linux kernel=2.6.25.5
Linux Linux kernel=2.6.17.4
Linux Linux kernel=2.6.16.18
Linux Linux kernel=2.6.17.14
Linux Linux kernel=2.6.10
Linux Linux kernel=2.6.23.8
Linux Linux kernel=2.6.25
Linux Linux kernel=2.4.12
Linux Linux kernel=2.6.27-rc6
Linux Linux kernel=2.6.16.45
Linux Linux kernel=2.6.22.12
Linux Linux kernel=2.6.25.18
Linux Linux kernel=2.6.14.3
Linux Linux kernel=2.6.29
Linux Linux kernel=2.6.24-rc3
Linux Linux kernel=2.6.18.3
Linux Linux kernel=2.6.25.8
Linux Linux kernel=2.6.16.37
Linux Linux kernel=2.6.30-rc3
Linux Linux kernel=2.4.13
Linux Linux kernel=2.6.11.6
Linux Linux kernel=2.6.16.48
Linux Linux kernel=2.6.11.11
Linux Linux kernel=2.6.16.13
Linux Linux kernel=2.6.27.10
Linux Linux kernel=2.6.27-rc5
Linux Linux kernel=2.6.21.6
Linux Linux kernel=2.6.26.6
Linux Linux kernel=2.4.36.2
Linux Linux kernel=2.6.22.1
Linux Linux kernel=2.6.16.4
Linux Linux kernel=2.6.23.16
Linux Linux kernel=2.6.17.3
Linux Linux kernel=2.6.27-rc3
Linux Linux kernel=2.6.24.1
Linux Linux kernel=2.4.17
Linux Linux kernel=2.6.20.5
Linux Linux kernel=2.6.25.6
Linux Linux kernel=2.6.22
Linux Linux kernel=2.6.28.4
Linux Linux kernel=2.6.26
Linux Linux kernel=2.6.16.15
Linux Linux kernel=2.6.15.6
Linux Linux kernel=2.6.24-rc5
Linux Linux kernel=2.6.26.3
Linux Linux kernel=2.6.20.16
Linux Linux kernel=2.6.15.1
Linux Linux kernel=2.6.11.5
Linux Linux kernel=2.6.28.2
Linux Linux kernel=2.6.25.9
Linux Linux kernel=2.6.19.3
Linux Linux kernel=2.4.21
Linux Linux kernel=2.6.27.4
Linux Linux kernel=2.6.27
Linux Linux kernel=2.6.19.4
Linux Linux kernel=2.6.25.13
Linux Linux kernel=2.6.28.5
Linux Linux kernel=2.6.19.1
Linux Linux kernel=2.6.18.4
Linux Linux kernel=2.6.16.1
Linux Linux kernel=2.6.18.1
Linux Linux kernel=2.6.20.21
Linux Linux kernel=2.6.31-rc1
Linux Linux kernel=2.4.23
Linux Linux kernel=2.4.35.1
Linux Linux kernel=2.6.23.1
Linux Linux kernel=2.6.2
Linux Linux kernel=2.6.14.5
Linux Linux kernel=2.6.13.2
Linux Linux kernel=2.6.25.7
Linux Linux kernel=2.6.17.5
Linux Linux kernel=2.4.36.1
Linux Linux kernel=2.6.24-rc4
Linux Linux kernel=2.6.18.5
Linux Linux kernel=2.6.21.1
Linux Linux kernel=2.6.16.32
Linux Linux kernel=2.6.13.5
Linux Linux kernel=2.6.16.57
Linux Linux kernel=2.6.16.49
Linux Linux kernel=2.6.25.3
Linux Linux kernel=2.6.17
Linux Linux kernel=2.6.24
Linux Linux kernel=2.4.7
Linux Linux kernel=2.6.19.2
Linux Linux kernel=2.6.26.2
Linux Linux kernel=2.6.21.4
Linux Linux kernel=2.6.16.11
Linux Linux kernel=2.4.25
Linux Linux kernel=2.6.20.17
Linux Linux kernel=2.6.16.14
Linux Linux kernel=2.6.20.12
Linux Linux kernel=2.6.16.25
Linux Linux kernel=2.6.16.21
Linux Linux kernel=2.6.16.33
Linux Linux kernel=2.6.16.28
Linux Linux kernel=2.6.17.10
Linux Linux kernel=2.6.21.5
Linux Linux kernel=2.4.34.3
Linux Linux kernel=2.6.25.15
Linux Linux kernel=2.6.14.1
Linux Linux kernel=2.6.28-rc5
Linux Linux kernel=2.4.24
Linux Linux kernel=2.4.9
Linux Linux kernel=2.6.23.15
Linux Linux kernel=2.6.16.23
Linux Linux kernel=2.6.12.5
Linux Linux kernel=2.6.15.7
Linux Linux kernel=2.6.20
Linux Linux kernel=2.6.23.10
Linux Linux kernel=2.6.22.7
Linux Linux kernel=2.6.27-rc7
Linux Linux kernel=2.6.16.3
Linux Linux kernel=2.4.29--rc2
Linux Linux kernel=2.6.27.8
Linux Linux kernel=2.6.24-rc1
Linux Linux kernel=2.6.28-rc1
Linux Linux kernel=2.4.36.4
Linux Linux kernel=2.6.26.1
Linux Linux kernel=2.6.25.19
Linux Linux kernel=2.6.20.20
Linux Linux kernel=2.6.16.36
Linux Linux kernel=2.6.14.6
Linux Linux kernel=2.6.12.1
Linux Linux kernel=2.6.27.9
Linux Linux kernel=2.6.11.9
Linux Linux kernel=2.4.30
Linux Linux kernel=2.6.16.46
Linux Linux kernel=2.4.28
Linux Linux kernel=2.6.17.1
Linux Linux kernel=2.4.35.3
Linux Linux kernel=2.6.20.8
Linux Linux kernel=2.6.20.15
Linux Linux kernel=2.6.22.18
Linux Linux kernel=2.6.0
Linux Linux kernel=2.6.25.8
Linux Linux kernel=2.6.16.54
Linux Linux kernel=2.4.36.3
Linux Linux kernel=2.6.13.4
Linux Linux kernel=2.6.22.20
Linux Linux kernel=2.6.23-rc2
Linux Linux kernel=2.6.20.18
Linux Linux kernel=2.6.23.9
Linux Linux kernel<=2.6.31
Linux Linux kernel=2.6.22.6
Linux Linux kernel=2.6.23.3
Linux Linux kernel=2.6.18.8
Linux Linux kernel=2.6.22.3
Linux Linux kernel=2.4.10
Linux Linux kernel=2.6.12.2
Linux Linux kernel=2.6.16.31
Linux Linux kernel=2.6.30-rc5
Linux Linux kernel=2.6.16.26
Linux Linux kernel=2.6.29-rc2
Linux Linux kernel=2.4.2
Linux Linux kernel=2.6.16.62
Linux Linux kernel=2.6.25.2
Linux Linux kernel=2.6.18.2
Linux Linux kernel=2.6.28.8
Linux Linux kernel=2.4.30-rc2
Linux Linux kernel=2.4.33
Linux Linux kernel=2.6.25.1
Linux Linux kernel=2.4.37.3
Linux Linux kernel=2.6.16.29
Linux Linux kernel=2.4.16
Linux Linux kernel=2.6.23-rc1
Linux Linux kernel=2.6.24.4
Linux Linux kernel=2.4.8
Linux Linux kernel=2.4.37
Linux Linux kernel=2.4.19
Linux Linux kernel=2.6.28-rc7
Linux Linux kernel=2.6.27-rc8
Linux Linux kernel=2.6.25.16
Linux Linux kernel=2.6.22.9
Linux Linux kernel=2.4.14
Linux Linux kernel=2.6.25.17
Linux Linux kernel=2.6.20.11
Linux Linux kernel=2.6.19
Linux Linux kernel=2.6.20.3
Linux Linux kernel=2.6.16
Linux Linux kernel=2.6.28.3
Linux Linux kernel=2.6.22.13
Linux Linux kernel=2.6.19.7
Linux Linux kernel=2.6.21.3
Linux Linux kernel=2.4.34.4
Linux Linux kernel=2.6.24.5
Linux Linux kernel=2.6.16.51
Linux Linux kernel=2.6.15.2
Linux Linux kernel=2.6.20.19
Linux Linux kernel=2.6.16.22
Linux Linux kernel=2.6.22.17
Linux Linux kernel=2.6.16.58
Linux Linux kernel=2.6.28-rc6
Linux Linux kernel=2.6.16.40
Linux Linux kernel=2.6.16.47
Linux Linux kernel=2.6.16.42
Linux Linux kernel=2.4.29--rc1
Linux Linux kernel=2.6.23.14
Linux Linux kernel=2.6.17.11
Linux Linux kernel=2.6.16.10
Linux Linux kernel=2.6.12.4
Linux Linux kernel=2.6.16.41
Linux Linux kernel=2.6.16.52
Linux Linux kernel=2.6.11.3
Linux Linux kernel=2.6.20.10
Linux Linux kernel=2.6.16.24
Linux Linux kernel=2.6.25.10
Linux Linux kernel=2.6.22.11
Linux Linux kernel=2.6.16.55
Linux Linux kernel=2.6.23
Linux Linux kernel=2.4.35.4
Linux Linux kernel=2.6.12.3
Linux Linux kernel=2.6.22.10
Linux Linux kernel=2.6.27-rc2
Linux Linux kernel=2.6.27-rc1
Linux Linux kernel=2.4.36.9
Linux Linux kernel=2.6.23.17
Linux Linux kernel=2.6.27.5
Linux Linux kernel=2.6.29-rc2_git7
Linux Linux kernel=2.6.23.2
Linux Linux kernel=2.6.25.1
Linux Linux kernel=2.6.25.4
Linux Linux kernel=2.6.28.9
Linux Linux kernel=2.4.22
Linux Linux kernel=2.4.5
Linux Linux kernel=2.4.36.7
Linux Linux kernel=2.6.25.3
Linux Linux kernel=2.6.21.7
Linux Linux kernel=2.6.16.30
Linux Linux kernel=2.6.21.2
Linux Linux kernel=2.6.15.4
Linux Linux kernel=2.6.27.7
Linux Linux kernel=2.6.16.59
Linux Linux kernel=2.4.37.5
Linux Linux kernel=2.6.16.38
Linux Linux kernel=2.6.24-rc2
Linux Linux kernel=2.6.16.17
Linux Linux kernel=2.6.26.8
Linux Linux kernel=2.6.20.2
Linux Linux kernel=2.6.22.22
Linux Linux kernel=2.4.18
Linux Linux kernel=2.6.28.6
Linux Linux kernel=2.6.16.12
Linux Linux kernel=2.6.29-rc1
Linux Linux kernel=2.6.16.27
Linux Linux kernel=2.6.16.53
Linux Linux kernel=2.6.28.7
Linux Linux kernel=2.6.18-rc7
Linux Linux kernel=2.6.25.5
Linux Linux kernel=2.6.12.6
Linux Linux kernel=2.6.17.7
Linux Linux kernel=2.6.20.1
Linux Linux kernel=2.4.3
Linux Linux kernel=2.6.11.7
Linux Linux kernel=2.6.27-rc4
Linux Linux kernel=2.6.16.2
Linux Linux kernel=2.6.24.6
Linux Linux kernel=2.6.28-rc3
Linux Linux kernel=2.6.18.6
Linux Linux kernel=2.6.22_rc7
Linux Linux kernel=2.6.15
Linux Linux kernel=2.4.37.1
Linux Linux kernel=2.6.16.44
Linux Linux kernel=2.4.36
Linux Linux kernel=2.6.23.12
Linux Linux kernel=2.6.16.35
Linux Linux kernel=2.4.1
Linux Linux kernel=2.6.19.6
Linux Linux kernel=2.4.4
Linux Linux kernel=2.6.16.50
Linux Linux kernel=2.6.25.11
Linux Linux kernel=2.6.18-rc6
Linux Linux kernel=2.6.23.5
Linux Linux kernel=2.6.22.8
Linux Linux kernel=2.6.14.2
Linux Linux kernel=2.6.16.61
Linux Linux kernel=2.6.31-rc2
Linux Linux kernel=2.6.19.5
Linux Linux kernel=2.6.18
Linux Linux kernel=2.4.36.5
Linux Linux kernel=2.6.20.4
Linux Linux kernel=2.6.17.6
Linux Linux kernel=2.4.34.5
Linux Linux kernel=2.6.23.6
Linux Linux kernel=2.6.27.2
Linux Linux kernel=2.6.16.7
Linux Linux kernel=2.4.27
Linux Linux kernel=2.6.17.13
Linux Linux kernel=2.4.6
Linux Linux kernel=2.6.16.60
Linux Linux kernel=2.6.22.2
Linux Linux kernel=2.6.27.11
Linux Linux kernel=2.6.16.56
Linux Linux kernel=2.4.31
Linux Linux kernel=2.6.28-rc2
Linux Linux kernel=2.2.27
Linux Linux kernel=2.6.22.19
Linux Linux kernel=2.6.24.3
Linux Linux kernel=2.6.22_rc1
Linux Linux kernel=2.6.27-rc9
Linux Linux kernel=2.6.30-rc6
Linux Linux kernel=2.6.25
Linux Linux kernel=2.6.20.14
Linux Linux kernel=2.6.25.2
Linux Linux kernel=2.6.22.5
Linux Linux kernel=2.4.37--rc1
Linux Linux kernel=2.6.25.7
Linux Linux kernel=2.4.29
Linux Linux kernel=2.6.25.14
Linux Linux kernel=2.6.20.7
Linux Linux kernel=2.6.28.1
Linux Linux kernel=2.6.30-rc1
Linux Linux kernel=2.6.16.5
Linux Linux kernel=2.6.30
Linux Linux kernel=2.6.11.4
Linux Linux kernel=2.4.35.5
Linux Linux kernel=2.6.26.4
Linux Linux kernel=2.6.25.12
Linux Linux kernel=2.6.16.19
Linux Linux kernel=2.4.20
Linux Linux kernel=2.6.27.6
Linux Linux kernel=2.6.26.7
Linux Linux kernel=2.6.29-git1
Linux Linux kernel=2.6.25.6
Linux Linux kernel=2.6.11.12
Linux Linux kernel=2.6.16.20
Linux Linux kernel=2.6.15.5
Linux Linux kernel=2.4.36.8
Linux Linux kernel=2.6.30-rc7-git6
Linux Linux kernel=2.6.22.16
Linux Linux kernel=2.6.11.1
Linux Linux kernel=2.6.18-rc1
Linux Linux kernel=2.6.13.1
Linux Linux kernel=2.6.23.11
Linux Linux kernel=2.6.28
Linux Linux kernel=2.6.29.5
Linux Linux kernel=2.6.22.14
Linux Linux kernel=2.6.25.10
Linux Linux kernel=2.6
Linux Linux kernel=2.4.37.6
Linux Linux kernel=2.6.12

Event History

Oct 15, 2009
Data Sourced
03:26 PM
DescriptionSeverityAffected Software
Nov 9, 2009
CVE Published
via MITRE·07:00 PM
Data Sourced
via MITRE·07:00 PM
Description

Frequently Asked Questions

1

What is the severity of CVE-2009-3726?

The severity of CVE-2009-3726 is classified as critical due to the potential for causing a kernel panic.

2

How do I fix CVE-2009-3726?

To fix CVE-2009-3726, you should update the Linux kernel to a version that is not affected by the vulnerability.

3

What versions of the Linux kernel are affected by CVE-2009-3726?

CVE-2009-3726 affects Linux kernel versions including 2.4.15, 2.6.18, and other specified versions up to 2.6.31.

4

What is the impact of CVE-2009-3726 on systems?

The impact of CVE-2009-3726 includes the potential for a null pointer dereference leading to a system crash or kernel panic.

5

Is there a workaround for CVE-2009-3726?

A potential workaround for CVE-2009-3726 is to avoid using the Arachne suite program that triggers the vulnerability until a patch is applied.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203