New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 744789 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug-Security



Sign in to add a comment

CVE-2017-7526 gcrypt RSA side-channel

Project Member Reported by keescook@google.com, Jul 17 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.66 Safari/537.36

Steps to reproduce the problem:
gcrypt version 1.6.3 is in Chrome OS. gcrypt 1.7.8 fixes CVE-2017-7529.

What is the expected behavior?

What went wrong?
Need newer gcrypt

Did this work before? N/A 

Chrome version: 60.0.3112.66  Channel: beta
OS Version: 
Flash Version:
 
Cc: vapier@chromium.org josh.tri...@intel.com mnissler@chromium.org
Labels: -Restrict-View-SecurityTeam Security_Impact-Stable Security_Severity-Low
This issue is public, so removing restrict label. Set severity to low, since it requires access to perform the side-channel work. Please adjust if I've missed some path that makes this worse.
Cc: jorgelo@chromium.org
1.7.8 is in gentoo, so we can probably just upgrade to address this.
Labels: allpublic
Seems potentially feasible to run the side-channel attack from NaCl.

(Whether any part of Chrome OS actually does the relevant operations using gcrypt rather than some other library is another question.)

Comment 5 by vapier@chromium.org, Jul 17 2017

we disable libgcrypt in most packages.  a cursory check suggests crda (for verification?) & samba (for kerberos auth) are the only ones currently using it.
Cc: tnagel@chromium.org zentaro@chromium.org
Owner: ljusten@chromium.org
Status: Assigned (was: Unconfirmed)
I've taken a quick look: libgcrypt-1.7.8 depends on >=libgpg-error-1.13. The latter fails to build (even the most recent 1.27-r1 from gentoo) due to its inability to deal with our x86_64-cros-linux-gnu CHOST.

Furthermore, the libgcrypt configure script checks for the libgpg-error version installed in the system, but fails to do so correctly for cross compilation (i.e. invokes the SDK's /usr/bin/gpg-error-config).

Finally, there seems to be some issue with the libgcrypt build not selecting the correct asm implementations for crypto algorithms, leading to link errors.

After hacking around all these, I got a successful x86_64 build at least. Here's the hacked up version of the ebuilds for reference: https://chromium-review.googlesource.com/575134

There's definitely work to be done to fix up the packages to build properly.

I'm going to throw this over the wall to the chromad team who owns samba on Chrome OS. Folks, can you sort out the upgrade soonish?
Project Member

Comment 7 by sheriffbot@chromium.org, Jul 18 2017

Labels: Hotlist-Google
Sure, I'll take a look after M61 branch.
Components: OS>Packages
Labels: M-62
Status: Started (was: Assigned)
Re - libgpg-error-1.27-r1 not compiling due to cros CHOST:
I've modified Mattias' hack to make it compile on amd64, x86 and arm. mkheader.c has a hardcoded map for CHOST where we could add cros, but that seems ugly since having everything in the ebuild is easier to read. I'm not sure what the right solution is here.

Re - libgcrypt using /usr/bin/gpg-error-config instead of /build/${BOARD}/usr/bin/gpg-error-config:
I've added
  export GPG_ERROR_CONFIG="${EROOT}/usr/bin/gpg-error-config"
and verified that does the right thing.

Re - libgcrypt not selecting the correct asm implementations:
I've played around with the ebuild and made it compile on all 3 platforms without disabling asm. Not sure what exactly is going on, though. I believe mpi/config.links picks the asm based on platform.


Owner: vapier@chromium.org
Hey Mike, mind to take a look at the CL? Is this an acceptable solution?

https://chromium-review.googlesource.com/575134
Cc: -tnagel@chromium.org

Comment 14 Deleted

Comment 15 by xz...@google.com, Dec 21 2017

@ljusten, any plans to submit the CL mentioned in #C12?

Comment 16 Deleted

Owner: ljusten@chromium.org
ljusten@, are you still intending to submit the CL to fix this? 
Owner: vapier@chromium.org
Mike, could you take a look at the CL, please? Looks like I've linked the wrong one in #12.

https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/594728
Project Member

Comment 19 by sheriffbot@chromium.org, Mar 7 2018

Labels: -M-64 M-65
Project Member

Comment 20 by sheriffbot@chromium.org, Apr 19 2018

Labels: -M-65 M-66
Project Member

Comment 21 by sheriffbot@chromium.org, May 30 2018

Labels: -M-66 M-67
Project Member

Comment 22 by sheriffbot@chromium.org, Jul 25

Labels: -M-67 Target-68 M-68
Project Member

Comment 23 by sheriffbot@chromium.org, Sep 5

Labels: -M-68 M-69 Target-69
Project Member

Comment 24 by sheriffbot@chromium.org, Oct 17

Labels: -M-69 Target-70 M-70
Labels: CROSSecurity
Cc: keta...@chromium.org
Project Member

Comment 27 by sheriffbot@chromium.org, Dec 5

Labels: -M-70 Target-71 M-71

Comment 28 by ketakid@google.com, Jan 16 (6 days ago)

vapier@ can you please comment on #18?

Sign in to add a comment