7.8
CWE
476
Advisory Published
CVE Published
Updated

CVE-2011-1771: Null Pointer Dereference

First published: Mon May 09 2011(Updated: )

BUG: unable to handle kernel NULL pointer dereference at 0000000000000030 IP: [&lt;ffffffffa04a3cc1&gt;] cifsFileInfo_put+0x21/0x220 [cifs] PGD 15434067 PUD 375bd067 PMD 0 Oops: 0000 [#1] SMP last sysfs file: /sys/devices/virtual/block/dm-1/dm/name CPU 2 Modules linked in: cifs nfs nls_utf8 lockd nfs_acl rpcsec_gss_krb5 auth_rpcgss des_generic sunrpc cachefiles fscache(T) ipv6 dm_mirror dm_region_hash dm_log virtio_balloon virtio_net sg i2c_piix4 i2c_core ext4 mbcache jbd2 virtio_blk sr_mod cdrom virtio_pci virtio_ring virtio pata_acpi ata_generic ata_piix dm_mod [last unloaded: cifs] Modules linked in: cifs nfs nls_utf8 lockd nfs_acl rpcsec_gss_krb5 auth_rpcgss des_generic sunrpc cachefiles fscache(T) ipv6 dm_mirror dm_region_hash dm_log virtio_balloon virtio_net sg i2c_piix4 i2c_core ext4 mbcache jbd2 virtio_blk sr_mod cdrom virtio_pci virtio_ring virtio pata_acpi ata_generic ata_piix dm_mod [last unloaded: cifs] Pid: 11418, comm: opentest Tainted: G ---------------- T 2.6.32-144.el6.x86_64.debug #1 KVM RIP: 0010:[&lt;ffffffffa04a3cc1&gt;] [&lt;ffffffffa04a3cc1&gt;] cifsFileInfo_put+0x21/0x220 [cifs] RSP: 0018:ffff8800376f9b98 EFLAGS: 00010282 RAX: ffffffffa04a3f00 RBX: ffff88003b24e1b8 RCX: 0000000000000003 RDX: ffffffffa04bb760 RSI: ffff88003b24e1b8 RDI: 0000000000000000 RBP: ffff8800376f9bc8 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000100006 R12: 0000000000000008 R13: ffff88002ee7a0d0 R14: ffff88000737b700 R15: ffff88003e7fa578 FS: 00007f4603a80700(0000) GS:ffff880004400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000030 CR3: 000000003d399000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process opentest (pid: 11418, threadinfo ffff8800376f8000, task ffff8800154e85c0) Stack: 0000000000000000 ffff88003b24e1b8 0000000000000008 ffff88002ee7a0d0 &lt;0&gt; ffff88000737b700 ffff88003e7fa578 ffff8800376f9be8 ffffffffa04a3f1d &lt;0&gt; 0000000000000008 ffff88003b24e1b8 ffff8800376f9c38 ffffffff81190ab8 Call Trace: [&lt;ffffffffa04a3f1d&gt;] cifs_close+0x1d/0x40 [cifs] [&lt;ffffffff81190ab8&gt;] __fput+0x108/0x280 [&lt;ffffffff81189ce0&gt;] ? generic_file_open+0x0/0x30 [&lt;ffffffff81190c55&gt;] fput+0x25/0x30 [&lt;ffffffff8118c40c&gt;] __dentry_open+0x28c/0x3e0 [&lt;ffffffff8118c639&gt;] lookup_instantiate_filp+0x69/0x90 [&lt;ffffffffa04a2182&gt;] cifs_lookup+0x3f2/0x5c0 [cifs] [&lt;ffffffff8119e802&gt;] __lookup_hash+0x102/0x160 [&lt;ffffffff8122f752&gt;] ? selinux_inode_permission+0x72/0xb0 [&lt;ffffffff8119e93a&gt;] lookup_hash+0x3a/0x50 [&lt;ffffffff8119f36a&gt;] do_filp_open+0x2ca/0xdc0 [&lt;ffffffff810d71c2&gt;] ? utrace_stop+0x122/0x1d0 [&lt;ffffffff811ac63b&gt;] ? alloc_fd+0x3b/0x160 [&lt;ffffffff8150eccb&gt;] ? _spin_unlock+0x2b/0x40 [&lt;ffffffff811ac6ab&gt;] ? alloc_fd+0xab/0x160 [&lt;ffffffff8118c039&gt;] do_sys_open+0x69/0x140 [&lt;ffffffff8118c150&gt;] sys_open+0x20/0x30 [&lt;ffffffff8100b3a3&gt;] tracesys+0xd9/0xde This was reported upstream recently. <a href="http://marc.info/?l=linux-cifs&amp;m=130204730006155&amp;w=2">http://marc.info/?l=linux-cifs&amp;m=130204730006155&amp;w=2</a> ...the problem is that CIFS doesn't do O_DIRECT at all, so when you try to open a file with it you get back -EINVAL. CIFS can also do open on lookup in some cases. In that case, fput will be called on the filp, which has not yet had its private_data set. This is a regression introduced with the patchset to clean up filehandle management in CIFS. The fix is simple and is already upstream -- simply check for a NULL filp-&gt;private_data before trying to dereference it.

Credit: secalert@redhat.com secalert@redhat.com

Affected SoftwareAffected VersionHow to fix
Linux Linux kernel<2.6.39
debian/linux-2.6

Never miss a vulnerability like this again

Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.

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.
© 2024 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203