Hacking: Fonera

De Daniel Pecos

Contenido

Conseguir acceso SSH a la fonera con firm original FON

  1. Enchufo la fonera pero sin conectar el cable de red (muy importante!)
  2. Me conecto a la red wifi MyPlace
    1. Otra alternativa es configurar mi IP como estática y asignar esta: 169.254.255.2. En este caso será necesario conectar la fonera con el PC mediante un cable de red (es importante que la fonera no obtenga acceso a internet).
  3. Accedo a http://192.168.10.1 mediante un navegador web.
    1. Si utilizamos la conexion alámbrica, utilizar esta URL: http://169.254.255.1
  4. Aplicamos kolofonium: configuramos la fonera para que utilice el DNS 88.198.165.155. Esta configuración dependerá de la red local de cada uno, para mi caso, tengo una red 192.168.0.0/24 y el gateway es el 192.168.0.1 (Usuario/Password: admin/admin):
       Mode Static
       IP: 192.168.0.27
       Mask: 255.255.255.0
       GW: 192.168.0.1
       DNS: 88.198.165.155
  1. Conectamos un cable de red a la fonera para que tenga acceso al gateway (y por tanto a Internet, ahora sí)
  2. Reiniciamos la fonera.
  3. Volvemos a conectar nuestra wifi a la red MyPlace
  4. Conectamos con un cliente SSH a la IP 192.168.10.1 con usuario/password root/admin
  5. Una vez dentro de la fonera, debemos realizar las modificaciones necesarias para que el acceso SSH sea permanente, así como bloquear las actualizaciones automáticas de FON.

RedBoot

Conectamos via SSH

   cd /tmp
   wget http://fonera.info/camicia/openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma
   mtd -e vmlinux.bin.l7 write openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma vmlinux.bin.l7
   reboot

Cuando arranque la fonera, volvemos a conectar via SSH

   cd /tmp
   wget http://fonera.info/camicia/out.hex
   mtd -e "RedBoot config" write out.hex "RedBoot config"
   reboot 

Instala un nuevo firmware desde el redboot

Acceso al redboot

Conecta directamente la fonera al PC con un cable de red cruzado o mediante hub/switch y configura tu interfaz de red asignando la IP 192.168.1.166. Reinicia la fonera. Tan pronto como comience a responder ante ping (ping -t 192.168.1.254), accede vía telnet por el puerto 9000:

   telnet 192.168.1.254 9000

Habilitado del SSH de forma permanente

Activamos el servicio SSH en el arranque del sistema:

> ln -s /etc/init.d/dropbear /etc/init.d/S50dropbear

Abrimos los puertos referentes al SSH (puerto 22) en la Fonera. Para ello hay que comentar las líneas que lo bloquean en el fichero de configuración del firewall:

> vi /etc/firewall.user

Por último se debe editar el fichero /bin/thinclient para evitar que FON pueda actualizar o modificar la Fonera sin que nos demos cuenta. Al final de dicho fichero encontraremos lo siguiente:

. /tmp/.thinclient.sh

Debiendo sustituirlo por:

### Don't execute code from FON
# . /tmp/.thinclient.sh
cp /tmp/.thinclient.sh /tmp/thinclient-$(date '+%Y%m%d-%H%M')

Firmwares

Instalar OpenWRT - Kamikaze

   ip_address -l 192.168.1.254/24 -h 192.168.1.166
   fis init
   load -r -b %{FREEMEMLO} openwrt-atheros-2.6-vmlinux.lzma
   fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7
   fis free
       ** RESULTADO = 0xA87E0000 - 0xA80F0000 => 0x6f0000
       http://ostermiller.org/calc/calculator.html
   load -r -b %{FREEMEMLO} openwrt-atheros-2.6-root.squashfs
   fis create -l RESULTADO rootfs
       ** fis create -l 0x6f0000 rootfs
   fis create -f 0xA83D0000 -l 0x00010000 -n nvram
   fis load -l vmlinux.bin.l7
   exec

Esperar unos minutos a que el sistema arranque y hacer telnet a la IP 192.168.1.1. Desde allí, ejecutar passwd para fijar una contraseña para el root y habilitar automáticamente el acceso SSH y deshabilitar el acceso telnet.

Instalar DD-WRT

Obtén la ultima versión disponible para la fonera, y copia los archivos root.fs y vmlinux.bin.l7 en el directorio de tu servidor tftp.

Ejecuta las siguientes instrucciones desde el redboot:

   ip_address -l 192.168.1.254/24 -h 192.168.1.166
   fis init
   load -r -v -b 0x80041000 root.fs
   fis create -b 0x80041000 -f 0xA8030000 -l 0x002C0000 -e 0x00000000 rootfs
   load -r -v -b 0x80041000 vmlinux.bin.l7
   fis create -r 0x80041000 -e 0x80041000 -l 0x000E0000 vmlinux.bin.l7
   fis create -f 0xA83D0000 -l 0x00010000 -n nvram
   reset

(Cada fis create puede llegar a tardar 20 minutos)

Conectar a la red wifi dd-wrt

Introducir en el navegador la dirección http://192.168.1.1 (Usuario/password root/admin)

http://www.dd-wrt.com/wiki/index.php/FON_Hotspot

Herramientas personales