Bug 2223719 - Temporary values used for the FIPS integrity test should be zeroized after use
Summary: Temporary values used for the FIPS integrity test should be zeroized after use
Keywords:
Status: ON_QA
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: kernel
Version: 9.2
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 9.3
Assignee: Vladis Dronov
QA Contact: Ondrej Moriš
URL:
Whiteboard:
Depends On:
Blocks: 2227768
TreeView+ depends on / blocked
 
Reported: 2023-07-18 15:41 UTC by Clemens Lang
Modified: 2023-08-13 19:58 UTC (History)
3 users (show)

Fixed In Version: kernel-5.14.0-353.el9
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 2227768 (view as bug list)
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Proposed patch (1.77 KB, application/mbox)
2023-07-18 15:50 UTC, Clemens Lang
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Gitlab redhat/centos-stream/src/kernel centos-stream-9 merge_requests 2866 0 None opened KEYS: use kfree_sensitive with key 2023-07-29 13:55:30 UTC
Red Hat Issue Tracker FIPS-174 0 None None None 2023-07-18 15:41:07 UTC
Red Hat Issue Tracker RHELPLAN-162631 0 None None None 2023-07-18 15:41:45 UTC

Description Clemens Lang 2023-07-18 15:41:07 UTC
Description of problem:
The kernel uses temporary values for its integrity test in FIPS mode. It is a FIPS 140-3 requirement to zeroize these after use, but they are currently not.

To fix this, replace all instances of kfree(key) in crypto/asymmetric_keys/public_key.c with kfree_sensitive(key).


Version-Release number of selected component (if applicable):
kernel-5.14.0-340.el9

How reproducible:
Manunally inspect crypto/asymmetric_keys/public_key.c

Actual results:
kfree(key) is used

Expected results:
kfree_sensitive(key) is used

Additional info:
Please also backport this change to 9.2.z. No further backport is required at this time.

Comment 1 Clemens Lang 2023-07-18 15:50:20 UTC
Created attachment 1976367 [details]
Proposed patch

Comment 2 Herbert Xu 2023-07-18 20:16:55 UTC
Clemens, could you please submit this patch upstream? It looks good enough as it stands.  Thanks!

Comment 3 Clemens Lang 2023-07-20 15:14:34 UTC
It'll be a while before I can get to doing that, since I've never sent a patch upstream for the kernel, and I don't have a lot of spare cycles at the moment.

Comment 4 Vladis Dronov 2023-07-21 14:57:30 UTC
(In reply to Herbert Xu from comment #2)
> Clemens, could you please submit this patch upstream? It looks good enough as it stands.  Thanks!

I'll handle this (upstream submission and a RHEL work), thanks Clemens for the patch, thanks Herbert for a review.

Comment 5 Herbert Xu 2023-07-22 01:29:05 UTC
Thanks Vladis.  As you noted, it seems that this patch is already queued up upstream so we simply need to wait:

https://patchwork.kernel.org/project/linux-crypto/patch/20230717125509.105015-1-mngyadam@amazon.com/


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