Re: [oss-security] IMA gadgets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Mimi,

JFYI, there was a small discussion in oss-security [1] about IMA. Yes,
it does not touch EVM in case of SUID. But the fact that filenames are
never tracked in IMA/EVM does look like a major problem indeed.

Thanks,

[1] https://www.openwall.com/lists/oss-security/2021/11/30/1

On Tue, Nov 30, 2021 at 09:16:20PM +0100, Florian Weimer wrote:
> There's an idea floating around that you can take an established Linux
> distribution, create IMA signatures for all installed files in its
> packages, and use those signatures to lock out bad content at run time
> using IMA verification in the kernel.
> 
> I do not think this works in the sense that it can detect serve for more
> than just detecting file corruption (as an unsigned hash would).  First
> of all, there is the issue that IMA signatures (at least as they exist
> in RPM today) are content-only and do not cover file permissions or file
> capabilities.  This means an attacker can turn any binary into a SUID
> binary.  The signatures do not cover these file attributes, so they will
> still verify.
> 
> The signatures do not cover the file names, either.  Therefore, an
> attacker can take a file and put it into a difference place in a file
> system.  For example, there's a debug-shell.service file that, when
> dropped into the right directory, will open a root shell on /dev/tty9.
> This may seem a bit silly, but I think the intent behind the IMA
> signatures is to combine them with remote attestation, and make
> (remote) interaction with devices in places without physical security
> trustworthy.
> 
> Another example is /usr/share/perl5/vendor_perl/App/cpanminus.pod from a
> typical distribution of the App::cpanminus package.  If this is dropped
> into /etc/sysconfig/run-parts, after a while, the system will download
> untrusted code over the network and execute it, as far as I can see.
> (CPAN does not seem to be authenticated.)  The file does nothing when
> parsed by perl on the command line, but bash will try to run it and
> invoke a cpan shell command that triggers the download and code
> execution.  I don't think this kind of file type confusion is addressed
> by the proposed trusted_for system call, either.
> 
> I'm sure there are many gadgets like this.  These two are just the first
> examples I found.
> 
> So in short, I don't really see how IMA signatures shipped as part of
> all distribution packages, on all files, can provide value beyond that
> of the hash that the already contain.
> 
> Thanks,
> Florian



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux Kernel]     [Linux Kernel Hardening]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux