Hacking la Fonera, step by step guide

Qualche giorno fa, sento da Andrea che La Fonera è suscettibile di una code injection sull’interfaccia locale. Ohibò, troppo allettante per non provarci ma…ahem…la mia Fonera è già aperta e quella di Andrea anche.

Per fortuna, c’è Andrea il quale è un infelice possessore di Fonera muta e alla mia richiesta di provare l’hack non ci ha pensato poi molto e si è messo all’opera.

Ebbene si, ha aperto la Fonera. Ora, anche lui, può fregiarsi del titolo di “FON Liberator”. Mmmm…dove ho già sentito questo termine?

Gentilmente, Andrea ha accondisceso a scrivere una veloce guida all’utilizzo di questo nuovo hack.

step1Submit.png

È il primo form da inviare alla fonera.

Si tratta di un semplice form che utilizza il metodo post per inviare invia il campo “wifimode”all’indirizzo

http://192.168.10.1/cgi-bin/webif/adv_wifi.sh

192.168.10.1 è l’IP della Fonera, il vostro potrebbe essere differente, nel qual caso il valore va aggiornato alle vostre esigenze.

/cgi-bin/webif/adv_wifi.sh

È il cgi-bin che si occupa, tra le altre cose, di eseguire i comandi shell contenuti nel campo wifimode inviatogli (la fonera usa l’httpd di busybox e i cgi-bin sono script webif – un sistema di generazione dinamica di html tramite script shell e awk)

Una volta inviato il form vi sarà richiesta l’autenticazione http del webserver della fonera (esattamente come se vi collegaste da browser).

Il valore predefinito della coppia login/pass e’

Login: admin
Password: admin

Potreste aver cambiato la password predefinita, nel qual caso utilizzate quella che avete definito.

Come potete notare l’iniezione del codice richiama iptables dicendogli di aprire la porta 22 per le connessioni ssh.

afterSubmit.png

Quello che vedete nell’immagine e’ il testo che viene visualizzato nel browser dopo il submit e l’autenticazione: come potete osservare, si tratta del sorgente html dell’home page del webserver della fonera, preceduta da degli header. La prima riga è:

“/bin/sh: /tmp/.webif/config-fon: 2: Permission denied”

Il permission denied non si riferisce al tentativo di accesso o iniezione del codice nella fonera, ma alla scrittura (o alla lettura, non sono sicuro, lo script fa entrambe le cose) del file /tmp/.webif/config-fon.

Non preoccupatevi di quella scritta, l’iniezione del codice è andata a buon fine.

step2Submit.png

Si tratta del secondo form. Il codice iniettato avvia dropbear, il server ssh della Fonera.

Dopo l’invio del form si ripresenta lo stesso output visto per il primo.

sshLogin.png

A questo punto, collegatevi in ssh, come utente root. all’IP della fonera, la password
è la stessa che avete usato per l’autenticazione, et voila’!

Una volta loggatisi sulla Fonera occorre rinominare dropbear in

S50dropbear.

root@OpenWrt:/#mv /etc/init.d/dropbear /etc/init.d/S50dropbear

In questo modo la Fonera eseguirà il file al boot del sistema.

Quindi, ora avete un server ssh avviato a ogni boot della Fonera.

Il secondo passo da compiere consiste nell’abilitare in maniera definitiva le connessioni ssh verso la Fonera. Perottenere questo risultato, bisogna editare il file

/etc/firewall.user

Con cosa? ovviamente con vi

Le righe in questione sono le seguenti, come risulta chiaro dal commento:

### Open port to WAN
## -- This allows port 22 to be answered by (dropbear on) the router
# 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

Decommentate le due righe che iniziano per iptables.

A questo punto vi basterà riavviare la Fonera, oppure eseguire i due script sui quali avete apportato le modifiche:

root@OpenWrt:/#/etc/init.d/S50dropbear

root@OpenWrt:/#/etc/firewall.user

Se poi volete esagerare, disabilitando la possibilità che del codice inviato da Fon venga eseguito dalla Fonera, modificate /bin/thinclient

root@OpenWrt:/#vi /bin/thinclient

commentate la riga

