[Bug 1748310] Re: [SRU][xenial]boot stalls looking for entropy in FIPS mode
Vineetha Hari Pai
1748310 at bugs.launchpad.net
Wed Feb 14 19:46:10 UTC 2018
** Description changed:
[IMPACT]
libgcrypt20 is not a FIPS certified library. On a machine running FIPS enabled kernel, the library by default goes into FIPS mode if /proc/sys/crypto/fips_enabled=1. FIPS mode is not a configurable compile option currently in the library. Hence FIPS code paths are always executed on a FIPS enabled machine. In FIPS mode, it runs self tests and integrity checks and it looks for quality entropy from /dev/random.
On encrypted installations, cryptsetup uses libgcrypt20. During boot on
an encrypted machine running in FIPS mode, cryptsetup invokes libgcrypt
and it stalls looking for quality entropy from /dev/random. This results
in significant delays during startup. The issue was reported by a FIPS
customer.
- This issue impacts xenial's version of libgcrypt. In later version of
- libgcrypt in Bionic, the entropy device is a global configurable option
- via /etc/gcrypt/random.conf config file. The config setting "only-
- urandom" can be used to set the entropy device to /dev/urandom globally
- in libgcrypt.
-
lsb_release -rd
Description: Ubuntu 16.04.3 LTS
Release: 16.04
version - 1.6.5-2ubuntu0.3
[FIX]
- Get entropy from /dev/urandom device in FIPS mode. This does not block.
+ Disable the two self tests that require entropy from /dev/random during boot in FIPS mode.
[TEST]
Tested on a VM installed with xenial desktop iso and one with xenial server iso. Enabled full disk encryption during install. Tested with and without FIPS. No delays were observed during boot after the fix patch was applied.
With FIPS enabled on encrypted install, without the patch fix, the boot
stalls before and after prompting for decryption password.
[REGRESSION POTENTIAL]
- The regression potential for this is small. This patch does not take away current functionality. It changes the entropy device in FIPS mode to /dev/urandom to get faster entropy.
+ The regression potential for this is small. The two self tests disabled does not impact any other functionality available in fips mode and non-fips mode of the library.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to libgcrypt20 in Ubuntu.
https://bugs.launchpad.net/bugs/1748310
Title:
[SRU][xenial]boot stalls looking for entropy in FIPS mode
Status in libgcrypt20 package in Ubuntu:
New
Status in libgcrypt20 source package in Xenial:
New
Bug description:
[IMPACT]
libgcrypt20 is not a FIPS certified library. On a machine running FIPS enabled kernel, the library by default goes into FIPS mode if /proc/sys/crypto/fips_enabled=1. FIPS mode is not a configurable compile option currently in the library. Hence FIPS code paths are always executed on a FIPS enabled machine. In FIPS mode, it runs self tests and integrity checks and it looks for quality entropy from /dev/random.
On encrypted installations, cryptsetup uses libgcrypt20. During boot
on an encrypted machine running in FIPS mode, cryptsetup invokes
libgcrypt and it stalls looking for quality entropy from /dev/random.
This results in significant delays during startup. The issue was
reported by a FIPS customer.
lsb_release -rd
Description: Ubuntu 16.04.3 LTS
Release: 16.04
version - 1.6.5-2ubuntu0.3
[FIX]
Disable the two self tests that require entropy from /dev/random during boot in FIPS mode.
[TEST]
Tested on a VM installed with xenial desktop iso and one with xenial server iso. Enabled full disk encryption during install. Tested with and without FIPS. No delays were observed during boot after the fix patch was applied.
With FIPS enabled on encrypted install, without the patch fix, the
boot stalls before and after prompting for decryption password.
[REGRESSION POTENTIAL]
The regression potential for this is small. The two self tests disabled does not impact any other functionality available in fips mode and non-fips mode of the library.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libgcrypt20/+bug/1748310/+subscriptions
More information about the foundations-bugs
mailing list