Recuperando el buscador por defecto en Chrome para Windows

Hace unos días mi hijo (12 años), visitando The Pirate Bay, clicó sobre uno de los banners verdes donde pone Download y se descargó e instaló un programa que modificó el buscador por defecto de los tres navegadores que tengo instalados en el ordenador de casa: IE, Firefox y Chrome. El buscador era search.gboxapp.com :(.

Mi hijo, cuando se dio cuenta, procedió rápida y diligentemente a desinstalar el programa de marras, pero una vez desinstalado los navegadores mantuvieron la búsqueda por defecto usando gboxapp.

Cuando llegué a casa, me puse a intentar solucionar el desaguisado en los tres navegadores con un resultado curioso:

  • En IE pude arreglarlo todo a través del menú.
  • En Firefox a través el menú no se podía cambiar el buscador por defecto, con lo que tuve que ir a about:config y allí, buscando «search», me dediqué a poner la opción por defecto en todas aquellas entradas cambiadas, solucionando así el problema.
  • Y en Chrome… Por el menú imposible. No había manera de seleccionar un nuevo buscador por defecto, el programa de marras había deshabilitado esa opción y no se podía volver a habilitar de ninguna manera. Desinstalé y reinstalé Chrome. Nada. Al final, la solución fue buscar en el registro de Windows todas las apariciones de Chrome (y hay muchas) hasta encontrar la clave que arreglase el desaguisado. La solución: en HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ hay una clave llamada DefaultSearchProviderEnabled que estaba a 0. Poniéndola a 1 se soluciona el problema, se puede cambiar el navegador por defecto y borrar el incorporado a la fuerza.

Espero que a alguien le sirva de ayuda. Y que Google tome nota.

iPad

Acabo de poner mis manazas encima de un iPad, en un Best Buy en Plantation, Florida.

Los 10 minutos que he dedicado a probar el aparato no dan para mucho, pero al menos me han dado para poder comentar las cuatro cosas que más me han llamado la atención:

  • Pesa, demasiado para mi gusto. No es cómodo para mantenerlo sujeto como un libro, así que su postura ideal es apoyado en algún sitio, tal vez encima de las piernas o sobre una mesa.
  • La pantalla es fantástica. Es el aparato perfecto para enseñar fotografías a la familia. Déjate de pantallas de ordenador, iPods o inventos similares.
  • El teclado me ha parecido poco preciso e incómodo de usar. Evidentemente mucho mejor que el teclado de un iPod, pero mucho, mucho, mucho más incómodo que el teclado del Netbook que estoy usando ahora.
  • He navegado un rato con él usando la wifi de la tienda. La experiencia es muy positiva, aunque las pestañas de «en este número» y «lo más leído» de la web de Mosaic fallaban (simplemente no aparecían). Pero tampoco tengo claro el porqué.
  • También he probado algunos juegos que usaban el acelerómetro. Impresionante, pero el exceso de peso del aparato no invita a jugar mucho rato.
  • La aplicación de lectura de libros está muy bien pensada: cuando sales de la aplicación te mantiene en la página por la que ibas, es fácil pasar páginas adelante o atrás, es rápida. Sin embargo ni el peso ni la pantalla son lo más adecuado para leer un libro.
  • No he tenido la oportunidad de ver un vídeo en el iPad así que no puedo opinar al respecto. Pero viendo como se ven las fotografías, es de suponer que los vídeos también tienen que verse muy bien.

A pesar de los inconvenientes, el «aparatito» tiene su atractivo. Con 3G y una tarifa en condiciones, puede ser un buen sustituto de un netbook, mirándolo, eso sí, desde el punto de vista de la navegación por internet. Y para ver fotos sin duda inmejorable. Pero poco más. Un aparato que si alguien me lo quiere regalar lo cogeré con gusto, con mucho gusto. Pero si tengo que pagar por él, de momento, con lo poquito que he probado, va a ser que no.

XSS en algunos temas de WordPress

Hace un par de días un compañero de trabajo me avisaba de que la web de Mosaic, en la que hago «más o menos» de responsable técnico tenía un problema de XSS (inyección de código) en el formulario de búsqueda.

Alarmado, rápidamente actualicé la versión de WordPress a la 2.9.1, pero no conseguí solucionar el problema. La prueba era fácil, poniendo este sencillo script en el formulario de búsqueda

<script>alert("hola");</script>

Se abría un cuadro de diálogo de alerta.

Hoy, con tranquilidad, me he dedicado a investigar. El error se produce sólo en algunos blogs de WordPress, no en todos. Por tanto no es un problema del gestor de contenidos.

Después de algunas pruebas y algunos cambios, el error ha aparecido. Es un problema de algunos temas de WordPress y es muy fácil de arreglar. En el formulario de búsqueda de los temas que tienen la vulnerabilidad podemos ver algo parecido a esto:

<label for="s"><input type="text" name="s" id="s" size="50" maxlength="200" value="<?php echo get_search_query(); ?>" /></label>

El problema es el echo del código php. Eliminándolo se elimina el problema. Fácil :)

