==================================================================================== TITLE Call of Duty 2 1.0 fix for the callvote buffer-overflow 0.1 (Linux only) oringal 1.3 version by Luigi Auriemma e-mail: aluigi@autistici.org web: aluigi.org . UPDATE: backported to Call of Duty 2 version 1.0 by smugllama INTRO This unofficial patch for Call of Duty 2 is able to fix the following bug: . . http://aluigi.org/adv/codmapbof-adv.txt . If you are unsure if your server is vulnerable please use the proof-of-concept provided there. . The solution I have adopted for this bug is the limiting of the length of the input map name to max 63 chars (using the AND instruction) . UPDATE: backported to Call of Duty 2 version 1.0 by smugllama FILE CoD2MP_s.exe;cod2_lnxded;CoDMP*.exe;cod*_lnxded ONLY_ONE ### LINUX ### RVA 8048000 ; IMPORTANT! # cod2_lnxded # 80656ef BYTES_ORIGINAL 8d 45 fc ; lea eax,[ebp-4] 83 28 07 ; sub DWORD PTR [eax],0x7 8b 45 fc ; mov eax,DWORD PTR [ebp-4] 89 44 24 08 ; mov DWORD PTR [esp+8],eax 8b 45 08 ; mov eax,DWORD PTR [ebp+8] 89 44 24 04 ; mov DWORD PTR [esp+4],eax c7 04 24 80 17 1e 08 ; mov DWORD PTR [esp],0x81e1780 e8 8c 45 fe ff ; call 8049c80 BYTES_PATCH ?? ?? ?? ?? ?? ?? ?? ?? ?? 83 e0 3f ; and eax,0x3f 50 ; push eax 8b 45 08 ; mov eax,DWORD PTR [ebp+8] 50 ; push eax 68 |81e1780 ; push 0x81e1780 e8 ^8049c80 ; call 8049c80 83 c4 0c ; add esp,0xc 90 90 ; nop nop ====================================================================================