[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Infostring crash and shutdown in the Quake 3 engine
- To: bugtraq@xxxxxxxxxxxxxxxxx, bugs@xxxxxxxxxxxxxxxxxxx, news@xxxxxxxxxxxxxx,   full-disclosure@xxxxxxxxxxxxxxxx, vuln@xxxxxxxxxxx, red@xxxxxxxxx
- Subject: Infostring crash and shutdown in the Quake 3 engine
- From: Luigi Auriemma <aluigi@xxxxxxxxxxxxx>
- Date: Sat, 12 Feb 2005 18:29:51 +0000
#######################################################################
                             Luigi Auriemma
Application:  Quake 3 engine
              http://www.idsoftware.com
Games:        - Call of Duty                                     <= 1.5
              - Call of Duty: United Offensive                  <= 1.51
              - Heavy Metal: F.A.K.K.2                          <= 1.02
              - Quake III Arena                                 <= 1.32
              - Return to Castle Wolfenstein                    <= 1.41
              - Soldier of Fortune II: Double Helix             <= 1.03
              - Star Trek Voyager: Elite Force                  <= 1.20
              - Star Trek: Elite Force II                       <= 1.10
              - Star Wars Jedi Knight II: Jedi Outcast          <= 1.04
              - Star Wars Jedi Knight: Jedi Academy            <= 1.011
              - Wolfenstein: Enemy Territory             <= 1.02 / 2.56
              ...possibly others
Platforms:    Windows, Linux and Mac
Bug:          crash or shutdown caused by incorrect handling of big
              queries
Exploitation: remote, versus server
Date:         12 Feb 2005
Author:       Luigi Auriemma
              e-mail: aluigi@xxxxxxxxxxxxx
              web:    http://aluigi.altervista.org
#######################################################################
1) Introduction
2) Bug
3) The Code
4) Fix
#######################################################################
===============
1) Introduction
===============
The Quake 3 engine is the well known game engine developed by ID
Software (http://www.idsoftware.com) and is used by many games.
Some months ago I reported similar problems in three games based on
this engine: Medal of Honor, Call of Duty and Soldier of Fortune II.
Except for Medal of Honor that is affected by a specific buffer
overflow, the other two games can be "probably" included in this
advisory too but I'm not totally sure.
#######################################################################
======
2) Bug
======
The Quake 3 engine has problems to handle big queries allowing an
attacker to shutdown any game server based on this engine:
  ERROR: Info_SetValueForKey: oversize infostring
In some of the vulnerable games is also possible to crash the server.
#######################################################################
===========
3) The Code
===========
http://aluigi.altervista.org/poc/q3infoboom.zip
A simple scanner for testing any game based on the Quake 3 engine.
#######################################################################
======
4) Fix
======
Only the two Call of Duty games have been fixed with the 1.5b and 1.51b
patches, all the others are still vulnerable.
I have released an universal patcher that limits the amount of handled
data in the queries from 1023 to 767 solving the problem in any game:
  http://aluigi.altervista.org/patches/q3infofix.zip
(only in Heavy Metal: F.A.K.K.2 is needed to reduce the amount of
handled data to less than 512 instead of 767)
#######################################################################
--- 
Luigi Auriemma
http://aluigi.altervista.org