Check: ANIX-00-001660
Anduril NixOS STIG:
ANIX-00-001660
(in version v1 r1)
Title
NixOS must implement nonexecutable data to protect its memory from unauthorized code execution. (Cat II impact)
Discussion
Some adversaries launch attacks with the intent of executing code in nonexecutable regions of memory or in memory locations that are prohibited. Security safeguards employed to protect memory include, for example, data execution prevention and address space layout randomization. Data execution prevention safeguards can either be hardware-enforced or software-enforced with hardware providing the greater strength of mechanism. Examples of attacks are buffer overflow attacks. Satisfies: SRG-OS-000433-GPOS-00192, SRG-OS-000132-GPOS-00067
Check Content
Verify NixOS prevents internal kernel addresses from being leaked with the following command: $ sudo sysctl kernel.kptr_restrict kernel.kptr_restrict = 1 If "kernel.kptr_restrict" does not have a value of "1" or is missing, this is a finding.
Fix Text
Configure NixOS to prevent internal kernel addresses from being leaked by editing /etc/nixos/configuration.nix to add the following: boot.kernel.sysctl = { "kernel.kptr_restrict" = 1; }; Rebuild the system with the following command: $ sudo nixos-rebuild switch
Additional Identifiers
Rule ID: SV-268160r1039368_rule
Vulnerability ID: V-268160
Group Title: SRG-OS-000433-GPOS-00192
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-001082 |
Separate user functionality, including user interface services, from system management functionality. |
CCI-002824 |
Implement organization-defined controls to protect the system memory from unauthorized code execution. |