Abilitare SSH sulla Fonera con firmware 0.7.2 r3

34 commenti

La Fonera è il social router distribuito da Movimiento FON, e da ieri sono il felice possessore di uno di questi aggeggini.

La fonera in tutto il suo splendore

In realtà l’antenna è bianca…

Questo simpatico scatolotto (è più piccolo di una mano) è basato su linux (Kernel 2.4.32) e sul firmware OpenWrt, rivisto e corretto da FON. Purtroppo, però, non è possibile accedere via SSH, e bisogna procedere ad un hack più o meno complesso a seconda della versione firmware che è installato sulla Fonera. Io ero lo sfortunato possessore di un esemplare con firmware 0.7.2 r3, resistente agli attacchi usati in precedenza, in particolare quelli descritti in questo post del blog di Paolo Gatti. Questo, in pratica, redirigeva le richieste DNS della Fonera ad un altro server, 88.198.165.155, che è stato appositamente studiato per riportare la Fonera al firmware 0.7.1 r1, attaccabile tramite una code-injection.

Nella nuova versione del firmware, però, FON aveva bloccato il DNS “interno”, usato per le operazioni di download degli aggiornamenti, a 213.134.45.129, rendendo così inutile la modifica del DNS.

Qui di seguito c’è la guida per eseguire l’hack, ma ci sono un paio di prerequisiti:

  • Serve un router
  • Bisogna poter impostare il suo IP a 213.134.45.129
  • Bisogna impostare nel router 88.198.165.155 come DNS

Effettuate queste modifiche, connettersi alla rete protetta della Fonera (di default MyPlace) e accedere a http://192.168.10.1/, cioè all’interfaccia di amministrazione. Andare in Opzioni avanzate/Connessione e inserire 213.134.45.200 come IP, 255.255.255.0 come maschera di rete, e 213.134.45.129 sia come gateway che come DNS, quindi salvare le modifiche e riavviare la Fonera. Se tutto procede per il meglio, al successivo riavvio si sarà tornati al firmware 0.7.1 r1. Nel mio caso sono stati necessari 2 riavvi.

Ora bisogna salvare questo file HTML (salvalo con tasto dx > Salva destinazione con nome…). Nel caso l’indirizzo IP della Fonera fosse per qualche motivo diverso, basta correggerlo (a me era diventato da solo 192.168.12.1). A questo punto colleghiamoci alla rete protetta della Fonera (che tra l’altro dovrebbe essere l’unica disponibile in questa fase), apriamo la pagina HTML appena salvata con il nostro browser preferito (io ho usato Firefox) e premiamo il pulsante Submit. Dovrebbe venirci richiesto il nome utente e la password, entrambi admin se non si sono cambiate le impostazioni. Una decina di secondi di attesa, poi:

ssh root@192.168.10.1

Ovviamente bisogna correggere l’IP qualora fosse sbagliato e, se tutto è andato per il verso giusto:

 

SSH Sulla fonera!

Enhanced by FrancoFON non lo troverete, è un’aggiunta che ho installato io

Ora 2 modifiche fondamentali perché FON non vi richiuda la porta 22, come mi sono stupidamente lasciato fare io:

  • lancinte mv /etc/init.d/dropbear /etc/init.d/S50dropbear
  • Bisogna modificare /etc/firewall.user: lanciate vi /etc/firewall.user e decommentate le righe

iptables -t nat -A prerouting_rule -i $WAN -p tcp –dport 22 -j ACCEPT
iptables -A input_rule -i $WAN -p tcp –dport 22 -j ACCEPT

Per decommentare si elimina il # all’inizio della riga. Chi non avesse mai utilizzato vi sappia che deve raggiungere col cursore il punto da modificare, premere i, fare la modifica necessaria (non usare canc, ma backspace per cancellare), premere esc, quindi digitare :wq

Fatto, la Fonera è ora libera per sempre, adesso potete rimettere a posto le impostazioni del router.

N.B.: Questo hack non compromette la funzionalità della Fonera, ma aggiunge la possibilità di accedere via SSH. L’unico inconveniente che ho riscontrato, e che sto cercando di risolvere, è che essa risulta offline sul sito di FON, malgrado sia possibile usare regolarmente, con tanto di login, la rete pubblica.

EDIT: La Fonera risultava offline perché avevo mescolato la patch di PaoloGatti con FrancoFON, aprendo solamente SSH tutto funziona regolarmente e la Fonera risulta online.

34 commenti a “Abilitare SSH sulla Fonera con firmware 0.7.2 r3”

  1. #1 Lazza dice:

    Io pensavo che dentro fosse “aperto”… :-S