Actualización: Tal como apuntan Javier y Oscar en los comentarios, el problema no es tanto del echo (que permite mostrar la cadena buscada) como el hecho que no se filtre adecuadamente get_search_query().

Por tanto, tal y como propone Javier, en vez de eliminar el echo la solución más elegante es <?php echo htmlentities(get_search_query()); ?>

Mi hijo prefiere Chrome

Tengo un hijo de 9 años (atentos al autor del post… :P ) usuario de internet tanto en nuestra casa como en casa de sus abuelos. En casa, yo uso Firefox y Chrome, Firefox como navegador principal y Chrome para Google Maps y para cuando tengo que consultar una cuenta de GMail que no es la que uso habitualmente. Cuando mi hijo se pone en mi ordenador, usa el navegador que tengo abierto y, si no, se lo abre el solo.

En casa de los abuelos tienen Firefox (y el inevitable IE), así que el niño usaba Firefox o Chrome en casa y Firefox en casa de los abuelos, aunque desde hace un tiempo venía dándome cuenta que si era él el que abría el navegador en casa solía escoger Chrome.

Mis sospechas se vieron confirmadas hace unos días cuando, estando en casa de uno de los abuelos, mi hijo me preguntó si podía instalar Chrome.

¿Porqué un niño de 9 años que habitualmente usa Firefox puede querer instalar Chrome? Por dos motivos. El más importante es que tarda mucho menos en cargarse que Firefox, pero, además, la pantalla inicial de Chrome le simplifica el acceso a las páginas que más usa (aun le cuesta un poco encontrar las teclas en el teclado).

Ahora, en casa de los abuelos el ordenador tiene tres navegadores: El IE, el Firefox que usamos los adultos y el Chrome que usa el nieto.

Ahí queda eso :)

Reventar passwords WEP con un Acer Aspire One

WEP es un [poco seguro] sistema de cifrado usado en muchas redes Wi-Fi domésticas de España. Suele ser el método por defecto en la mayoría de routers de las grandes operadoras, lo que facilita su gran uso a pesar de su inseguridad.

Obtener la contraseña de una red Wi-Fi encriptada con WEP es fácil y está ampliamente documentado, así que, de hecho, no vamos a explicar nada nuevo. Sin embargo, estos días hemos estado haciendo algunas pruebas con un Acer Aspire One y dada la popularidad de este ordenador hemos pensado que podía ser interesante explicar cómo lo hemos hecho.

Aclarar que se explica sobre todo para que toméis conciencia de lo fácil que es reventar la Wi-Fi que tenéis en casa y que, naturalmente, es ilegal acceder a redes ajenas sin autorización. Nosotros las pruebas las hemos hecho con la red de la oficina, a la que, evidentemente, ya teníamos acceso.

No cualquier ordenador puede ser usado para obtener una contraseña WEP: es necesaria una tarjeta de red capaz de actuar en modo monitor y no todas lo permiten. Precisamente la de nuestro Acer Aspire One sí permite hacerlo, así que es este ordenador con el que hemos hecho las pruebas. No todos los netbooks ni portátiles disponen de una tarjeta así. De hecho, es probable que corran por ahí Aspire Ones que no lo permitan. Pero nada os impide hacer el experimento con el primer ordenador Wi-Fi que tengáis a mano.

Para hacer nuestras pruebas nos basamos en el post How to Crack a Wi-Fi Network’s WEP Password with BackTrack de Lifehacker, que seguramente sea una mejor opción para quien no tenga problemas con el inglés.

