Configure kernel to zero out memory before allocation in zIPL
An XCCDF Rule
Description
To ensure that the kernel is configured to zero out memory before
allocation, check that all boot entries in
/boot/loader/entries/*.conf
have init_on_alloc=1
included in its options.
To ensure that new kernels and boot entries continue to zero out memory
before allocation, add init_on_alloc=1
to /etc/kernel/cmdline
.
Rationale
When the kernel configuration option init_on_alloc
is enabled,
all page allocator and slab allocator memory will be zeroed when allocated,
eliminating many kinds of "uninitialized heap memory" flaws, effectively
preventing data leaks.
- ID
- xccdf_org.ssgproject.content_rule_zipl_init_on_alloc_argument
- Severity
- Medium
- References
- Updated
Remediation - Ansible
- name: Ensure BLS boot entries options contain init_on_alloc=1
block:
- name: 'Check how many boot entries exist '
find:
paths: /boot/loader/entries/
Remediation - Shell Script
# Remediation is applicable only in certain platforms
if grep -q s390x /proc/sys/kernel/osrelease && { [ ! -f /.dockerenv ] && [ ! -f /run/.containerenv ]; }; then
# Correct BLS option using grubby, which is a thin wrapper around BLS operations
grubby --update-kernel=ALL --args="init_on_alloc=1"