Vulnerability Discussion
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 be either hardware-enforced or software-enforced, with hardware providing the greater strength of mechanism.
Examples of attacks are buffer overflow attacks.
Check
Verify the NX (no-execution) bit flag is set on the system with the following commands:
$ sudo dmesg | grep NX
[ 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:
$ sudo less /proc/cpuinfo | grep -i flags
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
Enable the NX bit execute protection in the system BIOS.