El primer paso es bajarse la distribución BackTrack 3 (dedicada especialmente a aquellos que quieran dedicarse a los «test de penetración») e instalarla en un drive USB. Se puede hacer de diversas maneras, nosotros hemos usado UNetbootin, desde donde puedes seleccionar directamente la distribución que te interesa e instalarla en un USB de arranque (de hecho, Unetbootin permite hacer eso mismo con docenas de distribuciones, con lo que es una herramienta muy práctica).

Una vez tenemos el USB con BackTrack 3 conectado al portátil lo ponemos en marcha y pulsamos F12 para seleccionar el arranque a partir del USB.

Cuando arranca BackTrack es importante seleccionar la opción de arranque con VESA, porque si no no se cargará el entorno gráfico que vamos a necesitar dentro de un rato…

Una vez tenemos el entorno de ventanas abierto, debemos abrir un terminal y ejecutar las siguientes instrucciones (ojo, son específicas para el Acer Aspire One):

airmon-ng stop ath0
ifconfig wifi0 down
macchanger --mac 00:11:22:33:44:55 wifi0
airmon-ng start wifi0
airodump-ng ath0

Descargar este conjunto de instrucciones en un script.

Con todo esto lo que estamos haciendo es poner la tarjeta de red en modo monitor y arrancando una aplicación que nos permite ver qué redes tenemos a nuestro alcance (las partes específicas son el ath0 y el wifi0: con otros portátiles puede que haya que cambiarlos por otros valores…).

Llegado a este punto, en la ventana que tenemos abierta aparecerán todas las redes accesibles con, entre otros (listo sólo los más importantes) los siguientes datos:

BSSID
la dirección mac del router
PWR
la potencia de la señal
#Data
que nos indica si tiene transmisión de datos
CH
el canal
ENC
el tipo de encriptación
ESSID
el nombre de la red

Con esa información podemos seleccionar cualquier red «asegurada» con WEP. Cuando tengamos claro qué red queremos, hacemos un CTRL+C, copiamos la dirección BSSID y escribimos lo siguiente:

airodump-ng -c CH -w nombre_archivo --bssid BSSID ath0

Descargar esta instrucción en un script.

Donde CH es el canal y BSSID es la dirección MAC, los dos datos obtenidos de la aplicación anterior. Los datos que obtenga se guardarán en un archivo con el nombre nombre_archivo. Este programa se dedicará a capturar paquetes y guardarlos en el archivo, lo cual nos permitirá, más adelante, obtener la clave. Podremos ver cuántos paquetes ha obtenido en la columna #Data.

Pero para poder conseguir la clave necesitamos un mínimo de 10.000 paquetes y eso puede tardar mucho en conseguirse, así que el siguiente paso es forzar al router a enviar paquetes.

Esto lo haremos en una nueva ventana de terminal. Así, sin dejar de correr el airodump-ng, y en una nueva ventana, ejecutaremos lo siguiente:

aireplay-ng -1 0 -a BSSID -h 00:11:22:33:44:55 -e ESSID ath0
aireplay-ng -3 -b BSSID -h 00:11:22:33:44:55 ath0

Descargar este conjunto de instrucciones en un script.

Donde BSSID y ESSID deben substituirse por sus valores correspondientes.

La última instrucción genera tráfico, con lo que el contador de paquetes se dispara y llega rápidamente a la cantidad necesaria. Ojo, a veces le puede costar algo generar el tráfico, dependiendo de la potencia de la red y de si tiene tráfico o no (si no tiene tráfico cuesta mucho más).

Finalmente, si todo ha ido bien, queda parar los programas (con CTRL+C) y obtener la clave. Esto último se hace con la siguiente instrucción (que se puede ejecutar en cualquiera de las dos ventanas):

aircrack-ng -b BSSID nombre_archivo

Descargar esta instrucción en un script.

Si todo va bien, aircrack-ng nos devolverá la clave de la red. Si va mal nos informará de que ha fallado y que necesita más paquetes para reventar la clave.

Como puede verse, no es nada complicado obtener la contraseña de una Wi-Fi encriptada con WEP, con lo que vale la pena echarle un ojo al manual de instrucciones de nuestro router y cambiar el estándar de seguridad de WEP a WPA…