The cfg80211_wext_giwessid function in net/wireless/wext-compat.c in the Linux kernel before 2.6.36-rc3-next-20100831 does not properly initialize certain structure members, which allows local users to leverage an off-by-one error in the ioctl_standard_iw_point function in net/wireless/wext-core.c, and obtain potentially sensitive information from kernel heap memory, via vectors involving an SIOCGIWESSID ioctl call that specifies a large buffer size.
https://bugzilla.redhat.com/show_bug.cgi?id=628434
http://www.vupen.com/english/advisories/2011/0298
http://www.ubuntu.com/usn/USN-1000-1
http://www.securityfocus.com/bid/42885
http://www.redhat.com/support/errata/RHSA-2010-0842.html
http://www.redhat.com/support/errata/RHSA-2010-0771.html
http://www.openwall.com/lists/oss-security/2010/08/31/1
http://secunia.com/advisories/41245
http://lkml.org/lkml/2010/8/30/351
http://lkml.org/lkml/2010/8/30/146
http://lkml.org/lkml/2010/8/30/127
http://lkml.org/lkml/2010/8/27/413
http://lists.opensuse.org/opensuse-security-announce/2011-02/msg00000.html
http://lists.opensuse.org/opensuse-security-announce/2010-11/msg00000.html