ACPI (Advanced Configuration and Power Interface) defines platform-independent interfaces for hardware discovery, configuration, power management and monitoring, and these tables contain lots of useful information for low-level programmers such as myself. Here is a short shell script which I clobbered together a few days ago to list out the ACPI tables on a system together with a short description of each table where possible. #!/bin/bash # # Author: Finnbarr P. Murphy # Date: January 2015 # Purpose: List ACPI tables # License: BSD # TMP1=$(mktemp -u -p /var/tmp/ acpiXXXXXX) TMP2=$(mktemp -u -p /var/tmp/ acpiXXXXXX) TMP3=$(mktemp -u -p /var/tmp/ acpiXXXXXX) cat
Address Space Layout Randomization (ASLR) was first implemented in Linux in 2001 and formally included in Linux kernel 2.6.12 in 2005. Microsoft followed soon afterwards and implemented ASLR in Vista in 2007. ASLR randomizes process memory address space in order to prevent an attacker from finding the addresses of functions or ROP (Return Oriented Programming) gadgets required to successfully complete an exploit. The effectiveness of ASLR is limited by the amount of available entropy which varies from platform to platform depending on the implementation. For ASLR to be useful, all segments of a processes memory space must be randomized. If
This post demonstrates a small UEFI shell utility which list out the ACPI tables in your firmware.