Mostrando entradas con la etiqueta ethical. Mostrar todas las entradas
Mostrando entradas con la etiqueta ethical. Mostrar todas las entradas

jueves, 9 de junio de 2016

Encripta y firma tu correo (II): El servidor de claves

Buenas a todos!! Hoy vengo a hablar un poco más acerca de la seguridad y el cifrado en nuestros correos electrónicos.

Ya hablamos anteriormente de los fundamentos y el proceso básico a realizar a la hora de instalar nuestro cliente Thunderbird y demás elementos necesarios para comenzar a securizar nuestras comunicaciones por correo electrónico, pasando por alguna explicación acerca del cifrado de clave pública o criptografía asimétrica.

Antes de nada, nombrar el libro El Pequeño Libro Rojo del Activista en la Red de Marta Peirano, que estoy leyendo de nuevo y no puedo dejar de recomendar, tratando de forma fácil y directa cómo cifrar nuestras comunicaciones y protegernos ante la posible lectura de las mismas.

Quiero ampliar un poco el tutorial de forma breve indicando cómo subir a un servidor público de claves o keyserver nuestra clave pública. El servidor público de claves es un repositorio que contiene una gran cantidad de claves públicas accesibles a todo aquel que las requiera, asociadas a la identidad con la que queremos comunicarnos.

La principal ventaja de esto es que los que nos quieran mandar un correo electrónico cifrado no necesitarán pedirnos nuestra clave pública directamente antes de comenzar la comunicación segura; de esta forma no queda ningún cuerpo de mensaje sin cifrar en nuestra conversación. El servidor de claves que elegiremos en esta ocasión es PGP Global Directory.

Página principal y de subida de PGP Global Directory

Subir nuestra clave pública al servidor de claves


Tendremos que seguir el link que nos permite transferir nuestra clave pública PGP. Podremos subir nuestra clave pública que hayamos exportado desde nuestro cliente Thunderbird. Para realizar esta exportación, desde Thunderbird podemos desplegar el menú Enigmail en la barra de herramientas, y acceder al "Administrador de clave"s. Haciendo clic derecho en nuestro par de claves, elegiremos la opción "Exportar claves a un fichero" y exportaremos solamente nuestra clave pública. El archivo generado será el que subamos al keyserver, pulsando por último el botón Transmitir.

Exportado nuestra clave pública desde Enigmail

Una vez enviada nuestra clave pública al servidor, nos enviarán un correo electrónico de confirmación para verificar nuestra identidad.

Correo de confirmación de PGP Global Directory

Tras confirmar nuestra identidad siguiendo el link, ya tenemos nuestra clave pública subida al servidor de claves.

Agregar, firmar y confiar en la clave pública del servidor de claves

Valga la redundancia, podemos agregar la clave pública del servidor de claves a nuestro cliente Thunderbird, firmarla y confiar en ella. 

El fundamento de esto es en realidad simple. Firmando la clave pública de un contacto con nuestra propia clave privada estamos poniendo de manifiesto que estamos completamente seguros de que esta clave es correcta y pertenece a dicho contacto. Esto establece un modelo característico del protocolo PGP, que hace que la validación de las claves públicas se delegue en los contactos en los que confías. Si confías en un contacto, darás como válidas todas las claves públicas que dicho contacto haya firmado a su vez. (Más información aquí)

Como ejemplo podemos poner nuestro mismo caso. Firmando la clave que hemos importado del servdor de claves, aseguramos que dicha clave es legítima. Asimismo, confiando en la identidad de dicho servidor, damos como válidas todas las claves que él ha firmado; en este caso, todas aquellas que contiene el servidor. 

Confiamos en el servidor, dado que, como hemos comprobado, tiene sus mecanismos para verificar que una clave se corresponde a una dirección de correo real (la verificación por correo que nosotros mismos hemos confirmado). 

Para agregar la clave pública del servidor a nuestro cliente Thunderbird, podemos descargarla desde la página principal haciendo clic en el link correspondiente y posteriormente importándola desde el "Administrador de claves" (Archivo -> Importar claves desde un fichero). 

Importar una clave desde fichero

Hecho esto, para firmar la clave que hemos importado debemos hacer clic derecho en dicha clave y seleccionando la opción "Firmar clave". Confirmaremos la firma e introduciremos la contraseña de acceso a nuestra clave privada para acabar.

Firmando la clave pública del servidor de claves

Por último, confiaremos en la clave del servidor. Desde el "Administrador de claves", haremos clic derecho en la clave del servidor y accederemos a sus propiedades. En el apartado de configuración básica, clicaremos en el botón para cambiar la opción "You rely on certifications" o "Confío en las certificaciones". Confiaremos totalmente en ella y aceptaremos el cambio.

Confiando en la clave del servidor



Con esto hemos terminado todo el proceso de asociación con un servidor de claves para poner nuestra clave pública a disposición de cualquiera que la necesite para establecer con nosotros una comunicación cifrada. En caso de profesiones en las que la privacidad de la información sea clave, como por ejemplo en el periodismo, el ofrecer al público la clave necesaria para contactar con nosotros de forma segura denota profesionalidad y disposición a proteger al interlocutor o confidente.

Un saludo y espero que os sirva para aprender!!
hartek

viernes, 25 de marzo de 2016

Entornos de pruebas: ¿Cómo practico mi hacking?

Buenas hackers! La intención de la entrada de hoy es daros algunas pautas a la hora de practicar y experimentar en ciberseguridad.

