Skip to content

Guide to the Secure Configuration of Debian 10

Rules, Groups, and Values defined within the XCCDF Benchmark

  • Disable merging of slabs with similar size

    The kernel may merge similar slabs together to reduce overhead and increase cache hotness of objects. Disabling merging of slabs keeps the slabs separate and reduces the risk of kernel heap overflo...
    Rule Medium Severity
  • Configure Speculative Store Bypass Mitigation

    Certain CPUs are vulnerable to an exploit against a common wide industry wide performance optimization known as Speculative Store Bypass (SSB). In such cases, recent stores to the same memory loca...
    Rule Medium Severity
  • Enforce Spectre v2 mitigation

    Spectre V2 is an indirect branch poisoning attack that can lead to data leakage. An exploit for Spectre V2 tricks the indirect branch predictor into executing code from a future indirect branch cho...
    Rule High Severity
  • Disable compatibility with brk()

    Enabling compatiliby with <code>brk()</code> allows legacy binaries to run (i.e. those linked against libc5). But this compatibility comes at the cost of not being able to randomize the heap placem...
    Rule Medium Severity
  • Ensure debug-shell service is not enabled during boot

    systemd's <code>debug-shell</code> service is intended to diagnose systemd related boot issues with various <code>systemctl</code> commands. Once enabled and following a system reboot, the root she...
    Rule Medium Severity
  • Non-UEFI GRUB2 bootloader configuration

    Non-UEFI GRUB2 bootloader configuration
    Group
  • UEFI GRUB2 bootloader configuration

    UEFI GRUB2 bootloader configuration
    Group
  • zIPL bootloader configuration

    During the boot process, the bootloader is responsible for starting the execution of the kernel and passing options to it. The default Debian 10 boot loader for s390x systems is called zIPL.
    Group
  • Protect Random-Number Entropy Pool

    The I/O operations of the Linux kernel block layer due to their inherently unpredictable execution times have been traditionally considered as a reliable source to contribute to random-number entro...
    Group
  • Ensure Solid State Drives Do Not Contribute To Random-Number Entropy Pool

    For each solid-state drive on the system, run:
     # echo 0 > /sys/block/DRIVE/queue/add_random
    Rule Medium Severity
  • Kernel Configuration

    Contains rules that check the kernel configuration that was used to build it.
    Group
  • Hash function for kernel module signing

    The hash function to use when signing modules during kernel build process.
    Value
  • Key and certificate for kernel module signing

    The private key and certificate to use when signing modules during kernel build process. On systems where the OpenSSL ENGINE_pkcs11 is functional — a PKCS#11 URI as defined by RFC7512 In the latter...
    Value
  • Kernel panic timeout

    The time, in seconds, to wait until a reboot occurs. If the value is 0 the system never reboots. If the value is less than 0 the system reboots immediately.
    Value
  • Do not allow ACPI methods to be inserted/replaced at run time

    This debug facility allows ACPI AML methods to be inserted and/or replaced without rebooting the system. This configuration is available from kernel 3.0. The configuration that was used to build k...
    Rule Low Severity
  • Disable kernel support for MISC binaries

    Enabling <code>CONFIG_BINFMT_MISC</code> makes it possible to plug wrapper-driven binary formats into the kernel. This is specially useful for programs that need an interpreter to run like Java, Py...
    Rule Medium Severity
  • Enable support for BUG()

    Disabling this option eliminates support for BUG and WARN, reducing the size of your kernel image and potentially quietly ignoring numerous fatal conditions. You should only consider disabling this...
    Rule Medium Severity
  • net.ipv6.conf.all.accept_redirects

    Toggle ICMP Redirect Acceptance
    Value
  • net.ipv4.conf.default.rp_filter

    Enables source route verification
    Value
  • Disable the 32-bit vDSO

    Certain buggy versions of glibc (2.3.3) will crash if they are presented with a 32-bit vDSO that is not mapped at the address indicated in its segment table. Setting <code>CONFIG_COMPAT_VDSO</code>...
    Rule Low Severity

The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.

Capacity
Modules