Detectar intrusos en tu wifi desde Android o iOS

En el pasado vimos cómo detectar intrusos en tu wifi con Windows (ya hace años de eso) y desde Ubuntu. Pero ¿y si eres un usuario que tiene sólo tablet y móvil? ¿puedes saber si te están vampirizando la wifi? Puedes. Existen varias apps para ello, pero creo que la más sencilla es Fing, que además en su versión más básica es gratis.

Fing es una aplicación que te permite escanear la red a la que estás conectado, y por suerte existen versiones para varios sistemas operativos. De hecho puedes usar también Fing desde un portátil o sobremesa ya que también tiene versiones para Linux, Windows y MacOSX.

Centrándonos en la versión móvil, no puede ser más sencilla de usar: la puedes descargar desde aquí y, una vez instalada, basta ejecutar la aplicación para ver qué equipos hay conectados a la red. Los móviles tendrán un icono distintivo, al igual que el router o punto de acceso al que esté conectado el teléfono. Una vez veas la lista puedes calcular si ves algo raro, si hay algún equipo que no debiera estar conectado. En caso de que haya un invitado indeseado la mejor opción es que cambies la contraseña de la wifi.

Fing captura

Pulsando encima de cada dispositivo conectado podrás tener varias opciones: una es ver la MAC del dispositivo, por si quieres añadir a tu router una regla de filtrado por MAC para impedir que ese equipo se conecte (aunque la MAC puede cambiarse, así que no es un método infalible para evitar conexiones indeseadas). Otra es la de etiquetar a ese dispositivo con un nombre a tu elección (por ejemplo “ordenador del salón“) para facilitar su identificación cuando ejecutes el app. También puedes realizar un escaneado de puertos o lanzar un ping. Si decides hacerte una cuenta puedes disponer de notificaciones cuando alguien se conecte y más opciones.

Como ves es una solución fácil para tener controlado quién accede a tu wifi. Por cierto, que los creadores de Fing están trabajando en Fingbox, un dispositivo de hardware que facilitaría la expulsión de intrusos de tu red.

Anuncios

Creando contraseñas en Linux con mkpasswd

El programa mkpasswd, que es parte del paquete whois, nos permite generar contraseñas complejas y seguras a través de diversos algoritmos criptográficos.

Si no lo tienes instalado puedes agregar el paquete whois tal que así:

sudo apt-get update
sudo apt-get install whois

Una vez tengamos whois instalado ya podemos hacer uso de mkpasswd. Veamos que opciones tiene:

  • -m: Nos permite elegir el método con el que encriptaremos: entre des, md5,sha-256 y sha-512.
  • -5: Es una forma abreviada para seleccionar el método md5, sería equivalente a usar -m md5.
  • -S: Una cadena que usar como salt para el password.
  • -R: Definimos el número de rondas que se usarán, si son aplicables.
  • -P: Lee la contraseña del descriptor de fichero que le pasemos en lugar de hacerlo de /dev/tty
  • -s: Método acortado equivalente a -P 0

Por ejemplo:

#usamos el algoritmo sha-256
#pasamos como sal la cadena salamos1
mkpasswd -m sha-256 -S salamos1

#lo mismo pero con md5
mkpasswd -m md5 -S salamos1

Una captura viendo distintas opciones, distintos algoritmos y comprobando también cómo el salt no permite ciertos carácteres:
mkpasswd

Reparar Sambacry (CVE-2017-7494) en Ubuntu

Tras todo el tema de Wannacry atacando sistemas Windows hace un par de semanas ahora aflora otra vulnerabilidad que afecta al protocolo SMB en Samba, afectando a las versiones 3.5 y posteriores, lanzada en marzo de 2010. El fallo ha sido reportado y descrito por Samba en su sitio oficial como CVE-2017-7494.

Ya se ha reparado el problema, así que si no tienes actualizado Samba es el momento de hacerlo. Las versiones para Ubuntu en las que ya se ha aplicado el parche son las siguientes:

  • 17.04: samba 2:4.5.8+dfsg-0ubuntu0.17.04.2
  • 16.10: samba 2:4.4.5+dfsg-2ubuntu5.6
  • 16.04 LTS: samba 2:4.3.11+dfsg-0ubuntu0.16.04.7
  • 14.04 LTS: samba 2:4.3.11+dfsg-0ubuntu0.14.04.8