. /tmp/.thinclient.sh

in fondo al file.

Potete infine aggiungere questa

cp /tmp/.thinclient.sh /tmp/thinclient-$(date'+%Y%m%d-%H%M')

che alla ricezione dei file da parte di Fon, li salverà nella directory /tmp nel formato thinclient-AAAA-MM-GG-HHMM.

In questo modo potrete controllarli di tanto in tanto (e ricordatevi anche di cancellarli, per non correre il rischio che vi occupino tutto lo spazio).

93 Risposte a “Hacking la Fonera, step by step guide”

  1. @Giovanni. Hai ragione, grazie. Deve essere scappato nel copia e incolla. In effetti, date è un comando che va richiamato passando i formattatori di output, che vanno separati da date tramite uno spazio. Grazie anche per l’apprezzamento, fa piacere.

  2. Ragazzi,
    qualcuno di voi ha provato a flashare la fonera rilasciata con il firmware 0.70 Rev2, con un altro firmware ad esempio DD-wrt oppure lo stesso OpenWrt ufficiale?

    Grazie in anticipo.

    Fabio

  3. Ciao a tutti…ieri ho provato ad accedere alla mia fonera in ssh per modificare il file firwall.user seguendo la procedura…tutto ok…ora emule si connette con id alto!!!
    Il mio quesito è questo:
    sono riuscito a configurare tutto per il mio pc fisso…volendo impostare il tutto anche per il portatile posso ricopiare il testo “# Forwad delle porte aMule” e impostare dell nuove porte? ad esempio
    da 4665 a 4666
    da 4672 a 4674
    ??

  4. Piu’ che il forward ti conviene lasciare aperte le porte per tutta la rete. Fare quello che richiedi diventa un po’ piu’ complicato rispetto al semplice forward.

    Come dire…ahem…ora sono in vacanza…se me lo ricordi quando torni ci penso sopra 🙂

  5. Giorgio…scusa la domanda…ma come faccio ad aprire quelle porte per tutta la rete?

  6. vi prego…aiutatemi….please…

  7. Mmmm mi prendi in vacanza senza il mio armamentario. Potresti spedirmi via email lo script iptables, così vedo come è messo e te lo modifico?

  8. Marco, senza stare a diventare matti, vai qui e riadattati questo semplice ciclo di forward:

    http://ccfaq.valar.co.uk/modules.php?name=News&file=article&sid=3

    In pratica, viene fatta ciclare una sezione dello script di iptables per inoltrare il range di porte da te indicato.

    Funzionale. Giusto due righe di shell scripting ma fanno il loro dovere.

    Ciao

  9. scusate..due cose…1…cosa serve fare l’acking?2…com faccio a nascondere ssid public…c’è una stringa echo ma non capisco 😉

  10. Ho ricevuto oggi una fonera che si è automaticamente aggiornata al firmware 0.7.1 r2; inizialmente non sono riuscito a far nulla, nè sono riuscito a downgradare il firmware facendo l’upload di uno vecchio. Il buon vecchio trucco del reset però funziona sempre…!
    In pratica basta scollegare internet (spegnete il modem ad es.), tener premuto il tasto di reset della fonera per 30 secondi, staccatele la corrente e riattaccatela. Aspettate un pò (anche 5 minuti!) che tutte le lucine si siano accese (wireless wireless compresa!), dopodichè collegatevi via browser all’indirizzo 169.254.255.1, dopo aver cambiato il vostro in 169.254.255.2 (la subnet mask può essere 255.255.255.0 o 255.255.0.0, indifferentemente).
    Noterete che il firmware sarà al massimo un 0.7.1-r1, per cui via col vecchio hack dei 2 files (occhio, avevo una versione buggata del primo file, aveva un solo – prima di dport… ne occorrono 2 se la fonera vi restituisce codici di errore!) e poi via col secondo.
    Riattivare le porte 22 in /etc/firewall.user e commentare l’esecuzione del /tmp/.thinclient in /bin/thinclient.
    Non dimenticate inoltre di cambiare /etc/init.d/dropbear in /etc/init.d/S50dropbear per avviare sempre il demone ssh all’avvio della fonera.

    Piccoli tips:
    – Nel caso in cui vogliate collegarvi alla schermata di configurazione della fonera via lan, basta fare copia/incolla delle 2 regole ssh del firewall in /etc/firewall.user ed aggiungerne due nuove uguali, cambiando le porte da 22 in 80.
    – Se siete stanchi della data in anno 2000, potete attivare il nuovo ntpclient. Per farlo rinominate /etc/init.d/ntpclient in /etc/init.d/S50ntpclient.
    – Vi consiglio vivamente di cambiare la password di default della fonera (che è admin) dalla schermata di configurazione via browser!!

    Spero di esservi stato utile! ^^
    Ciao a tutti,
    BiGAlex

  11. Non sono ancora riuscito ad aprire le porte per emule per tutta la rete 🙁

  12. Con il pulsante RESET sono tornato al fw 0.7.1.1 dopo ho applicato le modifiche esposte, ebbene, dopo aver riavviato la fonera non c’era verso di uscire su Internet: aprendo il browser una pagina avvisava che c’era una problema nella comunicazione.
    Non ho potuto fare altro che abilitare nuovamente il thinclient in questo modo:

    cp /tmp/.thinclient.sh /tmp/thinclient-$(date ‘+%Y%m%d-%H%M%S’)
    . /tmp/.thinclint.sh

    Cosi’ FON ha nuovamente il controllo della fonera ma, se non ho fatto errori, viene lasciata una copia delle operazioni.

    Anche con il FW aggiornato a 0.7.1.2 (dopo le modifiche a firewall.user) posso continuare ad accedere con SSH alla mia Fonera, ma avrei gradito disattivare gli aggiornamenti automatici.

    Ho modificato anche il file chilli.conf ma al reboot viene ripristinato quello di prima, evidentemente viene caricato dal server FON. In questi giorni spero di poter installare il nuovo port DD-WRT, qualcuno lo ha gia’ fatto?

  13. Boh, la fonera nuova che e’ arrivata oggi e’ r1, l’ho acherata correttamente ma mi fa lo stesso lavoro di alessandro. io pero’ non facevo copiare il thinclient.sh su /tmp ma ho semplicemente commentato via la sua esecuzione.

    Anche io accedo solo tramite myplace (la connessione pubblica none siste) e mi visualizza una schermata di errore.

    Ho provato a decommentare la riga e a fare il reboot ma a quanto pare non e’ successo nulla. Vorra’ dire che mi rassegnero’ a tenere una r2 sperando che esca un acheraggio nuovo.

  14. Beh, ho resettato, ha aggiornato il firmware e ora va.

    Con l’r2 funziona l’acheraggio dell’r1? Io non credo cmq adesso non ho tempo di provare. Salumi!

  15. Ho rilasciato una patch che mi ha gentilmente ospitato Paolo Gatti sul suo blog. Per maggiori informazioni quindi vi consiglio di andare lì.
    http://www.paologatti.it/

    Ciao a tutti!

  16. Purtroppo il stio di Paolo Gatti sembra non andare oggi…
    … come la trovo sul mulo?

    Un saluto by Elia

  17. Nel caso in cui il sito di Paolo Gatti non funzioni, stiamo aprendo un wiki con tutte le informazioni a riguardo. Puoi trovarlo su http://www.bigalex.it/fonera ^^

    Ciao e buona giornata! 😉
    (Sono apprezzati commenti nel caso :D)

  18. Ciao a tutti1
    Io ho itallato la fonera ieri. Ho il Versione Firmware: 0.7.1 r2. Ed uso un Mac.
    Come posso fare per aprir le porte usate da aMule ?
    Potreste darmi una scaletta da seguire, adatta ad un totale inesperto come me? Grazie mille, Francesco.

  19. anche a me è arrivata la fonera ieri. Aveva il firmware r1, ho applicato l’hack e ho avuto l’accesso ssh e ho fatto tutto il resto. Prima di mettere il firmware dd-wrt dovrei registrarmi alla FON? Io voglio disattivare la SSID pubblica fino a quando non si capisce se è legale o meno. Loro possono vedere se io sto condividendo o meno?
    Grazie.

  20. Mah, non è che ci abbia speso piu’ di tanto ad approfondire. Quello che è certo è che la Fonera “telefona” a casa regolarmente per avvertire che è accesa.

  21. mi è arrivata la fonera ieri…ha il firmware 0.7.1 r2

    e anche resettando rimane quello…come posso fare per aprirlo?c’è un modo per fare il downgrade alla versione 0.7.1 r1?

  22. è possibile comprarla in qualche modo avendo il diritto di farci quello che si vuole (mettere il dd-wrt, disabilitare il ssid pubblico, ecc)? A me non interessa il progetto FON, però la fonera è molto piccola e comoda da installare a muro.

  23. @Gianluca. Alla peggio, si può sempre aprire lo scatolotto e collegarsi al sistema operativo utilizzando un’interfaccia seriale. Una volta arrivati al prompt, il resto è molto semplice.

    @andrew. No. viene venduta con l’impegno di mantenerla attiva come nodo della rete FON per un anno. Se ti interessa qualcosa delle stesse dimensioni, in giro trovi apparecchi simili.

  24. RAGAZZI AIUTO

    ieri mi è arrivata la Fonera. Ho applicato l’hack per avere accesso all’ssh e poi ho messo su dd-wrt. Tutto e’ andato alla perfezione. Quando ho impostato il filtro del mac address ho sbagliato e ho messo un 4 al posto di un 3 e poi ho fatto salva!! Non sono più riuscito, ovviamente, ad accedere alla pagina di configurazione. Ho provato a premere per 30 secondi il tasto reset ma non sembra aiuti con il dd-wrt? Che cosa devo fare?? Porca paletta è andato tutto bene e poi vado a sbagliare un numero 🙁
    Aiutatemi 🙁
    Grazie

  25. A me è arrivata una fonera già con r2 installata, per hackerare la fonera r2 ha però funzionato il seguente metodo:
    scaricatevi il firmware 7.1 r1 (lo trovate su vari siti), a questo punto fate un web upgrade e appena l’ha caricato (si disconnette la WLAN dal vostro PC) staccate la spina di alimentazione.
    Riattaccatela dopo 10 secondi e se vi va bene…
    … io mi sono ritrovato il firmware versione r1.

    Da qui in avanti il metodo di apertura della porta 22 per l’SSH è il solito.

  26. Ho provato ad installare nella mia Fonera il firmware OpenWrt Kamikaze r6261, purtroppo però qualcosa non è andato a buon fine. Inizialmente l’aggiornamento è andato bene, però non mi dava l’accesso ad internet, quindi sono entrato nei settaggi del AP tramite browser e ho modificato qualcosa a caz_o e da allora non sono riuscito più ad entrare nei settaggi del AP. come posso resettarlo? è possibile solo tramite seriale?

  27. Mi è appena arrivato!!
    ho notato che il fon collegato dietro ad un router, non permette ai pc collegati al router di vedere quelli dietro al fon.
    manca l’opzione wan -> rete privata.
    si può risolvere?
    grazie

  28. Ciao Corona, anche io ho lo stesso problema e mi ero rassegnato ma ora leggendo la tua obiezione mi è tornato a mente.

    Allora:
    non riesco a far vedere agli utenti collegati alla Rete Privata Myplace i PC della mia rete ma se li pingo rispondo regolarmente.

    La mia configurazione è: rete privata 192.168.0.XX
    – Router 192.168.0.1
    – PC in rete 4 con indirizzi 192.168.0.2 al 192.168.0.5
    – La fonera collegata al Router con indirizzo assegnato 192.168.0.101 e gateway asseganto in automatico 192.168.0.1 e Indirizzo rete Myplace 192.168.10.1 con DHCP abilitato.

    Se io mi collego alla Myplace ottengo un indirizzo 192.168.10.2 o più, esco in internet ma non vedo le mie macchine tramite il browser di XP o le risorse di rete.

    Se però pingo la 192.168.0.3 ottengo risposte.

    Che vuol dire?

    La mia fonera non è hacherata e ho il firmware 0.7.1 r3

    Grazie e ciao a tutti

  29. La soluzione per le r3 e’ alla fine della pagina:
    http://stefans.datenbruch.de/lafonera/#kolofonium

    Provato e funziona al 100%

    Fede

  30. Domanda: Una volta guadagnato l’accesso, qualcuno sa dirmi se e’ possibile limitare la larghezza di banda per le connessioni wifi pubbliche ? E per un determinato IP/MAC address presente sulla rete privata ?

    Dimenticavo, per la r3 ho dovuto copiare il dropbear su S50ssh perche’ me lo rimetteva senza autostart una volta ripassata la Fonera in DHCP.

    Fede

  31. stò tentando di sbloccare fonera.
    dopo il reset per passare dalla ver. r3 ad una inferiore dicono di collegarsi via wifi.
    il problema è che non mi fa collegare… (tra l’altro collegandomi via ehternet al 169.254.255.1 mi da sempre r3)
    situazione:
    fon con alimentazione inserita e cavo lan staccato
    ho sbagliato qualcosa?

  32. L’indirizzo 169.254.255.1, indica che la fonera ha tentato di ottenere un indirizzo da un server DHCP e non ci è riuscita.

    Di che colore sono i LED?

  33. veramente sapevo che il 169.254 è l’indirizzo ethernet… la mia ignoranza non ha fine.
    i led sono verdi.

  34. La sottorete 169.254.0.0/16 viene utilizzata dal protocollo Zeroconf (APIPA in Windows) http://it.wikipedia.org/wiki/Zeroconf per l’assegnazione degli indirizzi IP.

    Rileggendo il tuo commento, mi è più chiaro ciò che volevi dire. Si, in effetti devi collegarti via eth su quell’indirizzo.

    Ora, se i led sono verdi, significa che ha una connessione verso la rete e, con un po’ di fortuna, chiama casa.

    Ora, accedi alla tua pagina di gestione della fonera sul sito di fon e inserisci un nuovo SSID e una nuova password per la rete wireless.

    Salva le impostazioni.

    Riavvia la fonera. In questo modo la fonera chiamerà casa e scaricherà le nuove impostazioni.

    Questo giusto per recuperare la connettività.

    Casomai, scrivimi in privato descrivendomi più dettagliatamente le operazioni che hai compiuto sulla fonera.

  35. ben volentieri.
    a quale indirizzo preferisci che ti scriva?

  36. sto cercando di resettare la fonera, mi sono scordato la password, seguo le vostre indicazioni ma nulla, potete aiutarmi?

  37. Ciao, scusatemi per il mio OT. Ma qual’è la differenza tra fonera”aperta” e no? Si può usare la fonera come un classico router (protetto con chiave wep).

    Grazie

  38. Ciao,
    io riesco ad ottenere l’accesso ssh la prima volta con i due file html sposto drop bear e faccio tutto il resto ma se riavvio la fonera non mi rimane l’accesso e se provo a rifare la procedura per riaprire l’accesso il primo file html funziona ma il secondo mi da file not found in quanto ho già spostato il file ma allora perchè non mi mantiene l’accesso ssh aperto?

  39. 1.Ciao ragazzi e scusatemi di nuovo. Ho un’altro quesito da porvi se non disturbo. All’interno del sito di Fon una volta registrati con username e psw si ha la possibilità di assegnare a 5 amici un nome ut e psw per farli navigare appoggiandosi alla rete pubblica fon_ap che metto a disposizione di tutti i foneros.
    Io avevo creato un profilo con un nome ut. ed una psw che usavo per accedere alla rete fon_ap con il mio palmare ( senza usare le mie credenziali reali di Fon con le quali accedo all’interno del sito ). Dopo aver smanettato un pò sul sito fon con le psw di amici e famiglia non riesco ad accedere più alla rete fon_ap con il palmare nonstante io inserisca un nome ut. e psw che ho dichiarato tra amici e famiglia. Dove risiedono i nomi ut. e psw ? Nella fonera o nel palmare ? Avete qualche idea ? Grazie e ciao.

  40. Qualcuno può testare FiSH?
    è un mio nuovo programma x moddare la fonera!

    http://www.mediafire.com/?myymnzwtdn1

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.