On Fri, 2019-08-02 at 09:42 +0800, Jia Zhang wrote: > > On 2019/8/2 上午6:57, Mimi Zohar wrote: > > Hi Jia, > > > > On Thu, 2019-08-01 at 09:23 +0800, Jia Zhang wrote: > >> Similar to .ima, the cert imported to .ima_blacklist is able to be > >> authenticated by a secondary CA cert. > >> > >> Signed-off-by: Jia Zhang <zhang.jia@xxxxxxxxxxxxxxxxx> > > > > The IMA blacklist, which is defined as experimental for a reason, was > > upstreamed prior to the system blacklist. Any reason you're not using > > the system blacklist? Before making this sort of change, I'd like > > some input from others. > > In our trusted cloud service, the IMA private key is controlled by > tenant for some reason. Some unprofessional operations made by tenant > may lead to the leakage of IMA private key. So the need for importing > the blacklisted is necessary,without system/kexec reboot, on the > contrary, the system blacklist needs a kernel rebuild and system/kexec > reboot, without runtime and fine-grained control. > > The secondary CA cert has a similar story, but it is not controlled by > tenant. It is always imported during system/kexec boot to serve > importing IMA trusted cert and IMA blacklisted cert. Before expanding the set of keys permitted to blacklist a key on the IMA keyring, there needs to be a way of differentiating how keys may be used. The same certificate should not be allowed to be loaded onto both the IMA and the IMA blacklist keyrings for obvious reasons. The normal way of blacklisting a key is by using CRLs. I'm not recommending adding full CRL support in the kernel, but using the key usage extension to differentiate who may sign a certificate being black listed. Please refer to section "4.2.1.3. Key Usage", in particular the cRLSign bit. thanks, Mimi