Para actualizar Samba y ver qué versión tienes instalada en tu Ubuntu puedes usar los siguientes comandos:

#instalar
$ sudo apt-get update
$ sudo apt-get install samba

#y para comprobar la versión
$ sudo apt-cache show samba

Si por lo que sea no puedes actualizar Samba comprueba que tengas SELinux habilitado, en caso afirmativo ya deberías estar protegido contra la ejecución de código remoto en tu equipo. También puedes poner la opción noexec en las unidades compartidas por Samba para evitar la ejecución de binarios en las mismas.

En la sección [global] del fichero smb.conf también puedes añadir la siguiente línea y luego reinciar el servicio:

nt pipe support = no

Ojo con esto último, puede dar problemas con los permisos para acceder a carpetas a los usuarios de Windows. Por ejemplo, les forzaría a poner la dirección completa del directorio compartido, no bastando sólo con la del directorio raíz.

Añadiendo una capa extra de seguridad al login de PHPMyAdmin

He visto este artículo en Tecmint esta semana y he pensado que no estaría de más comentarlo por aquí, por aquello de que muchos de los que llegáis a este blog es porque buscáis una solución que no esté en inglés sino en castellano.

En fin, la idea es poner protección con contraseña a la propia página de login de PHPMyAdmin, esto nos obliga a poner dos contraseñas para entrar en lugar de una. Puede paracer paranoico, pero recuerda que es el corazón y el cerebro de vuestro servidor web. Como es habitual nos centraremos en la versión para Debian/Ubuntu. Los ejemplos los copio y pego del artículo original.

Bueno, lo primero es añadir estas líneas al fichero /etc/apache2/sites-available/000-default.conf

<Directory /usr/share/phpmyadmin>
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Directory>

Lo siguiente será usar htpasswd para generar un fichero de contraseña para una cuenta que tendrá el acceso autorizado a la página de login. Usaremos el parámetro -c para que cree la cuente o, en caso de que exista, se la cargue y genere una nueva. En el ejemplo usan tecmint como  usuario, así que copio tal cual:

# htpasswd -c /etc/apache2/.htpasswd tecmint

Tras eso nos pedirá que insertemos la nueva contraseña dos veces. El siguiente paso nos lleva  a modificar los permisos sobre el fichero para que ningún usuario indeseado pueda leerlo:

# chmod 640 /etc/apache2/.htpasswd
# chgrp www-data /etc/apache2/.htpasswd

De esta forma si intentamos acceder a nuestro PHPMyAdmin nos encontraremos con lo comentado: nos pide una contraseña para poder acceder al login, donde tendremos que meter otra para entrar. Como recomendación, para que esto sea útil no uséis el mismo usuario y contraseña para las dos.

Usando rel=”noopener” para evitar ataques crossdomain en páginas abiertas con target=”_blank”

Pues era un tema que desconocía hasta que lo vi ayer en el blog de Chema Alonso, pero por lo que veo lleva rulando al menos desde el mes de mayo. ¿De qué estoy hablando? Te comento con un ejemplo (aunque puedes leerlo mejor explicado en los links previos): supongamos que quieres que un link se abra en una nueva pestaña, así que le pones target=”_blank”. Al hacerlo de esta forma la página que has abierto en la nueva pestaña, mediante el selector window.opener puede modificar cosas a base de Javascript en la página desde la que se abrió el enlace. La mayoría de navegadores modernos limitan las posibilidades de esto y bloquean muchas de las acciones invocadas desde la ventaja hija sobre la padre, pero lo que se han dejado sin proteger es que dicha ventana hija puede acceder a la propiedad window.opener.location, y de esta forma mandarnos a una página desde la que hacer un ataque de phising.

¿Solución? Bueno, si es un enlace basta con el modificador noopener y el noreferrer:

<a href="paginanueva.html" target="_blank" rel="noopener noreferrer"/>

El noreferrer es necesario porque Mozilla Firefox no soporta noopener.

¿Y qué pasa si abrimos la ventana mediante Javascript utilizando el método window.open()? Pues que nos encontramos la misma vulnerabilidad. ¿Cómo la solucionamos? Tal que así (copio este ejemplo):

var newWnd = window.open();
newWnd.opener = null;

Cómo destruir un disco duro

