Security

grsecurity – add critical hardening to the Linux kernel

grsecurity is an innovative set of patches for the Linux kernel with an emphasis on strengthening the security of a computer system.

grsecurity allows the system administrator to, among other things, define a least privilege policy for the system, in which every process and user have only the lowest privileges needed to function. It is typically used when hosts need to permit remote connections from untrusted sources, such as ssh and web servers.

It prevents most forms of address space modification, confines programs via its Role-Based Access Control system, hardens syscalls, provides full-featured auditing, and implements many of the OpenBSD randomness features. Development of grsecurity is sponsored by a number of organisations including Prometheus Global.

Key Features

    • Written for performance, security and ease-of use.
    • Utilizes a multi-layered detection, prevention, and containment model.
    • Buffer overflow exploitation prevention.
    • An intelligent and robust Role-Based Access Control (RBAC) system that can generate least privilege policies for your entire system with no configuration. The RBAC system lets an administrator to restrict access to files, capabilities, resources, or sockets to all users, including root. This is similar to a Mandatory Access Control (MAC) model.
    • /tmp race vulnerability prevention.
    • Extensive auditing:
      • Option to specify single group to audit.
      • Exec logging with arguments.
      • Denied resource logging.
      • Chdir logging.
      • Mount and unmount logging.
      • IPC creation/removal logging.
      • Signal logging.
      • Failed fork logging.
      • Time change logging.
      • RWX map logging.
    • Trusted path execution.
    • Prevention of arbitrary code execution, regardless of the technique used (stack smashing, heap corruption, etc).
    • Prevention of arbitrary code execution in the kernel.
    • Randomization of the stack, library, and heap bases.
    • Kernel stack base randomization.
    • Protection against exploitable null-pointer dereference bugs in the kernel.
    • Reduction of the risk of sensitive information being leaked by arbitrary-read kernel bugs.
    • A restriction that allows a user to only view his/her processes.
    • Security alerts and audits that contain the IP address of the person causing the alert.
    • /proc restrictions that don’t leak information about process owners.
    • Symlink/hardlink restrictions to prevent /tmp races.
    • FIFO restrictions.
    • Dmesg restriction.
    • Enhanced implementation of Trusted Path Execution.
    • GID-based socket restrictions.
    • Nearly all options are sysctl-tunable, with a locking mechanism.
    • All alerts and audits support a feature that logs the IP address of the attacker with the log.
    • Stream connections across unix domain sockets carry the attacker’s IP address with them (on 2.4 only).
    • Detection of local connections: copies attacker’s IP address to the other task.
    • Automatic deterrence of exploit brute-forcing.
    • Low, Medium, High, and Custom security levels.
    • Tunable flood-time and burst for logging.
    • Change root (chroot) hardening:
      • No attaching shared memory outside of chroot.
      • No kill outside of chroot.
      • No ptrace outside of chroot (architecture independent).
      • No capget outside of chroot.
      • No setpgid outside of chroot.
      • No getpgid outside of chroot.
      • No getsid outside of chroot.
      • No sending of signals by fcntl outside of chroot.
      • No viewing of any process outside of chroot, even if /proc is mounted.
      • No mounting or remounting.
      • No pivot_root.
      • No double chroot.
      • No fchdir out of chroot.
      • Enforced chdir(“/”) upon chroot.
      • No (f)chmod +s.
      • No mknod.
      • No sysctl writes.
      • No raising of scheduler priority.
      • No connecting to abstract unix domain sockets outside of chroot.
      • Removal of harmful privileges via cap.

Website: grsecurity.net
Support:
Developer: Brad Spengler
License: GNU General Public License


Related Software

MAC/RBAC Tools
SELinuxSecurity enhancement to Linux
AppArmorLinux Security Module implementation of name-based access controls
RSBACPatch adding several mandatory access models to the Linux kernel
grsecurityInnovative set of patches for the Linux kernel
TOMOYO LinuxLightweight and easy-use Mandatory Access Control

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments