Bug 543153 (CVE-2009-4128)

Summary: CVE-2009-4128 grub2: Improper password checking
Product: [Other] Security Response Reporter: Jan Lieskovsky <jlieskov>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: dennis, lkundrak, vdanen
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=555195
Whiteboard:
Fixed In Version: grub2 1.98 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-17 19:59:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 543677    
Bug Blocks:    
Attachments:
Description Flags
Local copy of above mentioned bzr diff none

Description Jan Lieskovsky 2009-12-01 19:26:00 UTC
Common Vulnerabilities and Exposures assigned an identifier CVE-2009-4128 to
the following vulnerability:

GNU GRand Unified Bootloader (GRUB) 2 1.97 only compares the submitted
portion of a password with the actual password, which makes it easier
for physically proximate attackers to conduct brute force attacks and
bypass authentication by submitting a password whose length is 1.

References:
-----------
[1] http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-4128
[2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=555195
[3] http://www.securityfocus.com/bid/36968
[4] http://xforce.iss.net/xforce/xfdb/54210

Comment 1 Jan Lieskovsky 2009-12-01 19:34:54 UTC
While Debian bug report [2] speaks about following commit:

 * New upstream snapshot.
     - Fix security problem with password checking.  (Closes: #555195)

The only relevant auth.c commit I was able to find:
  
  bzr branch http://bzr.savannah.gnu.org/r/grub/trunk/grub/
  bzr log > /tmp/grub2_bzr.log

is this one:

<quote>

revno: 1805
committer: Vladimir 'phcoder' Serbinenko <phcoder>
branch nick: trunk
timestamp: Mon 2009-11-09 00:16:17 +0100
message:
  2009-11-09  Vladimir Serbinenko  <phcoder>

        * normal/auth.c (grub_auth_strcmp): Fix bug which resulted in function
        being insecure.

</quote>

The relevant patch can be retrieved as:

  bzr diff -r 1804..1805

Also, looks it will need to be tuned up a little bit, as the definition
of grub_auth_strcmp() between grub-1.97.1 and trunk has changed.

Comment 2 Jan Lieskovsky 2009-12-01 19:36:55 UTC
Created attachment 375176 [details]
Local copy of above mentioned bzr diff

Comment 3 Jan Lieskovsky 2009-12-01 19:40:57 UTC
Lubomir, Dennis, 

  could you please check above issue and confirm patch mentioned in 
comment c#2 is the proper one?

  Once this is confirmed, grub2 package updates should be prepared for
Fedora 12 and Fedora Rawhide.

Thanks, Jan.
--
Jan iankko Lieskovsky / Red Hat Security Response Team

Comment 5 Vincent Danen 2011-06-17 19:59:44 UTC
This is fixed in upstream 1.98, which we have in all supported versions of Fedora.