Unreal Tournament 2003/2004: Buffer overflow in 'secure' queries — GLSA 200407-14 Game servers based on the Unreal engine are vulnerable to remote code execution through malformed 'secure' queries. Affected packages Package games-fps/ut2003 on all architectures Affected versions <= 2225-r2 Unaffected versions >= 2225-r3 Package games-server/ut2003-ded on all architectures Affected versions <= 2225-r1 Unaffected versions >= 2225-r2 Package games-fps/ut2004 on all architectures Affected versions < 3236 Unaffected versions >= 3236 Package games-fps/ut2004-demo on all architectures Affected versions <= 3120-r3 Unaffected versions >= 3120-r4 Background Unreal Tournament 2003 and 2004 are popular first-person-shooter games. They are both based on the Unreal engine, and can be used in a game server / client setup. Description The Unreal-based game servers support a specific type of query called 'secure'. Part of the Gamespy protocol, this query is used to ask if the game server is able to calculate an exact response using a provided string. Luigi Auriemma found that sending a long 'secure' query triggers a buffer overflow in the game server. Impact By sending a malicious UDP-based 'secure' query, an attacker could execute arbitrary code on the game server. Workaround Users can avoid this vulnerability by not using Unreal Tournament to host games as a server. All users running a server should upgrade to the latest versions. Resolution All Unreal Tournament users should upgrade to the latest available versions: # emerge sync # emerge -pv ">=games-fps/ut2003-2225-r3" # emerge ">=games-fps/ut2003-2225-r3" # emerge -pv ">=games-server/ut2003-ded-2225-r2" # emerge ">=games-server/ut2003-ded-2225-r2" # emerge -pv ">=games-fps/ut2004-3236" # emerge ">=games-fps/ut2004-3236" # emerge -pv ">=games-fps/ut2004-demo-3120-r4" # emerge ">=games-fps/ut2004-demo-3120-r4" References Luigi Auriemma advisory CAN-2004-0608