On Tue, May 12, 2020 at 8:44 AM Paolo Abeni <pab...@redhat.com> wrote: > > The cipso and calipso code can set the MLS_CAT attribute on > successful parsing, even if the corresponding catmap has > not been allocated, as per current configuration and external > input. > > Later, selinux code tries to access the catmap if the MLS_CAT flag > is present via netlbl_catmap_getlong(). That may cause null ptr > dereference while processing incoming network traffic. > > Address the issue setting the MLS_CAT flag only if the catmap is > really allocated. Additionally let netlbl_catmap_getlong() cope > with NULL catmap. > > Reported-by: Matthew Sheets <matthew.she...@gd-ms.com> > Fixes: 4b8feff251da ("netlabel: fix the horribly broken catmap functions") > Fixes: ceba1832b1b2 ("calipso: Set the calipso socket label to match the > secattr.") > Signed-off-by: Paolo Abeni <pab...@redhat.com> > --- > net/ipv4/cipso_ipv4.c | 6 ++++-- > net/ipv6/calipso.c | 3 ++- > net/netlabel/netlabel_kapi.c | 6 ++++++ > 3 files changed, 12 insertions(+), 3 deletions(-)
Seems reasonable to me, thanks Paolo. Acked-by: Paul Moore <p...@paul-moore.com> -- paul moore www.paul-moore.com