Correctly detect and use FIPS mode
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cryptsetup (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Jammy |
Fix Released
|
Undecided
|
Unassigned | ||
Lunar |
Won't Fix
|
Undecided
|
Unassigned | ||
Mantic |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[ Impact ]
* Crytpsetup has some fips awareness
* Ubuntu provides fips certified kernels & openssl
* When vanilla cryptsetup observes fips kernel & openssl it fails to operate, at all
* It appears the fips awareness in cryptsetup package is obsolete and out of date - i.e. if none of the checks were present, it would actually behaved in a fips compliant way, but it currently instead fails.
[ Test Plan ]
* cherry-pick updated patches to cryptsetup to ensure it has correct modern fips mode detection
* observe that cryptsetup can create new encrypted volume successfully / unchanged behaviour on vanilla ubuntu
* observe that cryptsetup can create new encrypted volume successfully on fips ubuntu (jammy fips-preview is already available internally and to select external customers, also will be on esm.ubuntu.
[ Where problems could occur ]
* The change is confined to cryptsetup backend usage (typically openssl) and is related to detecting kernel & openssl modes. There is no other functional changes. But for example strace calls will look slightly different - as possibly observable with strace it will try to open /proc/sys/
* Note the pbkdf automatic benchmark is changed slightly, and thus will produce slightly different results for newly created volumes. This should not affect interoperability at the target resource usage / caps remain the same.
[ Other Info ]
* Detected during FIPS certification of Jammy
[ Release Target Rationale ]
* Fix in Mantic to ensure that next LTS is capable of doing cryptsetup in fips mode, when backend (openssl) is in fips mode
* Fix in Lunar is not needed, as Canonical does not provide FIPS certification for Lunar releases. And it doesn't matter if cryptsetup is or isn't FIPS capable in Lunar.
* Fix in Jammy is desired, to ensure that Jammy FIPS certified systems can automatically create cryptsetup enabled devices
Related branches
- Mate Kukri: Pending requested
- git-ubuntu import: Pending requested
-
Diff: 2740 lines (+2092/-27)14 files modifieddebian/changelog (+1962/-0)
debian/control (+7/-5)
debian/functions (+9/-1)
debian/initramfs/cryptroot-unlock (+12/-6)
debian/initramfs/hooks/cryptroot (+5/-3)
debian/rules (+3/-0)
debian/tests/control (+3/-2)
debian/tests/cryptroot-lvm.d/mock (+7/-2)
debian/tests/cryptroot-nested.d/config (+7/-0)
debian/tests/cryptroot-sysvinit.d/config (+7/-2)
debian/tests/initramfs-hook (+16/-2)
debian/tests/utils/cryptroot-common (+27/-3)
debian/tests/utils/mkinitramfs (+2/-0)
debian/tests/utils/mock.pm (+25/-1)
- Lukas Märdian (community): Approve
- Simon Quigley: Pending requested
-
Diff: 2709 lines (+2061/-27)14 files modifieddebian/changelog (+1931/-0)
debian/control (+7/-5)
debian/functions (+9/-1)
debian/initramfs/cryptroot-unlock (+12/-6)
debian/initramfs/hooks/cryptroot (+5/-3)
debian/rules (+3/-0)
debian/tests/control (+3/-2)
debian/tests/cryptroot-lvm.d/mock (+7/-2)
debian/tests/cryptroot-nested.d/config (+7/-0)
debian/tests/cryptroot-sysvinit.d/config (+7/-2)
debian/tests/initramfs-hook (+16/-2)
debian/tests/utils/cryptroot-common (+27/-3)
debian/tests/utils/mkinitramfs (+2/-0)
debian/tests/utils/mock.pm (+25/-1)
- Simon Quigley (community): Needs Fixing
-
Diff: 119 lines (+55/-9) (has conflicts)5 files modifieddebian/changelog (+47/-0)
debian/initramfs/hooks/cryptroot (+2/-2)
debian/tests/cryptroot-legacy.d/mock (+1/-1)
debian/tests/utils/init (+1/-1)
debian/tests/utils/mkinitramfs (+4/-5)
- Simon Quigley (community): Approve
-
Diff: 2671 lines (+2030/-27)14 files modifieddebian/changelog (+1900/-0)
debian/control (+7/-5)
debian/functions (+9/-1)
debian/initramfs/cryptroot-unlock (+12/-6)
debian/initramfs/hooks/cryptroot (+5/-3)
debian/rules (+3/-0)
debian/tests/control (+3/-2)
debian/tests/cryptroot-lvm.d/mock (+7/-2)
debian/tests/cryptroot-nested.d/config (+7/-0)
debian/tests/cryptroot-sysvinit.d/config (+7/-2)
debian/tests/initramfs-hook (+16/-2)
debian/tests/utils/cryptroot-common (+27/-3)
debian/tests/utils/mkinitramfs (+2/-0)
debian/tests/utils/mock.pm (+25/-1)
Changed in cryptsetup (Ubuntu Lunar): | |
status: | New → Won't Fix |
description: | updated |
description: | updated |
description: | updated |
tags: |
added: verification-done verification-done-jammy removed: verification-needed verification-needed-jammy |
This bug was fixed in the package cryptsetup - 2:2.6.1-4ubuntu2
---------------
cryptsetup (2:2.6.1-4ubuntu2) mantic; urgency=medium
* Compile-in support for a FIPS mode. LP: #2032659
-- Dimitri John Ledkov <email address hidden> Tue, 22 Aug 2023 16:06:53 +0100