Una sencilla práctica sobre criptografía

Quizás hayas oído hablar sobre Pretty Good Privacy (PGP), aplicación software comúnmente utilizado para cifrar y firmar digitalmente el correo electrónico, el cual permite cifrar, descifrar y firmar además del correo electrónico, diferentes tipos de archivos. Así se proporciona integridad, privacidad y autenticación a la comunicación de datos.

En esta Tarea n° 3, se propone el intercambio de un archivo cifrado y firmado digitalmente, con la finalidad de practicar lo expuesto anteriormente.

¿Para qué necesito cifrar y firmar mensajes?

Lo más conveniente sería que habitualmente hiciéramos uso de este tipo de herramientas, al menos para las comunicaciones que queramos mantener realmente en privado.

¿Cómo puedo encriptar un mensaje?

Para encriptar un mensaje con GPG (o con cualquier sistema de criptografía asimétrica), necesitamos generar un par de claves. Una de ellas será la clave pública, clave que todo el mundo deberá conocer, y la otra será la clave privada, que debe mantenerse en privado y sólo tú debes conocer, ya que eso nos garantizará los servicios de confidencialidad, autenticación, integridad y no repudio.

Para generar nuestro par de claves, utilizaremos Seahorse, un gestor de claves GPG para Gnome que facilita mucho todo el proceso.

Aquí están las capturas que nos muestra cómo generar el par de claves paso a paso:

pgp1 

En Seahorse, damos click en «Nuevo»

pgp2

Escogemos el tipo de clave, en este caso clave pública

pgp3

Aparece una nueva ventana en la que deberemos introducir nuestros datos: Nombre, email y comentario (éste último opcional). También podemos seleccionar el tipo de cifrado, la fortaleza de la clave (2048 para el ejemplo) y la caducidad de la misma si hacemos clic en «opciones avanzadas de clave», sin caducidad.

pgp4

Establecemos la contraseña de seguridad para nuestra clve

¿Y ahora qué?

Bien, pues ahora puedes encriptar y firmar documentos o archivos y enviárselos a quien quieras, con la certeza de que nadie, salvo la persona a la que le envías el mensaje, podrá leerlo. Para hacerlo, la persona que recibirá el mensaje encriptado debe disponer también de un par de claves como los que acabamos de generar, y tú debes conocer la clave pública del destinatario.

Vamos a ver un ejemplo de cómo exportar tu clave pública con Seahorse.

pgp6

Exportamos nuestra clave pública.

Para importar una clave pública y añadirla en tu lista de claves públicas, tan solo tienes que hacer doble clic en el fichero .asc o, dentro de Seahorse, hacer clic en Archivo, Importar… y seleccionar el archivo de clave pública.

pgp6

Importamos la clave pública, de otro compañero, con la finalidad de estableces comunicación por medio de mensajes cifrados.

Listo! Ahora solo tenemos que enviar el archivo encriptado por correo electrónico, mensajería instantánea o como queramos y nos hemos asegurado de que sólo el destinatario podrá descifrarlo.

La educación formal te permitirá vivir, la autoeducación te llevará al éxito. (Jim Rohn)

Búsqueda y puesta en común de recursos

Internet es un gran espacio para relacionarse con otros usuarios pero ante todo es una gran biblioteca que está en continuo crecimiento.

Como parte de la Tarea n° 2 del MOOC Hacking Ético impartido por Mondragon Unibertsitatea (2015) Se pone a disposición tres sitios web dedicados a la seguridad y el hackin ético, que te serán de gran ayuda, por su diversidad de contenidos.

En el marco de la Seguridad Informática y el Hacking Ético, tenemos a disponibilidad una gama de sitios web y foros que ofrecen gran cantidad de información, video tutoriales, algoritmos, etc, que nos ayuden a comprender como funcionan las herramientas que usan los hackers y a estar preparados para proteger nuestra información.

Te presento tres espacios relacionados con la Seguridad Informática y el Hacking ético:

Organización Mexicana de Háckers Éticos (OMHE)
omhe

Es una organización de profesionales multidisciplinarios comprometida a promover y fortalecer la seguridad informática, con el objetivo de dar a conocer la importancia que tiene forjar una cultura en cuanto a seguridad informática para asegurar un buen acceso, manejo y distribución de la información.

Uno de los mejores, debido a la gran cantidad de material que brinda.

Underc0de Team
Hacking y Seguridad Informática Underc0de - Google Chrome

