OL 9 must implement address space layout randomization (ASLR) to protect its memory from unauthorized code execution.

STIG ID: OL09-00-002423  |  SRG: SRG-OS-000433-GPOS-00193 |  Severity: medium (CAT II)  |  CCI: CCI-002824 |  Vulnerability Id: V-271761

Vulnerability Discussion

ASLR makes it more difficult for an attacker to predict the location of attack code they have introduced into a process's address space during an attempt at exploitation. Additionally, ASLR makes it more difficult for an attacker to know the location of existing code to repurpose it using return-oriented programming (ROP) techniques.

Check

Verify that OL 9 is implementing ASLR with the following command:

$ sysctl kernel.randomize_va_space
kernel.randomize_va_space = 2

Check that the configuration files are present to enable this kernel parameter:

$ sudo grep -rs kernel.randomize_va_space /run/sysctl.d/*.conf /usr/local/lib/sysctl.d/*.conf /usr/lib/sysctl.d/*.conf /lib/sysctl.d/*.conf /etc/sysctl.conf /etc/sysctl.d/*.conf
/etc/sysctl.d/99-kernel_randomize_va_space.conf:kernel.randomize_va_space = 2

If "kernel.randomize_va_space" is not set to "2", or is missing, this is a finding.

If conflicting results are returned, this is a finding.

Fix

Configure OL 9 to implement ASLR to protect its memory from unauthorized code execution.

Add the configuration item with the following command:

$ echo 'kernel.randomize_va_space = 2' | sudo tee /etc/sysctl.d/99-kernel_randomize_va_space.conf

Remove any configurations that conflict with the above from the following locations:

/run/sysctl.d/*.conf
/usr/local/lib/sysctl.d/*.conf
/usr/lib/sysctl.d/*.conf
/lib/sysctl.d/*.conf
/etc/sysctl.conf
/etc/sysctl.d/*.conf

Reload settings from all system configuration files with the following command:

$ sudo sysctl --system