UCF STIG Viewer Logo

The Ubuntu operating system must implement non-executable data to protect its memory from unauthorized code execution.


Finding ID Version Rule ID IA Controls Severity
V-219341 UBTU-18-010513 SV-219341r853400_rule Medium
Some adversaries launch attacks with the intent of executing code in non-executable 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.
Canonical Ubuntu 18.04 LTS Security Technical Implementation Guide 2022-12-06


Check Text ( C-21066r305351_chk )
Verify the NX (no-execution) bit flag is set on the system.

Check that the no-execution bit flag is set with the following commands:

# dmesg | grep -i "execute disable"
[ 0.000000] NX (Execute Disable) protection: active

If "dmesg" does not show "NX (Execute Disable) protection: active", check the cpuinfo settings with the following command:

# grep flags /proc/cpuinfo | grep -w nx | sort -u
flags : fpu vme de pse tsc ms nx rdtscp lm constant_tsc

If "flags" does not contain the "nx" flag, this is a finding.
Fix Text (F-21065r305352_fix)
Configure the Ubuntu operating system to enable NX.

If "nx" is not showing up in /proc/cpuinfo and the system's BIOS setup configuration permits toggling the No Execution bit, then set it to "enable".