android_kernel_oneplus_msm8998/security/selinux
Paul Moore d6233121d5 selinux: ensure the context is NUL terminated in security_context_to_sid_core()
commit ef28df55ac27e1e5cd122e19fa311d886d47a756 upstream.

The syzbot/syzkaller automated tests found a problem in
security_context_to_sid_core() during early boot (before we load the
SELinux policy) where we could potentially feed context strings without
NUL terminators into the strcmp() function.

We already guard against this during normal operation (after the SELinux
policy has been loaded) by making a copy of the context strings and
explicitly adding a NUL terminator to the end.  The patch extends this
protection to the early boot case (no loaded policy) by moving the context
copy earlier in security_context_to_sid_core().

Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Reviewed-By: William Roberts <william.c.roberts@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-02-25 11:03:36 +01:00
..
include selinux: introduce security_context_str_to_sid 2015-10-21 17:44:25 -04:00
ss selinux: ensure the context is NUL terminated in security_context_to_sid_core() 2018-02-25 11:03:36 +01:00
.gitignore SELinux: add .gitignore files for dynamic classes 2009-10-24 09:42:27 +08:00
avc.c Merge branch 'next' of git://git.infradead.org/users/pcmoore/selinux into next 2015-08-15 13:29:57 +10:00
exports.c selinux: sparse fix: include selinux.h in exports.c 2011-09-09 16:56:32 -07:00
hooks.c selinux: general protection fault in sock_has_perm 2018-02-03 17:04:30 +01:00
Kconfig selinux: change CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE default 2015-10-21 17:44:25 -04:00
Makefile selinux: change to new flag variable 2010-10-21 10:12:40 +11:00
netif.c Merge commit 'v3.17' into next 2014-11-19 21:32:12 +11:00
netlabel.c net: add skb_to_full_sk() helper and use it in selinux_netlbl_skbuff_setsid() 2015-11-08 20:56:38 -05:00
netlink.c selinux: replace obsolete NLMSG_* with type safe nlmsg_* 2013-03-28 14:25:49 -04:00
netnode.c selinux: remove unused variabled in the netport, netnode, and netif caches 2014-08-07 20:55:30 -04:00
netport.c selinux: remove unused variabled in the netport, netnode, and netif caches 2014-08-07 20:55:30 -04:00
nlmsgtab.c selinux/nlmsg: add a build time check for rtnl/xfrm cmds 2015-04-13 13:09:44 -04:00
selinuxfs.c selinux: introduce security_context_str_to_sid 2015-10-21 17:44:25 -04:00
xfrm.c netfilter: Remove spurios included of netfilter.h 2015-06-18 21:14:32 +02:00