Title: tetris-bsd on Gentoo Linux checkscores() Function Local Overflow
Info
Disclosure
Mar 29, 2006
Discovery
Unknown
Dates
Exploit
Unknown
Solution
Unknown
Description
A local overflow exists in tetris-bsd of the port bsd-games on Gentoo Linux. The checkscores() function in scores.c fails to validate a player's name, obtained from the '/var/games/tetris-bsd.scores' file, before it is printed into a buffer using sprintf, resulting in a stack overflow. The same function also reads player level without validation, resulting in an integer overflow. With a specially crafted request, an attacker can execute arbitrary code as a user with the permissions of the games group, resulting in a loss of integrity.
Classification
Location:
Local Access Required
Attack Type:
Input Manipulation
Impact:
Loss of Integrity
Disclosure:
OSVDB Verified,
Vendor Verified
Solution
Upgrade to version 2.17-r1 or higher, as it has been reported to fix this vulnerability. It is also possible to correct the flaw by implementing the following workaround: do not add untrusted users to the "games" group.