Bug 698996 - (CVE-2011-1745, CVE-2011-2022) CVE-2011-1745 CVE-2011-2022 kernel: agp: insufficient pg_start parameter checking in AGPIOC_BIND and AGPIOC_UNBIND ioctls
CVE-2011-1745 CVE-2011-2022 kernel: agp: insufficient pg_start parameter chec...
Status: CLOSED ERRATA
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
unspecified
All Linux
high Severity high
: ---
: ---
Assigned To: Red Hat Product Security
public=20110414,reported=20110421,sou...
: Security
Depends On: 699005 699006 699007 699307 699308
Blocks:
  Show dependency treegraph
 
Reported: 2011-04-22 11:16 EDT by Petr Matousek
Modified: 2015-07-31 02:40 EDT (History)
15 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-07-29 08:42:42 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Petr Matousek 2011-04-22 11:16:48 EDT
pg_start is copied from userspace on AGPIOC_BIND and AGPIOC_UNBIND ioctl
cmds of agp_ioctl() and passed to agpioc_bind_wrap().  As said in the
comment, (pg_start + mem->page_count) may wrap in case of AGPIOC_BIND,
and it is not checked at all in case of AGPIOC_UNBIND.  As a result, user
with sufficient privileges (usually "video" group) may generate either
local DoS or privilege escalation.

Reference and patch:
https://lkml.org/lkml/2011/4/14/293
Comment 4 Eugene Teo (Security Response) 2011-04-24 22:46:50 EDT
Upstream commit:
http://git.kernel.org/linus/194b3da873fd334ef183806db751473512af29ce
Comment 5 Eugene Teo (Security Response) 2011-04-24 22:48:41 EDT
Statement:

This issue affects the versions of Linux kernel as shipped with Red Hat
Enterprise 4, 5, 6, and Red Hat Enterprise MRG. This has been addressed in Red Hat Enterprise Linux 5, 6, and Red Hat Enterprise MRG via https://rhn.redhat.com/errata/RHSA-2011-0927.html, https://rhn.redhat.com/errata/RHSA-2011-1350.html, and https://rhn.redhat.com/errata/RHSA-2011-1253.html. Red Hat Enterprise Linux 4 is now in Production 3 of the maintenance life-cycle, https://access.redhat.com/support/policy/updates/errata/, therefore the fix for this issue is not currently planned to be included in the future updates.
Comment 6 Vincent Danen 2011-05-09 15:59:52 EDT
MITRE has assigned an additional CVE name to this issue (CVE-2011-2022), the following is the description of both flaws.  Note that because the same git commit corrects both flaws, I'm not filing a second bug (as it is unlikely we would fix one and not the other).

Common Vulnerabilities and Exposures assigned an identifier CVE-2011-1745 to
the following vulnerability:

Name: CVE-2011-1745
URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-1745
Assigned: 20110419
Reference: https://lkml.org/lkml/2011/4/14/293
Reference: http://openwall.com/lists/oss-security/2011/04/21/4
Reference: http://openwall.com/lists/oss-security/2011/04/22/7
Reference: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=194b3da873fd334ef183806db751473512af29ce
Reference: http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.5
Reference: https://bugzilla.redhat.com/show_bug.cgi?id=698996

Integer overflow in the agp_generic_insert_memory function in
drivers/char/agp/generic.c in the Linux kernel before 2.6.38.5 allows
local users to gain privileges or cause a denial of service (system
crash) via a crafted AGPIOC_BIND agp_ioctl ioctl call.




Common Vulnerabilities and Exposures assigned an identifier CVE-2011-2022 to
the following vulnerability:

Name: CVE-2011-2022
URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-2022
Assigned: 20110509
Reference: https://lkml.org/lkml/2011/4/14/293
Reference: http://openwall.com/lists/oss-security/2011/04/21/4
Reference: http://openwall.com/lists/oss-security/2011/04/22/7
Reference: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=194b3da873fd334ef183806db751473512af29ce
Reference: http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.5
Reference: https://bugzilla.redhat.com/show_bug.cgi?id=698996

The agp_generic_remove_memory function in drivers/char/agp/generic.c
in the Linux kernel before 2.6.38.5 does not validate a certain start
parameter, which allows local users to gain privileges or cause a
denial of service (system crash) via a crafted AGPIOC_UNBIND agp_ioctl
ioctl call, a different vulnerability than CVE-2011-1745.
Comment 7 errata-xmlrpc 2011-07-15 02:08:45 EDT
This issue has been addressed in following products:

  Red Hat Enterprise Linux 5

Via RHSA-2011:0927 https://rhn.redhat.com/errata/RHSA-2011-0927.html
Comment 8 errata-xmlrpc 2011-09-12 15:44:20 EDT
This issue has been addressed in following products:

  MRG for RHEL-6 v.2

Via RHSA-2011:1253 https://rhn.redhat.com/errata/RHSA-2011-1253.html
Comment 9 Vincent Danen 2011-10-05 16:02:19 EDT
Acknowledgements:

Red Hat would like to thank Vasiliy Kulikov of Openwall for reporting this issue.
Comment 10 errata-xmlrpc 2011-10-05 17:47:24 EDT
This issue has been addressed in following products:

  Red Hat Enterprise Linux 6

Via RHSA-2011:1350 https://rhn.redhat.com/errata/RHSA-2011-1350.html

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