Capture The Flag
Internet Security Competition
15/06/2016

About


Il team FriedBios del corso di Internet Security del professore Giampaolo Bella ha affrontato il team Belga dell'università Katholieke Universiteit Leuven (Belgio) nella prima Capture the Flag internazionale dell'Università di Catania. La macchina su cui i due team si sono affrontati è stata Mafia 2007. Il team locale ha vinto la competizione con il risultato di 334 Offensivi contro i soli 31 del team di Leuven.

Il team ha studiato inoltre le vulnerabilità presenti nella macchina iCTF 2015. Ha quindi realizzato degli script di attacco e delle patch di difesa per la suddetta macchina e sviluppato un arbitro/scorebot per questa e per le future CTF.

Il Team


viglianisi

Emanuele Viglianisi

nicolosi

Andrea Nicolosi

contarino

Orazio Contarino

micale

Davide Micale

mergiotti

Francesco Mergiotti

gambuzza

Giuseppe Gambuzza

aparo

Antonino Aparo

durso

Fabio D'urso

scuderi

Alessio Scuderi

Services iCTF 2015


Di seguito viene riportata la lista dei servizi di iCTF 2015 analizzati. Per ogni servizio è descritto un principio di attacco ed una di difesa. È possibile inoltre scaricare un archivio contenente gli script per automatizzare gli attacchi e le patch per correggere le vulnerabilità.

Nome servizio

Principio d'attacco

Principio di difesa

Scorebot


Il team ha realizzato uno scorebot semplificato per le future CTF di tipo Attacco e Difesa. Lo scorebot consiste in un singolo script python in cui vengono definiti team e servizi da utilizzare. Lo script avvia ciclicamente l'operazione di set_flag per immettere nuove flag nei servizi e get_flag per testare il corretto funzionamento di questi ed assegnare i punti difensivi. Lo scorebot contiene inoltre un microserver HTTP per il submit delle flag, per ottenere i flagID e per visualizzare il punteggio dei team.

Il team si è inoltre occupato di scrivere due configurazioni per altrettanti servizi della macchina iCTF 2015 in modo da renderli compatibili con lo scorebot utilizzato per mafia 2007. Sono state scritti le configurazioni per i servizi 1337_pizza e text_file_store. Ogni configurazione implementa la funzione "score" che viene richiamata periodicamente dall'arbitro. In una prima fase, la funzione accede al servizio e recupera l'ultima flag inserita stampandola nello stdout. L'arbitro confronta la flag appena ottenuta con la flag memorizzata e assegna i punti difensivi. Nella seconda fase viene immessa una nuova flag nel servizio.