Bueno, con el tema de la destrucción de los discos duros del ordenador de Bárcenas por parte del Partido Popular y las declaraciones de Celia Villalobos seguro que más de uno va a buscar en Google cómo destruir un disco duro. Desde luego el método usado por el PP está bien para conseguir la destrucción de los datos de los discos: 35 formateos, rallado de la superficie y martillazo a tentetieso. Creo que es el protocolo determinado por INTECO. Pero siendo sinceros, aunque sí es un método eficaz creo que no ha sido muy eficiente. A mi alguna vez me ha tocado destruir algunos que tenían que ir para el punto limpio.

Como primera nota: aunque quede muy de pro y de hacker de peli, usar un imán no es una solución. Hace años que los discos duros vienen muy bien apantallados contra campos magnéticos, así que necesitarías uno muy potente para poder destruir los datos. Por lo que, sacando que vivas cerca de un desguace de coches que tenga un electroimán muy potente, jugar a ser Magnus Lensherr no es la mejor opción.

Habría que pensar en qué interés puede tener alguien en recuperar tus datos para calcular cómo de concienzuda debe ser la destrucción de los discos. Recuperar datos tras varios formateos es complicado, por lo que para el usuario medio puede ser una solución. Tras una docena de formateos a bajo nivel el proceso de recuperación requiere de procedimientos largos y costosos que para la mayoría de usuarios son complejos en extremo, así que para la mayoría de la gente esto debería valer. Por otra parte, puede que sea más rápido soltarles un par de martillazos contundentes y tirarlos a un cubo de agua que formatear varias veces en profundidad. No garantiza al 100% la destrucción del disco, pero seguramente lo dañe lo suficiente para que no merezca la pena el esfuerzo de la recuperación.

Si lo que tienes entre manos es un SSD la cosa es básica: martillazo limpio. Le pegas hasta que se te canse la mano, que si bien estos discos son más fiables en el tema de impactos mientras están en funcionamiento, contra golpes directos y con mala leche caen antes. Si casca una celda de memoria ya queda irrecuperable. Por cierto, hay modelos que traen un sistema de autodestrucción que mediante un botón o incluso el uso de un comando envían una señal al disco para forzar que se sobrecargue y se queme.

Además existen máquinas especificas para realizar este trabajo, como trituradoras o prensas de discos. Eso sí, las buenas valen una pasta que no compensa sacando que tengas una empresa dedicada al tema de la seguridad y destrucción de documentos. Es más, las de gama más baja creo que andan por los 4000 euros hoy por hoy.

En el caso de Bárcenas la cosa es distinta. Ahí hablamos de datos sensibles, que interesan a la justicia que investiga el caso, a los partidos de la oposición y a millones de ciudadanos españoles. También debería interesar a la prensa española, pero están a lo suyo, a por el mendrugo. En fin, que no estamos hablando de un usuario cualquiera, aquí es de suponer que se dispondrían de los métodos más completos para la recuperación de datos.

En ese caso, ¿si tengo una información sensible y quiero asegurarme de que nadie accede a ella tras descartar el disco duro? Pues lo mejor es seguir el ejemplo de los profesiones, véase lo que hicieron los servicios de inteligencia del Reino Unido cuando fueron a destruir los discos duros del diario The Guardian con la información filtrada por Snowden: abrir los discos duros, sacar los discos magnéticos que los forman, lijarlos a base de bien con una lijadora, taladrarlos varias veces y finalmente quemarlos. Este proceso garantiza la destrucción de la información. También podría valer machacarlos a martillazos tras el lijado, o aplicarles un soplete sobre la superficie. Por eso digo que fueron efectivos, pero no muy eficientes ya que si se va a destruir el disco duro físicamente no acabo de ver la lógica a gastar tanto tiempo en realizar 35 formateos.

Aquí te dejo un vídeo con dos tíos vestidos como predicadores mormones explicando cómo destruir un disco duro:

