
parte 1
Nella parte 1 abbiamo scoperto le “regole” generali del gioco e abbiamo avuto dei sospetti su tre elementi: le due tracce audio, game_of_thrones.wav e game_of_thrones.mp3, e l’immagine iniziale (quella riportata anche qui) che non è salvata in un formato immagine ma come script di Javascript.
C’è un bel po’ di carne al fuoco, quindi iniziamo con le tracce audio.
Analizzandole, è uscita fuori una flag! Speravo fosse la prima indicata, quella di Dorne, invece è una delle secret flags, quelle “non necessarie” alla buona riuscita del gioco ma che per arrivare al 100% è bene raccogliere. Più precisamente si tratta di quella dei bruti:

L’analisi dello script invece ha restituito queste interessanti indicazioni, sotto forma di frasi dette dai personaggi:
“Non entrerai mai ad Approdo del Re attraverso i cancelli principali. La regina ha ordinato di chiuderli definitivamente fino alla fine della guerra.” – Tywin Lannister
“Se poni una città sotto assedio, dopo cinque attacchi verrai bannato per due minuti.” – Aegon the Conqueror and His Conquest of Westeros Book
“La musica riesce ad arrivare dove non possono le parole. Lo sanno anche gli animali.” – Catelyn Stark
Quindi, ricapitolando: niente brute-force, o si viene bannati per due minuti; i file audio hanno informazioni interessanti nascoste (già analizzati 😀 ), mentre per la prima frase sono un po’ nel dubbio su cosa significhi. Ci penserò quando dovrò trovare la bandiera di Approdo del Re.
uniscan.
Le possibilità che mi si aprono davanti sono molte. So che devo trovare la bandiera di Dorne, ma non so da dove iniziare. Ed in questo caso, controllare l’host con uniscan è sempre una buona idea, magari c’è qualche vulnerabilità nella rete che posso sfruttare…

Oh ecco, questo è interessante! Per prima cosa notiamo che è stato disabilitato l’accesso diretto ad Approdo del Re, come indicavano le istruzioni precedenti. Oh beh, abbiamo comunque molto da controllare, partendo dal… basso. Cosa succede se apro in un browser la pagina raven.php?

Un corvo. Certo, come ho fatto a non pensarci prima?
Hai ricevuto un corvo con questo messaggio:
“Per oltrepassare il muro, l’incantesimo mcrypt ti aiuterà. Non importa chi sei, per aprire la porta segreta è necessaria soltanto la chiave.” – Anonymous
Chiave che al momento non ho, quindi andiamo avanti. C’è la directory the-tree aperta, diamo un’occhiata.

Ehnnò, questa era cattiva, tra l’altro ha riaperto traumi mai del tutto sopiti! Comunque è troppo scontato che sia “la fine”, quindi ho scelto di analizzare il codice sorgente per cercare il prossimo indizio e non sono rimasta delusa:
“You mUSt changE your own shape and foRm if you wAnt to GEt the right aNswer from the Three-eyed raven” – Written on the tree by somebody
Questo ho deciso di non tradurlo, perché avrei perso il giochino: prendendo le lettere maiuscole si trova USER AGENT, mentre la frase afferma che dobbiamo “modificare la nostra forma” per ottenere la giusta risposta. Facendo due più due è facile dedurre che dobbiamo modificare lo user agent. Ma prima di procedere al “secondo livello” voglio dare un’occhiata alle altre due directories che uniscan ha evidenziato: secret-island e direct-access-to-kings-landing.

Bingo! Petyr Ditocorto Baelish ha deciso di aiutarmi e mi ha fornito una convenientissima mappa, da affarista qual è ha capito che la mia strategia è quella vincente e ha deciso di assecondarmi:

Praticamente è una lista dei regni nell’ordine da rispettare con le indicazioni di come entrare in ogni regno tra parentesi: ftp, http, etc. Come si suol dire in questi casi, daje.
Proviamo con la seconda directory, ben consapevoli che quasi sicuramente sarà inutile: in fondo, molti dei suggerimenti fino ad ora sono stati “l’accesso diretto ad Approdo del Re è stato chiuso”, quindi…

Ok, ora è il momento di seguire il suggerimento scritto sull’albero da “qualcuno” e cambiare lo user-agent. Sinceramente era una cosa che non avevo mai fatto, quindi vi riporto i miei passaggi nel caso sia utile a qualcuno: da Mozilla Firefox ho digitato nella barra degli indirizzi about:config ed ho creato una nuova stringa, con il valore general.useragent.override e un nuovo useragent con valore Three-eyed-raven come nell’immagine. Ho provato quindi di nuovo ad accedere alla directory the-tree: stavolta l’immagine è cambiata e Bran triocchiuto Stark è pronto ad aiutarci.

