Ubuntu fixes bugs that standard users can use to become root
Kevin Backhouse, a GitHub researcher, needed only a few commands to show that ordinary users would become administrators with full access to the system.
Ubuntu developers have fixed a number of vulnerabilities that have made it easier for standard users to obtain root privileges.
“This blog post is about a surprisingly straightforward way to increase privileges on Ubuntu,” wrote Kevin Backhouse, a GitHub researcher, in a post published last Tuesday. “With a few simple commands on the terminal and a few clicks of the mouse, a standard user can create an administrator account for himself.”
The first series of commands triggered a denial of service bug in a daemon called accounts service, which, as its name suggests, is used to manage user accounts on the computer.
To do this, Backhouse created a Symlink that linked a file named .pam_environment to / dev / zero, changed the regional language setting, and sent a SIGSTOP to the account service.
With the help of a few extra commands, Backhouse was able to set a timer that gave him enough time to log out of the account before the account service crashed. When done correctly, Ubuntu would restart and open a window that allowed the user to create a new account that, you guessed it, had root privileges.
Video shows the creation of Admin account
Backhouse said that Ubuntu uses a modified version of the account service that contains code that is not included in the original version. The extra code looks for the .pam_environment file in the home directory. When making the file a symbolic link to / dev / zero, .pam_environment is stuck in an infinite loop.
The second bug involved in the hack resided in the GNOME display manager, which among other things manages user sessions and the login screen. The display manager, which is usually abbreviated as gdm3, also triggers the initial configuration of the operating system when it detects that no user currently exists.
“How does gdm3 check how many users are on the system?” Backhouse asked rhetorically. “You probably already guessed it: asking the daemon accounts! So what happens if the account daemon doesn’t respond? The relevant code is here.”
The vulnerabilities could only be triggered when someone had physical access and a valid account on a vulnerable machine. It only worked on desktop versions of Ubuntu.
The solution
Open-source operating system maintainers fixed the bugs last week. Backhouse, who said he found the vulnerabilities by accident, has much more technical details in the blog post linked above.
More in NUpgrade