Commit graph

31 commits

Author SHA1 Message Date
Jonathan Gray
15b5f1f0c1 invalid msg field count buffer overflow
bugzilla #4669

from Eugene C. in ioquake3
svn 1788 git 3ff266637578b9727ddee84e966214dd5dc51f04

Fix buffer overflow, report and patch by Eugene C. (#4669)
2013-05-07 22:20:02 +10:00
Jonathan Gray
0829cfe9e4 Fix buffer overflow in x86 VM
bugzilla #4249

from Tim Angus in ioquake3
svn 1687 git 5663ff1362a3532013c0543e1c8d3dcc14e90577

* (bug #4249) Fix buffer overflow in x86 VM
2013-05-07 22:20:02 +10:00
Jonathan Gray
647eeff5d3 security fix: prevent command injection via callvote
Luigi Auriemma q3cbufexec

from Ludwig Nussel in ioquake3
svn 1493 git f5aae78481d71307a0b874b1f17ecdead1469392

security fix: prevent command injection via callvote

from Thilo Schulz in ioquake3
svn 1838 git cf791d14c58f536eec8220d93fb9af443f8837e9

- Fix bug #4769 remote server crash
2013-05-07 22:20:02 +10:00
Jonathan Gray
61687fff0c CVE-2011-2764/CVE-2011-3012 check for dangerous file extensions
CVE-2011-2764
The FS_CheckFilenameIsNotExecutable function in qcommon/files.c in the
ioQuake3 engine 1.36 and earlier, as used in World of Padman, Smokin'
Guns, OpenArena, Tremulous, and ioUrbanTerror, does not properly
determine dangerous file extensions, which allows remote attackers to
execute arbitrary code via a crafted third-party addon that creates a
Trojan horse DLL file.

CVE-2011-3012
The ioQuake3 engine, as used in World of Padman 1.2 and earlier,
Tremulous 1.1.0, and ioUrbanTerror 2007-12-20, does not check for
dangerous file extensions before writing to the quake3 directory, which
allows remote attackers to execute arbitrary code via a crafted
third-party addon that creates a Trojan horse DLL file, a different
vulnerability than CVE-2011-2764.

bugzilla #3695

from Tim Angus in ioquake3
svn 1405 git 2c0861c1cea44861c5ceba2dc39e601d6bc3f0af

* (bug 3695) Not allowing to write file with lib extention (.dll/.so/...)
  (TsT <tst2006@gmail.com>)

from Tim Angus in ioquake3
svn 1499 git 48d8c8876b6ec035b0bb85f4d3c47c9210c3ca30

* s/FS_FilenameIsExecutable/FS_CheckFilenameIsNotExecutable/g
* Fix potential buffer under run in FS_CheckFilenameIsNotExecutable

from Thilo Schulz in ioquake3
svn 2098 git c4f739b8d03ca203435744c4a96e3561863ccdfe

Fix extension name comparison for DLL files

from Zack Middleton in ioquake3
git 6c88bf8aeee3c1e5449682f874f91e86cb393ef4

Rename FS_CheckFilenameIsNotExecutable to ..NotImmutable

from Harley Laue in ioquake3
git 1b2a6abed996b43eb108486abbda449b3d16e019

Rename FS_CheckFilenameIsNotImmutable to ..IsMutable
2013-05-07 22:20:02 +10:00
Jonathan Gray
ac9e5f1f79 CVE-2006-3324 arbitary file overwrite
CVE-2006-3324
The Automatic Downloading option in the id3 Quake 3 Engine and the
Icculus Quake 3 Engine (ioquake3) before revision 804 allows remote
attackers to overwrite arbitrary files in the quake3 directory
(fs_homepath cvar) via a long string of filenames, as contained in the
neededpaks buffer.

Luigi Auriemma q3cfilevar

from Thilo Schulz in ioquake3
svn 804 git 813a6ecdc3b8572796a8a85b260b03e1c3d87ef4

- Fix bug that allows a malicious server to write and overwrite any
  files in the quake3 directory.  Reported by Luigi Auriemma.
- Moved directory traversal check to a more proper location.
- Added a few sanity checks for checksum/pakname storage to fix a crash
  that can occur under certain circumstances.
2013-05-07 22:19:33 +10:00
Jonathan Gray
8550620849 CVE-2006-3325 arbitrary cvar overwrite
CVE-2006-3325
client/cl_parse.c in the id3 Quake 3 Engine 1.32c and the Icculus
Quake 3 Engine (ioquake3) revision 810 and earlier allows remote
malicious servers to overwrite arbitrary write-protected cvars
variables on the client, such as cl_allowdownload for Automatic
Downloading and fs_homepath for the quake3 path, via a string of cvar
names and values sent from the server. NOTE: this can be combined with
another vulnerability to overwrite arbitrary files.

Luigi Auriemma q3cfilevar

from Thilo Schulz in ioquake3
svn 811 git 7d51d75b05a9593508040162709043516c0f2a17

- Fix arbitrary cvar overwrite flaw: http://aluigi.altervista.org/adv.htm
2013-05-07 22:18:55 +10:00
Jonathan Gray
ec595883ab vsprintf -> Q_vsnprintf 2013-05-07 22:18:45 +10:00
Jonathan Gray
832b4342a8 CVE-2006-2236 Buffer overflow in the Quake 3 Engine
CVE-2006-2236
Buffer overflow in the Quake 3 Engine, as used by (1) ET 2.60,
(2) Return to Castle Wolfenstein 1.41, and (3) Quake III Arena 1.32b
allows remote attackers to execute arbitrary commands via a long
remapShader command.

from Thilo Schulz in ioquake3
svn 765 git d21411452ef32b86c0b79ddcaf49221701dcdb07

Add string length checking to function COM_StripExtension. This fixes
the R_RemapShader buffer overflow exploit that can be found here:
http://milw0rm.com/exploits/1750
2013-05-07 22:18:45 +10:00
Jonathan Gray
c9da283d84 add Cmd_TokenizeStringIgnoreQuotes modelled after ioquake3 2013-05-07 22:18:44 +10:00
Jonathan Gray
8349abd8bb Fixed some qboolean type confusion
note: cl_keys change not included as qboolean not abused unlike q3

from Tim Angus in ioquake3
svn 95 git 33a48a0336865a9d21983e4836920cd9f3401101

Fixed some qboolean type confusion

from http://www.quakesrc.org/forums/viewtopic.php?t=5374
2013-05-07 22:18:44 +10:00
Jonathan Gray
a3d6db9f5d set some possibly uninitialised vars to zero 2013-05-02 13:47:51 +10:00
Jonathan Gray
624419334f const fixes 2013-05-02 13:47:51 +10:00
Jonathan Gray
7d29fb84a5 remove surplus tokens after preprocessor directives 2013-05-02 13:47:50 +10:00
Jonathan Gray
0ad40e0b6d make some ifdefs more specific to let this compile on more platforms 2013-04-26 22:27:23 +10:00
Jonathan Gray
e454e9ebd7 callMask needs to be externally visible 2013-04-26 22:27:21 +10:00
Jonathan Gray
e058e43fa4 place win32 code under #ifdef _WIN32 not #ifndef __linux__ 2013-04-26 22:27:19 +10:00
Jonathan Gray
a064ebf87a change iterator erasing so we don't need to overload the = operator 2013-04-26 22:27:19 +10:00
Jonathan Gray
d7b7f5ac78 match the rest of the code and have OutputDebugString under _DEBUG 2013-04-26 22:27:12 +10:00
Jonathan Gray
f99cdcd1fa leave the masm assembly to msvc 2013-04-25 23:51:56 +10:00
Jonathan Gray
5c941d29f1 strnicmp -> Q_strnicmp 2013-04-25 23:51:56 +10:00
Jonathan Gray
901d5acb51 stricmp -> Q_stricmp 2013-04-25 23:51:55 +10:00
Jonathan Gray
4d606a650d USHORT -> unsigned short 2013-04-25 23:51:54 +10:00
Jonathan Gray
067e58ea4e provide a gcc style alternative to the inline asm in timing.h 2013-04-25 23:51:54 +10:00
Jonathan Gray
d140164808 __int64 -> int64_t 2013-04-25 23:51:54 +10:00
Jonathan Gray
46c9f91703 strlwr -> Q_strlwr 2013-04-25 23:51:54 +10:00
Jonathan Gray
2d66eb2b2b fix #includes to compile on non windows without pch 2013-04-25 23:51:46 +10:00
Jonathan Gray
d279049cb8 replace some #elif __linux__ with #else 2013-04-25 12:46:05 +10:00
Jonathan Gray
039ef2cb4a ditch dos style newlines 2013-04-23 15:21:39 +10:00
Josh Vega
107cd7a531 Deleted all the Visual SourceSafe files. 2013-04-06 20:59:34 -04:00
James Monroe
59f7e71450 Jedi Academy Patch 1.01 2013-04-04 18:21:13 -05:00
James Monroe
684d1bcb3b Jedi Academy Release 2013-04-04 17:35:38 -05:00