Así de morboso, profético y conspiranoico como suena:

Si Cristina Fernandez de Kirchner llegase a ganar las elecciones del próximo año 2011, necesitaré pruebas científicas, comprobables y fehacientes de que el muerto realmente está muerto, de no haberlas siempre me quedará la duda.

Tantos buscandole la quinta pata al gato a la muerte de Kirchner que ya me hicieron picar la curiosidad...

Tantos buscandole la quinta pata al gato a la muerte de Kirchner que ya me hicieron picar la curiosidad...

Perdón por el off-topic. No tiene nada que ver con la temática del Blog y no me gusta meterme en política pero como no tengo cuenta en Twitter…

Que ifconfig, iwconfig, iwlist, aircrack, aireplay y los chotoscientos mil comandos para poder crackear una mísera clave WEP y robarle internet al vecino. Ya era hora de que alguno se preguntara ¿Para que tanto lío? y automatizara todo el proceso.

WiFite en acción en modo consola y en modo GUI

WiFite en acción en modo consola y en modo GUI

Diseñado originalmente para BackTrack, la distribución de Linux que recomienda Kevin Mitnick, pero aplicable a cualquier otra distribución por tratarse de un script programado en python, viene WiFite a salvarnos las papas a todos los que nos da paja ponernos a crackear una red Wi-Fi.

WiFite es un crackeador automático de redes inalámbricas pero con el añadido de ser multitarea: ¿Tenés muchas redes inalámbricas cerca? Wifite te las crackea a todas al mismo tiempo (siempre y cuando se pueda).

De las bondades del script resaltan:

  • Ordena los access points por dB, intenta crackear primero los que tienen mejor nivel de señal.
  • Automáticamente desconecta clientes de redes inalámbricas ocultas parar hacer visible el SSID de la misma.
  • Modo anónimo: Cambia la MAC Address aleatoriamente antes y después de cada ataque. Que te rastree montoto.
  • Muestra un sumario de todos los resultados obtenidos al terminar de trabajar. Muestra cualquier clave que hubiera obtenido. Guarda los resultados en un log para analisis posterior.

Requerimientos:

  • Tu placa de red wireless tiene que poder funcionar en modo monitor y permitir inyección de paquetes, de no ser así vas a tener que parchar el driver o usar BackTrack o alguna distro similar que ya viene con todos los drivers pre-parchados.
  • Aircrack-NG 1.1 o superior
  • Python-tk
  • Macchanger

Instalación:

wget -O wifite.py http://wifite.googlecode.com/svn/trunk/wifite.py && chmod +x wifite.py

Complicadísimo, ¿Eh?
Lo estoy probando en Gentoo, a ver como me va.

Típico caso: Recuperación de datos, el medio ha sido sobreescrito con información reciente, con lo que no todos los archivos recuperables a bajo nivel salen sanos.

Lo que haría todo el mundo es abrir archivo por archivo de a uno verificando cuales estan sanos y cuales rotos lo que por resumirlo de alguna manera que englobe totalmente el concepto que quiero transmitir: Es un reverendísimo dolor de bolas.

Acción y efecto de probar todos los archivos recuperados uno por uno para detectar de forma manual cuales están corruptos

Acción y efecto de probar todos los archivos recuperados uno por uno para detectar de forma manual cuales están corruptos

Buscar de entre los miles de archivos que nos puedan interesar cuales salieron sanos y cuales se corrompieron de manera manual como hice toda la vida es la parte que mas tiempo y recursos (mentales) consume. Por suerte alguien en los foros de Gentoofuente de eterna sabiduría informática si las hay– tuvo la misma inquietud pero además fué un poco mas inteligente que yo, quería hacerlo automáticamente. Ya de entrada venía bien encaminado cuando dijo:

Hola,

Tengo un respaldo de archivos antiguos de mi trabajo (principalmente MSOffice), en algún momento varios archivos se corrompieron, por lo que hay archivos que se pueden abrir y otros que no hay caso.

Quiero eliminar los archivos corruptos.

Para diferenciarlos de los buenos se me ocurrió utilizar el comando «file»

Ahí fué que se me encendió la lamparita y vengo utilizando este método automático desde entonces exitosamente. Es que el comando «file«, puede diferenciar a la perfección un tipo de archivo de otro con lo que cualquier archivo que estuviera corrupto, ya sea una imagen, un video, música o un documento de office en lugar de ser identificado como corresponde, simplemente figurará como de tipo «data«.

Tan sencillo como eso, eliminar del directorio que contiene los archivos recuperados, todos aquellos que figuren como de tipo «data«, a lo que Stolz, moderador del foro y mago programador de Bash respondió con este sencillo script que navega subdirectorios recursivamente eliminando todos los archivos que sean de tipo «data»:

find . -type f | while read linea; do
  tipo=`file -b "$linea"`
  if [[ $tipo == "data" ]];then
    rm  "$linea"
  fi
done

Paso a paso:

Se crea un archivo dentro de /usr/bin para que contenga al script, lo llamaremos «borrador_de_archivos_corruptos«:

nano /usr/bin/borrador_de_archivos_corruptos

Se copia el contenido del script y se pega dentro del archivo que estamos editando con nano (o el que sea tu editor de texto de cabecera).

Se sale guardando los cambios.

Se convierte el archivo en ejecutable:

chmod +x /usr/bin/borrador_de_archivos_corruptos

Y ya estça listo para usar.

IMPORTANTE: Ejecutar borrador_de_archivos_corruptos únicamente dentro de la carpeta que contiene la información salvada del proceso de recuperación de datos. Ejecutar el script fuera de la misma te va a borrar archivos que son de tipo «data» por que tienen que serlo, te va a hacer mierda todo lo que encuentre a su paso, para que se entienda.

Ya tenés otro motivo mas para tener un Linux siempre a mano.