“Ti darò tre indizi, posso vedere il futuro quindi ascolta attentamente” – The three-eyed raven Bran Stark
“Per entrare a Dorne ti devi identificare come oberynmartell. Devi comunque trovare la password.”
“3487 64535 12345 . Ricordati questi numeri, perché avrai bisogno di usarli con persone EDUCATE – saprai quando è il momento di farlo”
“I bruti non hanno mai superato la Barriera. Quindi dovrai cercarli prima di attraversarla.“
Bene, ora abbiamo altri tre indizi: scartiamo subito il terzo, perché abbiamo già trovato la bandiera dei bruti. Per accedere a Dorne devo entrare nel server ftp, di cui ho il nickname ma non la passowrd. Devo quindi continuare a cercare. Per i numeri invece non ho alcuna utilità per il momento.
dirb.
A questo punto ho deciso di fare una scansione con dirb, uno strumento per il web scanning, sull’host: è uscita fuori una directory che uniscan aveva lasciato fuori: h/i/d/d/e/n.


E con Jorah Mormont sono arrivati altri due indizi parecchio importanti. Ovviamente, il tutto analizzando il codice sorgente della pagina, ormai lo avrete capito!
“I miei uccellini sono ovunque. Per entrare a Dorne devi dire: A_verySmallManCanCastAVeryLargeShad0w. Adesso mi devi un favore.” – Lord (The Spider) Varys
“Dei potenti incantesimi di docker sono stati lanciati su tutti i regni. Dobbiamo muoverci con cautela! Non puoi viaggiare direttamente dall’uno all’altro… Di solito. Questo è ciò che il Signore della Luce mi ha mostrato.” – The Red Woman Melisandre
Semba proprio che abbia ora sia lo username che la password per entrare nel server ftp e prendere la prima bandiera!
Dorne, la prima bandiera.
Quindi, come username oberynmartell e come password A_verySmallManCanCastAVeryLargeShad0w sono i dati di login per accedere al server ftp: inserendoli sono riuscita a recuperare la prima bandiera.

Mi manca l’indizio per il secondo regno, quindi ho deciso di analizzare il server ftp semplicemente inviando il comando dir: il risultato sono due files di testo, problems_in_the_north.txt e the_wall.txt.nc. Dato che il secondo è criptato, ho iniziato con il primo:
“Ci sono problemi al nord. Dobbiamo muoveci in fretta e una volta là dovremo difendere la Barriera.” – Jon Snow
“Che tipo di magia è questa? Non ho mai visto manoscritti di questa fattura. Controlliamoli attentamente.” – Maester Aemon Targaryen
md5(md5($s).$p)
nobody:6000e084bf18c302eae4559d48cb520c$2hY68a
Grande Inverno, la seconda bandiera.
Guardando gli indizi è facile capire che si riferiscano al file criptato: l’ho aperto nell’editor di testo ed ho utilizzato hashcat per decifrarlo, usando come salt la stringa di caratteri senza apparente senso e come wordlist la rockyou disponibile con il software. Alla fine il risultato è stato “stark” come passphrase e l’ho passato come parametro a mcrypt per ottenere il testo:
“Abbiamo difeso la Barriera. Grazie per il tuo aiuto. Ora puoi andare a riconquistare Grande Inverno. ” – Jeor Mormont, Lord Commander of the Night’s Watch
“Scriverò sulla tua mappa questo percorso per arrivare più in fretta a Grande Inverno. Un giorno sarò un grande Maestro.” – Samwell Tarly
http://winterfell.7kingdoms.ctf/——W1nt3rf3ll——
Enter using this user/pass combination:
User: jonsnow
Pass: Ha1lt0th3k1ng1nth3n0rth!!!
Oh beh, qui è facile: basta aprire il link sul browser!
…
…
E invece no, non carica la pagina. Prima va aggiunto l’indirizzo al file host e poi va ricaricata: a quel punto appare una pagina di login, di cui stavolta abbiamo sia username che password, ed ecco che recuperiamo la seconda bandiera:

Benvenuto a Grande Inverno.
Hai conquistato il Nord. Ecco la tua seconda bandiera!
639bae9ac6b3e1a84cebb7b403297b79
“C’è ancora qualcosa da fare qui prima di dirigerci verso le Isole di Ferro, mia signora.” – Podrick Payne
“Sì, riesco a sentire la magia su quello scudo. Le spade qui non servono più.” – Brienne Tarth
E dal file .css ho scoperto due ulteriori indicazioni, che lascio non tradotti per non perdere la sottigliezza degli indizi:
“Old TeXTs are written about how to enter into the Iron Islands fortress” – Theon Greyjoy
“Timef0rconqu3rs TeXT should be asked to enter into the Iron Islands fortress” – Theon Greyjoy
…E qui si ferma la seconda parte, perché ho scritto più di 8500 caratteri e immagino vi siate stancati tutti di leggere. 😛 Oltre al fatto che così l’ultima parte mi viene della stessa lunghezza…
La prossima settimana verrà pubblicata la terza (e ultima) parte! 🙂