Mandrake Linux Security Advisory : gdm (MDKSA-2003:085)
Medium Nessus Plugin ID 14067
SynopsisThe remote Mandrake Linux host is missing one or more security updates.
DescriptionSeveral vulnerabilities were discovered in versions of gdm prior to 184.108.40.206. The first vulnerability is that any user can read any text file on the system due to code originally written to be run as the user logging in was in fact being run as the root user. This code is what allows the examination of the ~/.xsession-errors file. If a user makes a symlink from this file to any other file on the system during the session and ensures that the session lasts less than ten seconds, the user can read the file provided it was readable as a text file.
Another two vulnerabilities were found in the XDMCP code that could be exploited to crash the main gdm daemon which would inhibit starting any new sessions (although the current session would be unaffected).
The first problem here is due to the indirect query structure being used right after being freed due to a missing 'continue' statement in a loop; this happens if a choice of server expired and the client tried to connect.
The second XDMCP problem is that when authorization data is being checked as a string, the length is not checked first. If the data is less than 18 bytes long, the daemon may wander off the end of the string a few bytes in the strncmp which could cause a SEGV.
These updated packages bring gdm to version 220.127.116.11 which is not vulnerable to any of these problems. Also note that XDMCP support is disabled by default in gdm.
SolutionUpdate the affected gdm and / or gdm-Xnest packages.