[vox-tech] Secure kernel panic
Bill Broadley
bill at broadley.org
Fri Dec 17 11:28:04 PST 2010
On 12/17/2010 09:39 AM, Nicole Carlson wrote:
> Hello, beautiful people! How I have missed you.
>
> A question for your enormous brains. Suppose that the kernel panics.
> Further suppose that I do NOT want it to dump core.
I don't believe it's the default. Are you worried about it dumping core
without you asking? Or are you worried that someone with physical access to
the machine could force it to dump core?
> Can I set up the
> system to do this? Can I set up the system to perform any arbitrary
> commands when the kernel panics? If so, how?
I believe it's a compile time option for the kernel side, and user space
tools. The trick is that in a panic you need to trust as little of the kernel
as possible to avoid trashing a filesystem. So you'll need diskdump (write to
disk), netdump (dump to net), and/or kdump. Source for these tools will give
you an idea of what is necessary to handle a kernel dump. Because it's unsafe
to trust the filesystem code typically if you are writing to disk you either
give it a device, a partition, or a swap partition.
If you don't have dmesg on boot mentioning the dump utility you are using
(kdump, netdump, or diskdump) or a /proc/diskdump (or related) then you likely
don't have it enabled. Which might be what you want.
> The motivation behind all this: I'm trying to figure out how to get
> Linux on satellites.
Cool.
> One of the barriers is paperwork: the gub'mint
> says "You must do X, Y, and Z". One of those requirements is that all
> system startups, shutdowns, and aborts keep the system in a secure
> state. Secure aborts is the one I'm having trouble proving--I think
> that dumping core is a problem, because it preserves possibly
> sensitive information (internal state at the time of panic) in a place
> that isn't supposed to hold it (namely, wherever the core is dumped,
> which appears to be in the swap space.)
Swap is one of the choices, but the dumps are optional.
> If I'm wildly off-base, please advise.
I'm a bit fuzzy on the threat. Not like a normal user can read blocks from
the swap device. Not like linux doesn't zero fill pages you ask the OS for.
You are trying to protect against root user? From someone injecting errors
into the kernel and then stealing the disk drive? Or just satisfying some
arbitrary piece of bureaucrat security policy? Disabling kernel dumps seems
rather straight forward and depending on your OS/Distro might even be disabled
by default.
Swap has similar problems BTW. You could encrypt a filesystem or device if
you want to protect from someone stealing your machine and then reading the
filesystem/block device.
More information about the vox-tech
mailing list