Italiano English
Modifica History Actions

Differenze per "Hackalicegate"

Differenze tra le versioni 2 e 3
Versione 2 del 2010-10-01 09:51:42
Dimensione: 4879
Autore: claudyus
Commento:
Versione 3 del 2010-10-01 10:36:35
Dimensione: 10712
Autore: claudyus
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 5: Linea 5:

Written by: Claudyus per ninux.org
Copyright: CC-BY-SA
Linea 16: Linea 19:

{{{#!wiki red
Porta il tuo modem da hackerare a una delle [[domenica nerd|domeniche nerd]]
}}}
Linea 18: Linea 26:
il processore (sotto l'aletta quadrata)
una porta usb
1 slot mini-pci
2 porte voip (in rosso)
1 porta per la connessione alla linea adsl (purtroppo questa funzionalià andràà persa)
4 porte ethernet (in giallo)
una serie di leds (in basso)
il processore (sotto l'aletta quadrata)   * una porta usb   * 1 slot mini-pci   * 2 porte voip (in rosso)   * 1 porta per la connessione alla linea adsl (purtroppo questa funzionalià andrà persa)
 *
4 porte ethernet (in giallo) una serie di leds (in basso)
Linea 46: Linea 53:
Linea 52: Linea 60:
A questo punto sul modem possiamo scrivere il comando:
Linea 53: Linea 62:
A questo punto sul modem possiamo scrivere il comando:
Linea 57: Linea 65:
Linea 61: Linea 68:
Una volta installato OpenWrt il firstboot è diverso da tutti gli altri.
Di default si avrà telnet attivo e nessuna password di root, inoltre il wifi disabilitato.
Una volta installato OpenWrt il firstboot è diverso da tutti gli altri. Di default si avrà telnet attivo e nessuna password di root, inoltre il wifi disabilitato.
Linea 72: Linea 78:
A questo punto entriamo nella sheel di sistema tramite telnet:
Linea 73: Linea 80:
A questo punto entriamo nella sheel di sistema tramite telnet:
Linea 77: Linea 83:
Linea 80: Linea 85:
Finite queste configurazioni possiamo riavviare il router alice.
Accederemo quindi a una rete non protetta di nome OpenWrt e riaccederemo al modem tramite ''ssh root@192.168.1.1''
Finite queste configurazioni possiamo riavviare il router alice. Accederemo quindi a una rete non protetta di nome OpenWrt e riaccederemo al modem tramite ''ssh root@192.168.1.1 ''
Linea 83: Linea 87:
== Il == Configurazini avanzate ==

Adesso che abbiamo un completo sistema operativo a bordo non dobbiamo far altro che installare e configurare i servizi che più ci interessano. Tenendo sempre a mente il wiki di OpenWrt per i dettagli sulle configurazioni proviamo adesso a configurare alcuni servizi

=== Installare nuovi pacchetti ===
E' possibile aggiungere nuove funzionalità installando nuove pacchetti tramite il packege manager ''opkg''. Per chi ha familiarità con sistemi linux un semplice ''opkg help'' sarà più che chiarificatore.

Per iniziare scarichiamo la lista di pacchetti e installiamo alcuni pacchetti utili a priori:
{{{
opkg update
opkg install kmod-usb-ohci block-mount nano
}}}

=== Criptare la rete WPA/PSK ===
Per criptare la rete wi-fi tramite WPA sarà necessario aggiungere due opzioni al termine del file /etc/config/wireless
Le opzioni sono:
{{{
option encryption psk
option key 'aggiungete_la_vostra_chiave_wpa_preferita_qua'
}}}

=== Dividere lo switch tra due reti ===
I puristi della terminologia informatica mi perdoneranno per questo titolo, che in realtà riguarda la creazione di VirtualLAN (vlan) separate all'interno dello stesso switch.

Comunemente un router routa i pacchetti della lan su una rete esterna chiamata wan.

In genere sono necessarie quindi due intefaccie fisicamente diverse (due schede di rete) per ruotare i pacchetti da una all'altra.

In relatà gli switch possono taggare i pacchetti in ingresso/uscita e quindi realizzare all'interno di un'unico dispositivo due reti distinte.

Se vogliamo usare il nostro alice come gateway sarà proprio il caso di dividere una porta (la numero 4, quella vicina la usb) dal resto dello switch.
Come ho già scritto [[http://wiki.openwrt.org/inbox/alicegate_voip2_plus|sul wiki di openwrt]] questa operazione si effettua tramite il tagging delle vlan ovvero modificando l'intero file /etc/config/network così:
{{{
config interface loopback
        option ifname lo
        option proto static
        option ipaddr 127.0.0.1
        option netmask 255.0.0.0
                                                                                
config 'switch' 'eth1'
   option 'enable' '1'
   option 'enable_vlan' '1'
   option 'reset' '1'
                                                                                
config 'switch_vlan' 'vlan0'
   option 'vlan' '0'
   option 'device' 'eth1'
   option 'ports' '0 1 2 5*'
                                                                                
config 'switch_vlan' 'vlan1'
   option 'vlan' '1'
   option 'device' 'eth1'
   option 'ports' '3 5t'
                                                                                
config interface lan
        option ifname eth1.0
        option type bridge
        option proto static
        option ipaddr 192.168.5.1
        option netmask 255.255.255.0
        option nat 1
                                                                                
config 'interface' wan
    option 'ifname' 'eth1.1'
    option 'proto' 'dhcp'

}}}

=== IPV6 ===
Una rete che si rispetti deve supportare ipv6 oramai.

Per lo scopo installiamo radvd e aiccu per realizzare un tunnel ipv6 verso sixxs o servizio equivalente:
{{{
opkg install radvd aiccu
}}}

I servizi vanno configurati usando /etc/config/radvd e /etc/config/aiccu rispettivamente.

Sul [[https://www.sixxs.net/wiki/Aiccu/Installing_on_OpenWRT#Kamikaze|wiki di sixxs]] c'è un'ottima descrizione di come configurare il tunnel e la subnet.


=== Hard-disk su USB ===
Per poter montare un hdd è necessario oltre ad installare kmod-usb-ohci e block-mount anche i moduli kernel per il filesystem specifico.

Ovviamente da linuxiano consiglio ext4 con swap
{{{
opkg install kmod-fs-ext4
}}}

Ma so che molti windoziani (evitato il TM) preferiranno usare fat o ntfs (e mettetelo pure lo swap!)
{{{
opkg install kmod-fs-vfat kmod-fs-ntfs
}}}

La configuarazione dei mount point, indovinate un po, va fatta in /etc/config/fstab e non /etc/fstab!
Per la sintassi completa vi rimando al [[http://wiki.openwrt.org/doc/uci|wiki di openwrt]]

Se dovete partizionare o modificare le partizioni dovrete installare i pacchetti necessari anche a seconda delle fs selezionato:
{{{
opkg install fdisk mkdosfs
}}}

Dare nuova vita al modem Alice Gate.

Questa guida mostra come dispositivi molto comuni, usati principalmente come oggetti standardlone e con pochissime funzioni possano essere personalizzati ritornando a nuova vita con l'utilizzo di software open-source, dando fra l'altro grandi soddisfazioni.

In queste pagine spiegerò non solo come sostituire il firmware di default con una completa a potente distribuzione (OpenWrt) ma esploreremo anche modifiche hardware e configurazioni software impensabili con il firmware originale.

Written by: Claudyus per ninux.org Copyright: CC-BY-SA

Dal rifiuto al riuso

Come ben sappiamo ogni gestore telefonico ha il suo modem cappillarmente diffuso sul territorio nazionale, cambiare contratto telefonico in ultima analisi porta anche al cambiamento del modem che in realtà da lungo tempo ha smesso di essere un semplice de-modulatore e si è trasformato in un potente e versatile computer. Quindi, perchè buttare tutto questo hardware?

Perchè non riutilizzarlo evitanzo fra l'altro spreco di materie prime e acquistando gratis nuove funzionalità?

Una pratica comoscita come trashware ma applicata ad un ambito molto più spoecialistico.

Hack Alice Gate Voip 2 Plus Wi-Fi Business

Come già detto questa guida riguarderà la personalizzazione del modem in oggetto, prima di iniziare, comunque, sarà necessario aprirlo identificare la seriale e conosce un po meglio le potenzialità del dispositivo che abbiamo fra le mani.

Porta il tuo modem da hackerare a una delle domeniche nerd

Dal punto di vista hw si possono identificare:

il processore (sotto l'aletta quadrata)

  • una porta usb
  • 1 slot mini-pci
  • 2 porte voip (in rosso)
  • 1 porta per la connessione alla linea adsl (purtroppo questa funzionalià andrà persa)
  • 4 porte ethernet (in giallo) una serie di leds (in basso)

Nel seguito della guida ci occuperemo di ognuno di questi componenti.

http://wiki.openwrt.org/_media/inbox/alice-agpf.jpg

Cambiare il firmware con una distribuzione linux

Itentificata la seriale come mostrato in foto ci si può conettere tramite un convertitore RS232->3,3V un dispositivo di certo non comune ma fondamentale per qualsiasi esperienza di hack.

Se non disponi di questa seriale possiamo anche fermarci qui. Inoltre dopo l'hack si perderà la funzione di modem ADSL (il driver broadcom per l'utilizzo del modem adsl è proprietario e non tratteremo questo argomento)

Se siete disposti a perdere la funzionalità di modem adsl e avete la seriale non dovete far altro che proseguire.

Per installare il nuovo sistema operativo dovete connettere la seriale al modem quindi premere invio non appena appare il count-down del boot...

Se si vuole eseguire il babkup del firmware ti consiglio di leggere la pagina dedicata al modem sul wiki di openwrt. http://wiki.openwrt.org/inbox/alicegate_voip2_plus

Altrimenti dopo aver scaricato il firmware dall'indirizzo http://downloads.openwrt.org/snapshots/trunk/brcm63xx/openwrt-AGV2+W-jffs2-64k-cfe.bin e installiamolo sul modem usando il comando flashimage

Il comando flashimage tenterà di scaricare il file selezionato tramite tftp, sarà quindi necessario configurare un tftp server su un qualche pc della rete e connettere il modem alla stessa rete :D

Se si usa linux tutto è molto semplice, tramite dnsmasq possiamo eseguire un semplice tftp server senza perdersi in complicate configurazioni:

cd /tmp
wget http://downloads.openwrt.org/snapshots/trunk/brcm63xx/openwrt-AGV2+W-jffs2-128k-cfe.bin
ifconfig eth0 192.168.1.100
dnsmasq -d --enable-tftp --tftp-root=/tmp

A questo punto sul modem possiamo scrivere il comando:

flashimage openwrt-AGV2+W-jffs2-128k-cfe.bin

Il quale scaricherà l'immagine e la installarà nella flash di sistema restituendoci un sistema completamente diverso al prossimo riavvio.

Il primo avvio

Una volta installato OpenWrt il firstboot è diverso da tutti gli altri. Di default si avrà telnet attivo e nessuna password di root, inoltre il wifi disabilitato.

Per porre rimedio, sempre tramite seriale possiamo impostare un ip noto e quindi entrare nella sheel tramite telnet per completare le prime configurazioni.

Supponendo di disporre di un computer linux impostiamo 192.168.2.1 sulla modem tramite seriale e 192.168.2.6 sul nostro pc.

ifconfig eth1 192.168.2.1  #sul modem
ifconfig eth0 192.168.2.6  #sul pc

A questo punto entriamo nella sheel di sistema tramite telnet:

telnet 192.168.2.1

Tramite passwd impostiamo una password per l'utente root. Quindi tramite vi editiamo il file /etc/config/wireless abilitando il wireless, ovvero impostando a 0 la variabile option disable di default impostata a 1

Finite queste configurazioni possiamo riavviare il router alice. Accederemo quindi a una rete non protetta di nome OpenWrt e riaccederemo al modem tramite ssh root@192.168.1.1

Configurazini avanzate

Adesso che abbiamo un completo sistema operativo a bordo non dobbiamo far altro che installare e configurare i servizi che più ci interessano. Tenendo sempre a mente il wiki di OpenWrt per i dettagli sulle configurazioni proviamo adesso a configurare alcuni servizi

Installare nuovi pacchetti

E' possibile aggiungere nuove funzionalità installando nuove pacchetti tramite il packege manager opkg. Per chi ha familiarità con sistemi linux un semplice opkg help sarà più che chiarificatore.

Per iniziare scarichiamo la lista di pacchetti e installiamo alcuni pacchetti utili a priori:

opkg update
opkg install kmod-usb-ohci block-mount nano

Criptare la rete WPA/PSK

Per criptare la rete wi-fi tramite WPA sarà necessario aggiungere due opzioni al termine del file /etc/config/wireless Le opzioni sono:

option encryption psk
option key 'aggiungete_la_vostra_chiave_wpa_preferita_qua'

Dividere lo switch tra due reti

I puristi della terminologia informatica mi perdoneranno per questo titolo, che in realtà riguarda la creazione di VirtualLAN (vlan) separate all'interno dello stesso switch.

Comunemente un router routa i pacchetti della lan su una rete esterna chiamata wan.

In genere sono necessarie quindi due intefaccie fisicamente diverse (due schede di rete) per ruotare i pacchetti da una all'altra.

In relatà gli switch possono taggare i pacchetti in ingresso/uscita e quindi realizzare all'interno di un'unico dispositivo due reti distinte.

Se vogliamo usare il nostro alice come gateway sarà proprio il caso di dividere una porta (la numero 4, quella vicina la usb) dal resto dello switch. Come ho già scritto sul wiki di openwrt questa operazione si effettua tramite il tagging delle vlan ovvero modificando l'intero file /etc/config/network così:

config interface loopback                                                       
        option ifname   lo                                                      
        option proto    static                                                  
        option ipaddr   127.0.0.1                                               
        option netmask  255.0.0.0                                               
                                                                                
config 'switch' 'eth1'                                                          
   option 'enable'      '1'                                                     
   option 'enable_vlan' '1'                                                     
   option 'reset'       '1'                                                     
                                                                                
config 'switch_vlan' 'vlan0'                                                    
   option 'vlan'       '0'                                                      
   option 'device'     'eth1'                                                   
   option 'ports'      '0 1 2 5*'                                               
                                                                                
config 'switch_vlan' 'vlan1'                                                    
   option 'vlan'       '1'                                                      
   option 'device'     'eth1'                                                   
   option 'ports'      '3 5t'                                                   
                                                                                
config interface lan                                                            
        option ifname   eth1.0 
        option type     bridge                                                 
        option proto    static                                                  
        option ipaddr   192.168.5.1                                             
        option netmask  255.255.255.0                                           
        option nat      1                                                       
                                                                                
config 'interface' wan 
    option 'ifname'  'eth1.1'                                                   
    option 'proto'   'dhcp'

IPV6

Una rete che si rispetti deve supportare ipv6 oramai.

Per lo scopo installiamo radvd e aiccu per realizzare un tunnel ipv6 verso sixxs o servizio equivalente:

opkg install radvd aiccu

I servizi vanno configurati usando /etc/config/radvd e /etc/config/aiccu rispettivamente.

Sul wiki di sixxs c'è un'ottima descrizione di come configurare il tunnel e la subnet.

Hard-disk su USB

Per poter montare un hdd è necessario oltre ad installare kmod-usb-ohci e block-mount anche i moduli kernel per il filesystem specifico.

Ovviamente da linuxiano consiglio ext4 con swap

opkg install kmod-fs-ext4

Ma so che molti windoziani (evitato il TM) preferiranno usare fat o ntfs (e mettetelo pure lo swap!)

opkg install kmod-fs-vfat kmod-fs-ntfs

La configuarazione dei mount point, indovinate un po, va fatta in /etc/config/fstab e non /etc/fstab! Per la sintassi completa vi rimando al wiki di openwrt

Se dovete partizionare o modificare le partizioni dovrete installare i pacchetti necessari anche a seconda delle fs selezionato:

opkg install fdisk mkdosfs