Es una comunidad dedicada al Hacking y a la Seguridad Informática.

Apoya la libre divulgación del conocimiento, compartir saberes, intercambiar aportes e interactuar día a día para potenciar las capacidades y habilidades de cada uno en un ambiente cordial.

Desarrollan talleres, tutoriales, guías de aprendizaje, papers de variados temas, herramientas y actualizaciones informáticas.

Foro El Hacker

selogo

Es un Portal sobre Linux, enlaces a manuales de seguridad, hacking y lenguajes de programación. Ofrece trucos y foros. Una comunidad pequeña de hackers que esta creciendo. Aquí puedes aprender de todo tipo de hacking.

Como siempre, la mejor opción dependerá del grado de interés que se tenga en el tema.

Herramientas básicas para obtener información de servidores externos

El MOOC Hacking Ético impartido por Mondragon Unibertsitatea (2015) dictará varias tareas que serán publicadas en este blog.

La siguiente corresponde a la primera tarea, que consiste en utilizar herramientas básicas para recopilar información.

Dentro del ámbito de la seguridad informática, lo ideal es que nunca sufra pérdidas de información. Por tal motivo, es primordial conocer las diferentes herramientas que se pueden usar para obtener información de un servidor, con la finalidad de protegerse de las mismas y garantizar que dicha información esté disponible el mayor tiempo posible.

Las siguientes herramientas son especialmente útiles para empezar a obtener información de los servidores que queremos poner a prueba:

  • Ping: Es una utilidad de diagnóstico de redes de computadoras que comprueba el estado de la comunicación del host local con uno o varios equipos remotos de una red. Mediante esta utilidad podemos determinar el estado, velocidad y calidad de un host determiando.
  • WhoIs: Es un protocolo TCP basado en petición/respuesta que se utiliza para efectuar consultas en una base de datos que permite determinar el propietario de un nombre de dominio o una dirección IP en Internet.
  • NMap: Es una herramienta de código abierto para exploración de red y auditoría de seguridad. Nmap utiliza paquetes IP «crudos» en formas originales para determinar qué equipos se encuentran disponibles en una red, qué servicios (nombre y versión de la aplicación) ofrecen, qué sistemas operativos (y sus versiones) ejecutan, qué tipo de filtros de paquetes o cortafuegos se están utilizando así como docenas de otras características.

Para hacer uso de estas herramientas, el primer paso es la recolección de los datos de nuestro objetivo, cuanto mayor datos logremos obtener, tendremos mayores probabilidades de lograr un ataque exitoso.

Nuestro objetivo es:  www.sahmedltda.com

  • Información del objetivo: Para obtener información sobe el dominio (objetivo), haremos uso de la herramienta «whois».
    En nuestro terminal (un entorno linux, basado en Kali), escribimos el comando: «whois sahmedltda.com»

    PrtScr

     

    PrtScr_2

    Podemos apreciar que hemos obtenido el nombre, tipo de registro, el registrador, algunas fechas importantes del dominio y los nombres de servidores en donde se encuentra alojado.

  • IP del objetivo: A través de la herramienta «ping» conoceremos la IP de nuestro objetivo, en nuestro terminal kali, escribimos el comando «ping sahmedltda.com -c 5», donde «-c 5» es opcional.

    PrtScr_3

    Tenemos ya la IP del objetivo «50.23.16.2» (un punto más en nuestra recolección de información).

  • Más información del objetivo: Para obtener información adicional como por ejemplo, detalles del sistema operativo, puertos abiertos, servicios activos de objetivo, usaremos la herramienta «nmap», que en nuestro entorno kali, realizaremos de la sigueinte manera:
    • Para realizar un scan simple de puertos «abiertos» del objetivo escribimos lo siguiente: «nmap 50.23.16.2»

      PrtScr4

      Como vemos hay varios puertos abiertos, y un par de servicios con los que podemos «jugar» un momentito (jejeje…)

    • Para conocer la versión del los diferentes servicios del objetivo escribimos lo siguiente: «nmap -sV 50.23.16.2»

      PrtScr

    Como podemos apreciar, estos comandos son muy útiles al momento de conocer información básica de nuestro objetivo, los mismos servirán para más adelante realizar las respectivas pruebas de seguridad.

    Con esto finaliza esta primera entrega del curso de seguridad y hacking ético.

  • La educación formal te permitirá vivir, la autoeducación te llevará al éxito. (Jim Rohn)