Vamos con la última duda, que seguramente a muchos les interese ¿es normal destruir un disco duro? Sí, es normal en caso de que se trate de un disco que va a desecharse. ¿Obliga la LOPD a ello? En caso de que vaya a desecharse el disco, sí, lo indica el artículo 92.4 del Real Decreto 1720/2007 aunque de una forma no muy clara: “Siempre que vaya a desecharse cualquier documento o soporte que contenga datos de carácter personal deberá procederse a su destrucción o borrado, mediante la adopción de medidas dirigidas a evitar el acceso a la información contenida en el mismo o su recuperación posterior. “. Por otra parte la norma DIN 66399 nos da unas directrices más claras de cómo hacerlo según el nivel de confidencialidad de los datos y el tipo de soporte a destruir. ¿Es obligatoria la destrucción física de un disco duro si el ordenador cambia de usuario dentro de una misma empresa? No, en esos casos lo habitual es realizar un formateo con varias pasadas ya que  a fin de cuentas el equipo sigue perteneciendo a la misma empresa, aunque una empresa o administración puede establecer un nivel de seguridad más alto si lo considera conveniente.

Entonces, y a la vista de lo anterior, y saliéndonos del tema de la destrucción de discos duros para irnos al tema de la noticia que inspira este artículo ¿ha cometido un delito el PP al destruir los discos duros del ordenador de Bárcenas? No podría afirmarlo. Primero habría que saber en qué fecha se destruyeron los discos: si fue después de que el juez reclamase los ordenadores desde luego sí comenten un delito al estar destruyendo una prueba de forma deliberada e incumpliendo la petición del juez. Si fue antes de la petición pero se hizo con dolo, sabiendo que había información que podría dañar al partido y destruyéndola para ocultar el delito, entonces también sería un delito, pero sería más complicado demostrarlo. Si fue antes pero se hizo como un procedimiento de seguridad estándar, sin conocer que los discos contenían pruebas de una actividad delictiva pero suponiendo que sí incluían datos sensibles, entonces no habría delito.Por otra parte, el real decreto 1720/2007 antes citado, también en su artículo 92, en el punto 1, dice que “Los soportes y documentos que contengan datos de carácter personal deberán permitir identificar el tipo de información que contienen, ser inventariados y solo deberán ser accesibles por el personal autorizado para ello en el documento de seguridad” por lo que el argumento esgrimido de que no sabían qué documentos había en el disco duro me parece débil, sobre todo porque necesitan esto para justificar la destrucción del disco duro de acuerdo con la LOPD.

En fin, en cuanto a la destrucción de discos la cosa está clara: Si tienes un SSD lo pulverizas a martillazos. Si tienes un disco duro magnético lo desmontas, rallas las caras de los discos que lo forman (lijadora si tienes, si no una lija gorda) y los rompes, ya sea a base de martillo, taladro, sierra o soplete. En cuanto al tema Bárcenas, es a la fiscalía y al juez a quien compete dirimir si hay o no delito, habrá que confiar en la independencia de la justicia, aunque en los últimos años no hayan dado motivos para ello.

Tcpxtract: extraer archivos del tráfico de tu red

Supongamos que eres el sheriff de una red, ya sea doméstica o empresarial, y tienes que monitorizar el tráficto de la misma, para lo que estás usando por ejemplo Wireshark. Ahora imagina también que quieres extraer los ficheros que se ocultan en esa comunicación ¿cómo lo hacemos? Bueno, pues para eso está Tcpxtract.

El primer paso es instalarlo. En Windows lo puedes descargar dese Sourceforge, en el caso de Linux puedes instalarlo con apt tal que así:

sudo apt-get install tcpxtract

Y ¿cómo le damos uso? la sintxis sería

tcpxtract [OPTIONS] [[-d ] [-f ]],

permitiéndonos -d capturar desde una interfaz de red y -f hacerlo desde un fichero. Dos ejemplillos en Linux

#extraemos datos directamente
#de la caputra de nuestra tarjeta
#de red
tcpxtract -d eth0

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
tcpxtract -f ejemplo.pcap

Tcpxtract reconoce los archivos que se envían por su firma o huella, estando estas registradas en el archivo tcpxtract.conf, lo que nos permitiría en todo caso poder añadir más editándolo, si conocemos dicha firma.

Se puede añadir una opción -o que permitiría definir en qué carpeta queremos que se extraigan los archivos capturados de nuestro tráfico.

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
#ejemplo definiendo salida
tcpxtract -f ejemplo.pcap -o imagenesExtraidas

Ten en cuenta este tipo de cosas, tanto por los temas de seguridad en las comunicaciones y usar siempre que sea posible la conexión https como si decides colarte en la wifi de tu vecino para usarla de gratis.