-
Notifications
You must be signed in to change notification settings - Fork 708
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A new rule system_boot_in_fips_mode
#12671
Merged
Merged
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
33a664a
Add new rule system_boot_in_fips_mode
Mab879 552c966
Add grub2_enable_fips_mode to RHEL 10
Mab879 ba9ef1b
Fix FIPS verison in system_boot_in_fips_mode description
Mab879 8d2768a
Add RHEL 10 CCI to grub2_enable_fips_mode
Mab879 407bd4d
Updated system_booted_in_fips_mode based on reviewer feedback
Mab879 a5a3d90
Remove is_fips_mode_enabled from RHEL 10
Mab879 e4afdf5
Adjust system_booted_in_fips_mode prose based on new OVAL check
Mab879 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 change: 1 addition & 0 deletions
1
linux_os/guide/system/software/integrity/fips/system_booted_in_fips_mode/oval/shared.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{{{ oval_file_contents("/proc/sys/crypto/fips_enabled", rule_id + "_fips_enabled", "1") }}} |
59 changes: 59 additions & 0 deletions
59
linux_os/guide/system/software/integrity/fips/system_booted_in_fips_mode/rule.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
documentation_complete: true | ||
|
||
title: 'Verify that the system was booted with fips=1' | ||
|
||
description: |- | ||
On a system where FIPS 140 mode is enabled, the system must be booted with the | ||
The file <tt>/proc/sys/crypto/fips_enabled</tt> must have the contents of <tt>1</tt> | ||
|
||
To verify the system has been booted in FIPS mode, run the following command: | ||
<pre> | ||
# cat /proc/sys/crypto/fips_enabled | ||
1 | ||
</pre> | ||
|
||
rationale: |- | ||
Use of weak or untested encryption algorithms undermines the purposes of utilizing encryption to | ||
protect data. The operating system must implement cryptographic modules adhering to the higher | ||
standards approved by the federal government since this provides assurance they have been tested | ||
and validated. | ||
|
||
severity: high | ||
|
||
identifiers: | ||
cce@rhel10: CCE-86247-4 | ||
|
||
references: | ||
disa: CCI-002450 | ||
nist: SC-12(2),SC-12(3),SC-13 | ||
srg: SRG-OS-000396-GPOS-00176,SRG-OS-000478-GPOS-00223 | ||
|
||
ocil_clause: 'the system is not booted in fips mode' | ||
|
||
ocil: |- | ||
To verify that the system is booted with fips mode by running the following command: | ||
$ cat /proc/sys/crypto/fips_enabled | ||
|
||
The output must be <tt>1</tt>. | ||
|
||
warnings: | ||
- general: |- | ||
To configure the OS to run in FIPS 140 mode, the kernel parameter "fips=1" needs to be added during its installation. | ||
Enabling FIPS mode on a preexisting system involves a number of modifications to it and therefore is not supported. | ||
- regulatory: |- | ||
System Crypto Modules must be provided by a vendor that undergoes | ||
FIPS-140 certifications. | ||
FIPS-140 is applicable to all Federal agencies that use | ||
cryptographic-based security systems to protect sensitive information | ||
in computer and telecommunication systems (including voice systems) as | ||
defined in Section 5131 of the Information Technology Management Reform | ||
Act of 1996, Public Law 104-106. This standard shall be used in | ||
designing and implementing cryptographic modules that Federal | ||
departments and agencies operate or are operated for them under | ||
contract. See <b>{{{ weblink(link="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-3.pdf") }}}</b> | ||
To meet this, the system has to have cryptographic software provided by | ||
a vendor that has undergone this certification. This means providing | ||
documentation, test results, design information, and independent third | ||
party review by an accredited lab. While open source software is | ||
capable of meeting this, it does not meet FIPS-140 unless the vendor | ||
submits to this process. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The mere existence of
/proc/sys/crypto/fips_enabled
is not sufficient. All kernels that support enabling FIPS mode will expose this file in user space. It must contain1
for FIPS mode to be actually enabled.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have removed this rule from RHEL 10.