Symlink following protection is disabled
What this means
fs.protected_symlinks is 0 — a process can follow a symlink in a world-writable sticky directory (like /tmp) even when it doesn't own the link, a long-standing local-privilege-escalation and file-clobbering primitive.
How to fix it
Set fs.protected_symlinks=1 via /etc/sysctl.d/ and run sysctl --system.
Check it yourself
Run a scan and look for BLWK-KERNEL-011 in the results:
sh
bulwark scanInstalled the standalone CLI package instead of the app? The command is bulwarkctl.
How Bulwark decides
Bulwark reads sysctl_kernel and reports this check when:
text
protected_symlinks == 0If a value can't be read, Bulwark reports the check as undetermined rather than passing it. View the rule source.
References
- CIS Benchmark 1.5.8
- MITRE ATT&CK T1068
Related checks
- Cron entry runs a downloader piped to a shell ·
BLWK-ACCT-001 - Password maximum age is excessively long ·
BLWK-ACCT-002 - Password minimum age is zero ·
BLWK-ACCT-003 - Password hashing rounds are not explicitly configured ·
BLWK-ACCT-004 - Default UMASK is not explicitly configured ·
BLWK-ACCT-005 - A sensitive system file is world-writable ·
BLWK-FS-001