coredump: clarify "unsafe core_pattern" warning
PATCH 1/1 coredump: clarify "unsafe core_pattern" warning
I was amused to find "unsafe core_pattern" warning having these lines in /etc/sysctl.conf:
fs.suid_dumpable=2 kernel.core_pattern=/core/core-%e-%p-%E kernel.core_uses_pid=0
Turns out kernel is formally right. Default core_pattern is just "core", which doesn't qualify for secure path while setting suid.dumpable.
Hint admins about solution, clarify sysctl names, delete unnecessary '\' characters (string literals are concatenated regardless) and reformat for easier grepping.
---
kernel/sysctl.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
commit ba93b14a4f61e4563134abab5d81bb8b53c60df9
Author: Alexey Dobriyan <[email protected]> Date: Sat Oct 29 18:13:57 2016 +0300
kernel.core_dump
kernel/sysctl.c +5 -3
@@ -2403,9 +2403,11 @@ static void validate_coredump_safety(void)#ifdef CONFIG_COREDUMP if (suid_dumpable ==SUID_DUMP_ROOT && core_pattern[0 ] !='/' && core_pattern[0 ] !='|' ) { -printk (KERN_WARNING "Unsafe core_pattern used with " \ -"suid_dumpable=2. Pipe handler or fully qualified " \ -"core dump path required.\n" ); +printk (KERN_WARNING +"Unsafe core_pattern used with fs.suid_dumpable=2.\n" +"Pipe handler or fully qualified core dump path required.\n" +"Set kernel.core_pattern before fs.suid_dumpable.\n" + ); }#endif }
Quoted 7 lines · Alexey Dobriyan
I was amused to find "unsafe
core_pattern" warning having these lines in/etc/sysctl.conf:fs.suid_dumpable=2 kernel.core_pattern=/core/core-%e-%p-%E kernel.core_uses_pid=0
Quoted 8 lines
Turns out kernel is formally right. Default
core_patternis just "core", which doesn't qualify for secure path while setting suid.dumpable.Hint admins about solution, clarify sysctl names, delete unnecessary '\' characters (string literals are concatenated regardless) and reformat for easier grepping.
Signed-off-by Alexey Dobriyan <[email protected]>
Ah, yes, order of operations mattered. :) I like the rephrasing, thanks!
-Kees
Quoted 28 lines
---
kernel/sysctl.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)commit
ba93b14a4f61e4563134abab5d81bb8b53c60df9Author: Alexey Dobriyan <[email protected]> Date: Sat Oct 29 18:13:57 2016 +0300kernel.core_dump
kernel/sysctl.c +5
-3@@ -2403,9 +2403,11 @@ static void validate_coredump_safety(void)#ifdef CONFIG_COREDUMP if (suid_dumpable ==SUID_DUMP_ROOT && core_pattern[0 ] !='/' && core_pattern[0 ] !='|' ) { -printk (KERN_WARNING "Unsafe core_pattern used with " \ -"suid_dumpable=2. Pipe handler or fully qualified " \ -"core dump path required.\n" ); +printk (KERN_WARNING +"Unsafe core_pattern used with fs.suid_dumpable=2.\n" +"Pipe handler or fully qualified core dump path required.\n" +"Set kernel.core_pattern before fs.suid_dumpable.\n" + ); }#endif }
Signature · 2 lines
Kees Cook Nexus Security