####################################################################### Luigi Auriemma Applicazione: Medieval Total War http://www.totalwar.com Versioni: <= 1.1 Piattaforme: Windows Bug: Crash del client e directory traversal Date: 07 Oct 2003 Autore: Luigi Auriemma e-mail: aluigi@autistici.org web: aluigi.org ####################################################################### 1) Introduzione 2) Bug 3) The Code 4) Fix ####################################################################### =============== 1) Introduzione =============== Medieval Total War e' un gioco di strategia in tempo reale disponibile per PC ed e' sviluppato da Creative Assembly (http://www.creative-assembly.co.uk) e pubblicato da Activision (http://www.activision.com). E' stato rilasciato ad Agosto 2002. ####################################################################### ====== 2) Bug ====== I giocatori di MTW hanno accesso al server solo in un determinato momento e non durante l'esecuzione del gioco. Questo momento e' il Lobby screen prima dell'inizio del match dove tutti i giocatori possono partecipare. I bugs sono 2: A] Crash del client ----------------- Un server puo' inviare un nome mappa troppo grande (almeno 70 caratteri unicode) a tutti i clients che richiedono informazioni. Quando il client passera' il mouse sopra il nome del server, apparso nella lista, crashera' immediatamente. B] Directory traversal ---------------------- Quando il client invia una richiesta al server, quest'ultimo inviera' una risposta contenente anche il path di un file di testo necessario al gioco come nell'esempio: "campmap\startpos\Early.txt" Come facilmente immaginabile, il gioco e' vulnerabile ad un directory traversal bug. Gli unici effetti "pericolosi" che ho trovato riguardo questo bug in tale gioco sono il bug del con\con per i sistemi Win9x non patchati (http://www.microsoft.com/technet/security/bulletin/MS00-017.asp) e un freeze temporaneo se il file puntato dal path e' troppo grande. ####################################################################### =========== 3) The Code =========== Un semplice proof-of-concept e' diponibile qui: http://aluigi.org/poc/mtw2client.zip ####################################################################### ====== 4) Fix ====== No fix. Ho contattato Creative Assembly un sacco di mesi fa' ma non avevano risorse per correggere questo bug. #######################################################################