Nuestro campo es tan extenso y experimenta una evolución tan constante que es necesario practicar y experimentar lo máximo posible para mantenerse al día y mantener las garras afiladas. ¿Cómo podemos realizar nuestras prácticas de forma segura y manteniendo nuestra economía dentro de los límites razonables?

Seamos sinceros: a todos nos gustaría tener un equipamiento digno de la nave de Matrix y practicar en un entorno de máquinas reales. Sin embargo, esto no suele ser posible para la mayoría de la gente. Además, en materias de ciberseguridad a veces querremos hacer cosas que pueden comprometer la integridad de nuestro material; no nos gustaría fundir sin querer los datos de un disco duro real en el que tengamos fotos de las vacaciones.

Y sin embargo, realmente necesitamos la interacción entre máquinas para poder aprender.  La primera y normalmente mejor opción para ello son las máquinas virtuales.

Máquinas virtuales

Una máquina virtual, a grandes rasgos, es un sofware que permite ejecutar programas y sistemas operativos como si fuese una máquina de verdad. Dentro de una máquina virtual, en nuestro contexto, tendremos instalado un sistema operativo, igual o diferente al de nuestra máquina real, ejecutándose de forma independiente sobre el real, como si de un programa cualquiera se tratase. 

Los softwares de virtualización más conocidos son VirtualBox y VMware. No entraremos demasiado en las ventajas y desventajas de cada uno; los dos nos pueden servir perfectamente para alojar nuestras máquinas virtuales. 

Podemos configurar nuestras máquinas virtuales de múltiples formas para atender nuestras necesidades, asignando más o menos recursos en función de la potencia que tengamos disponible. Aunque no es necesario tener un equipo de última generación para ejecutar MVs, hay que tener en cuenta que si no les asignamos recursos suficientes podrían funcionar a una velocidad baja. 

La principal ventaja de las máquinas virtuales es que si las "rompemos" podemos recuperarlas fácilmente con una copia de seguridad, podemos clonarlas, reinstalarlas, etc. y todo ello sin comprometer en ningún momento nuestra máquina real. Podemos llevar a cabo auténticos ataques desde una máquina virtual a otra sin miedo a la pérdida de información o a dañar nuestro equipo. 

Las MVs pueden ser configuradas para funcionar en diferentes modos de red, siendo el modo puente y el modo NAT los más utilizados. Podemos ver fácilmente las posibilidades que nos brinda tener dentro de nuestro ordenador una red que a todas luces se comporta exactamente igual que una red real de dispositivos interconectados y funcionando. 

Aun siendo la opción más económica y asequible, a veces necesitaremos tener funcionando equipamiento real; por ejemplo, para practicar ataques a redes inalámbricas necesitaremos una red de pruebas. Para ello, suele bastar con una serie de equipamiento barato y asequible, y el componente más utilizado por su versatibilidad es la Raspberry Pi. 

Raspberry Pi

Este pequeño aparato es, en resumen, un ordenador en miniatura y con un precio considerablemente bajo. Lleva utilizándose años en multitud de proyectos de diversa índole, sobre todo en materia de educación y experimentación. 

El modelo actual, la Raspberry Pi 3, ronda los 45 euros y proporciona una potencia de computación bastante elevada para su precio, incluyendo además funcionalidad WiFi y Bluetooth sin necesidad de agregarle un periférico. El modelo anterior, la Raspberry Pi 2, ronda los 30 euros y también proporciona una buena potencia. El modelo antiguo era bastante más básico, pero aún puede encontrarse a un precio aún menor. 

La Raspberry Pi puede hacer prácticamente todo lo que cualquier ordenador, ejecutando un sistema operativo Linux de nuestra elección. Por ello, puede servirnos como objetivo simulado de un ataque, con la ventaja de que realmente estamos practicando con una máquina real, con sus pros y sus contras. 

Experimentando con la Raspberry Pi

Particularmente, me parece la mejor elección a la hora de llevar a cabo prácticas con redes inalámbricas (¡visita nuestras entradas de Aircrack-ng!), dado que puede configurarse de forma fácil para crear una red WiFi de diversos tipos utilizando el módulo inalámbrico incluido ya en los modelos más actuales o una antena externa en caso del modelo antiguo. 

Otras opciones

Aunque esas son las opciones más asequibles en términos de economía y recursos que utilizo, existen más alternativas. Por ejemplo, Amazon proporciona servicios de virtualización en la nube, que podríamos utilizar en caso de no tener la potencia necesaria en nuestro equipo para ejecutar entornos de varias máquinas virtuales. 

Sin embargo, hay que tener en cuenta los límites que hay que respetar; esas máquinas no pueden utilizarse para ningún fin ilícito, y la infraestructura que las ejecuta es compartida con otras máquinas. Podría haber complicaciones legales a la hora de realizar ciertas prácticas de hacking en esos entornos. 

Dicho esto, podemos terminar con la posibilidad de utilizar equipamiento real. Hay mucha gente que prefiere realizar siempre que es posible las prácticas con varios equipos físicos si dispone de ellos. Aunque comprendo las ventajas de utilizar máquinas reales, también hay que tener en cuenta las desventajas: puedes poner en riesgo dicho equipo si haces según qué cosas, y además, personalmente, encuentro mucho más cómoda la virtualización, dado que me proporciona un entorno de trabajo centralizado en un solo equipo. 

Hasta aquí la entrada de hoy. Espero que os haya gustado y os sirva para orientaros un poco a la hora de fabricar vuestro entorno de pruebas. 

Un saludo hackers!!
hartek

Google Analytics