Re: signing a filesystem

Andrew G. Morgan (morgan@parc.power.net)
Tue, 31 Dec 1996 06:53:53 -0800 (PST)


Olaf Kirch wrote:
>
> To: linux-kernel@vger.rutgers.edu
> Subject: Re: signing a filesystem
> X-Newsreader: TIN [UNIX 1.3 950515BETA PL0]
>
> Andrew Morgan wrote:
> : I've been wondering about the following scheme for making a filesystem
> : tamper-resistant. Would it be possible to digitally sign each inode?
>
> This begs the question whom you want to keep from tampering with
> the file system. If, as you suggest, a keyed hash using a single key
> would be employed, the implementation's security would hinge on you
> being able to keep users from gaining root privs. This doesn't very
> much improve on the current situation.

My primary purpose was to address the following question: when you reboot
your system, how can you be sure that its filesystem is in the state it was
when you last shutdown? ie. How can you be sure that someone hasn't booted
DOS and used some disk editing software to modify the data on the disk?

[this comes under the "system integrety" and "trusted recovery" parts of the
Orange Book

http://parc.power.net/morgan/Orange-Linux/index.html
]

Tripwire does this sort of thing, but is not so simple to maintain as this
on-the-fly approach.

Gaining root access on a running system remains the problem that it always
has been. But even CFS is vulnerable to root, who can simply replace the
cfs-binaries with versions that log everyone's cfs-keys to a printer as they
are entered.

This sort or vulnerability would require a more severe overhauling of the
kernel. That may indeed be warranted, but is not likely to happen "over
night". Digitally signing inodes is something that seems modular, it does
not suffer from "encryption-problems" either so it could be safely included
in the kernel source.

> If you really want to write such a thing, you should definitely ask
> Stephen Tweedie. I am sure he has thought this through a lot more
> thoroughly than I have.

Yes.

Best wishes

Andrew

-- 
        Linux-PAM: http://parc.power.net/morgan/Linux-PAM/index.html
          libpwdb: http://parc.power.net/morgan/libpwdb/index.html
       [ For those that prefer FTP  ---  ftp://ftp.lalug.org/morgan ]