ArchLinux: 201910-9: sudo: privilege escalation
Summary
A flaw was found in the way sudo prior to 1.8.28 implemented running commands with arbitrary user ID. If a sudoers entry is written to allow the attacker to run a command as any user except root, this flaw can be used by the attacker to bypass that restriction.
Resolution
Upgrade to 1.8.28-1.
# pacman -Syu "sudo>=1.8.28-1"
The problem has been fixed upstream in version 1.8.28.
References
https://security.archlinux.org/CVE-2019-14287
Workaround
This vulnerability only affects configurations of sudo that have a
runas user list that includes an exclusion of root. The most simple
example is:
someuser ALL=(ALL, !root) /usr/bin/somecommand
The exclusion is specified using an excalamation mark (!). In this
example, the "root" user is specified by name. The root user may also
be identified in other ways, such as by user id:
someuser ALL=(ALL, !#0) /usr/bin/somecommand
or by reference to a runas alias:
Runas_Alias MYGROUP = root, adminuser
someuser ALL=(ALL, !MYGROUP) /usr/bin/somecommand
To ensure your sudoers configuration is not affected by this
vulnerability, we recommend examining each sudoers entry that includes
the `!` character in the runas specification, to ensure that the root
user is not among the exclusions. These can be found in the
/etc/sudoers file or files under /etc/sudoers.d.