Hola hacketones! Bienvenidos a un nuevo CTF de la ruta de Cyber Security 101 para la certificación SEC1 en este post resolveremos: TryHackMe – Cryptography Basics
Tarea 1 Introducción
¿Te has preguntado alguna vez cómo evitar que terceros lean tus mensajes? ¿Cómo puede tu aplicación o navegador web crear un canal seguro con un servidor remoto? Por seguro, nos referimos a que nadie pueda leer ni alterar los datos intercambiados; además, podemos estar seguros de que nos conectamos con el servidor real. Gracias a la criptografía, estos requisitos se cumplen.
La criptografía sienta las bases de nuestro mundo digital. Si bien los protocolos de red han hecho posible la comunicación entre dispositivos de todo el mundo, la criptografía ha hecho posible la confianza en esta comunicación.
Esta sala es la primera de tres salas introductorias sobre criptografía. No hay prerrequisitos de aprendizaje, salvo conocimientos básicos de la línea de comandos de Linux . Si no está seguro, considere unirse a la ruta de Pre Seguridad .
- Fundamentos de criptografía (esta sala)
Objetivos de aprendizaje
Al completar esta sala, aprenderá lo siguiente:
- Términos clave de criptografía
- Importancia de la criptografía
- Cifrado César
- Cifrados simétricos estándar
- Cifrados asimétricos comunes
- Matemáticas básicas comúnmente utilizadas en criptografía
Responda las preguntas a continuación
¡Estoy listo para comenzar a aprender sobre criptografía!
Tarea 2 Importancia de la criptografía
El propósito final de la criptografía es garantizar la comunicación segura en presencia de adversarios . El término «seguro» incluye la confidencialidad e integridad de los datos comunicados. La criptografía puede definirse como la práctica y el estudio de técnicas para la comunicación segura y la protección de datos donde prevemos la presencia de adversarios y terceros. En otras palabras, estos adversarios no deberían poder divulgar ni alterar el contenido de los mensajes.
La criptografía se utiliza para proteger la confidencialidad, la integridad y la autenticidad. Hoy en día, la criptografía se utiliza a diario, y es casi seguro que se lee a través de una conexión cifrada. Considere los siguientes escenarios en los que se usaría criptografía:
- Cuando inicia sesión en TryHackMe, sus credenciales se encriptan y se envían al servidor para que nadie pueda recuperarlas espiando su conexión.
- Cuando usted se conecta a través de SSH , su cliente SSH y el servidor establecen un túnel cifrado para que nadie pueda espiar su sesión.
- Cuando realiza operaciones bancarias en línea, su navegador verifica el certificado del servidor remoto para confirmar que se está comunicando con el servidor de su banco y no con el de un atacante.
- Al descargar un archivo, ¿cómo se comprueba si se descargó correctamente? La criptografía ofrece una solución mediante funciones hash para confirmar que el archivo es idéntico al original.
Como puede ver, rara vez es necesario interactuar directamente con la criptografía, pero sus soluciones e implicaciones están presentes en todo el mundo digital. Considere el caso de una empresa que desea gestionar información de tarjetas de crédito y procesar transacciones relacionadas. Al gestionar tarjetas de crédito, la empresa debe cumplir y aplicar el Estándar de Seguridad de Datos de la Industria de Tarjetas de Pago ( PCI DSS ). En este caso, el PCI DSS garantiza un nivel mínimo de seguridad para almacenar, procesar y transmitir datos relacionados con los créditos de las tarjetas. Si consulta el PCI DSS para Grandes Organizaciones , aprenderá que los datos deben cifrarse tanto durante su almacenamiento (en reposo ) como durante su transmisión (en movimiento).
De la misma manera que el manejo de los datos de las tarjetas de pago requiere cumplir con PCI DSS , el manejo de historiales médicos requiere cumplir con sus respectivos estándares. A diferencia de las tarjetas de crédito, los estándares para el manejo de historiales médicos varían de un país a otro. Los ejemplos de leyes y regulaciones que se deben considerar al manejar historiales médicos incluyen HIPAA (Ley de Portabilidad y Responsabilidad del Seguro Médico) y HITECH (Tecnología de la Información Sanitaria para la Salud Económica y Clínica) en los EE. UU., GDPR (Reglamento General de Protección de Datos) en la UE, DPA (Ley de Protección de Datos) en el Reino Unido. Aunque la lista no es exhaustiva, da una idea sobre los requisitos legales que los proveedores de atención médica deben considerar dependiendo de su país. Estas leyes y regulaciones muestran que la criptografía es una necesidad que debe estar presente pero generalmente oculta al acceso directo del usuario.
Responda las preguntas a continuación
¿Cuál es el estándar requerido para el manejo de información de tarjetas de crédito?
PCI DSS
Tarea 3 Texto simple a texto cifrado
Comencemos con una ilustración antes de introducir los términos clave. Empezamos con el texto plano que queremos cifrar. El texto plano son los datos legibles; puede ser cualquier cosa, desde un simple «hola», la foto de un gato, la información de una tarjeta de crédito o un historial médico. Desde una perspectiva criptográfica, todos estos son mensajes de «texto plano» que esperan ser cifrados. El texto plano se pasa a través de la función de cifrado junto con una clave adecuada; la función de cifrado devuelve un texto cifrado. La función de cifrado forma parte del cifrado; un cifrado es un algoritmo que convierte un texto plano en texto cifrado y viceversa.

Para recuperar el texto plano, debemos pasar el texto cifrado junto con la clave correcta mediante la función de descifrado, lo que nos proporcionará el texto plano original. Esto se muestra en la siguiente ilustración.

Acabamos de introducir varios términos nuevos, y necesitamos aprenderlos para comprender cualquier texto sobre criptografía. Los términos se enumeran a continuación:
- El texto plano es el mensaje o los datos originales y legibles antes de ser cifrados. Puede ser un documento, una imagen, un archivo multimedia o cualquier otro dato binario.
- El texto cifrado es la versión codificada e ilegible del mensaje después del cifrado. Idealmente, no podemos obtener información sobre el texto plano original, salvo su tamaño aproximado.
- El cifrado es un algoritmo o método para convertir texto simple en cifrado y viceversa. Un cifrado suele ser desarrollado por un matemático.
- La clave es una cadena de bits que el cifrador utiliza para cifrar o descifrar datos. Generalmente, el cifrado utilizado es de dominio público; sin embargo, la clave debe permanecer secreta a menos que sea la clave pública en el cifrado asimétrico. Analizaremos el cifrado asimétrico en una tarea posterior.
- El cifrado es el proceso de convertir texto plano en texto cifrado mediante un cifrado y una clave. A diferencia de la clave, la elección del cifrado es pública.
- El descifrado es el proceso inverso del cifrado: convierte el texto cifrado en texto plano mediante un cifrado y una clave. Aunque el cifrado sería de dominio público, recuperar el texto plano sin conocer la clave sería imposible (inviable).
Responda las preguntas a continuación
¿Cómo se llama el texto plano cifrado?
ciphertext
¿Cómo se llama el proceso que devuelve el texto sin formato?
decryption
Tarea 4 Cifrados históricos
La criptografía tiene una larga historia y se remonta al antiguo Egipto en el año 1900 a. C. Sin embargo, uno de los cifrados históricos más sencillos es el Cifrado César, del siglo I a. C. La idea es sencilla: desplazar cada letra un número determinado para cifrar el mensaje.
Consideremos el siguiente ejemplo:
- Texto sin formato:TRYHACKME
- Clave: 3 (Suponga que es un desplazamiento a la derecha de 3).
- Cifrado: Cifrado César
Podemos deducir fácilmente que T se convierte en W, R en U, Y en B, y así sucesivamente. Como habrás notado, al llegar a Z, comenzamos de nuevo, como se muestra en la figura a continuación. En consecuencia, obtenemos el texto cifrado de WUBKDFNPH.

Para descifrarlo, necesitamos la siguiente información:
- Texto cifrado:WUBKDFNPH
- Clave: 3
- Cifrado: Cifrado César
Para cifrar, nos desplazamos tres veces a la derecha; para descifrar, nos desplazamos tres veces a la izquierda y recuperamos el texto original, como se ilustra en la imagen superior. Sin embargo, si alguien te da un texto cifrado y te dice que fue cifrado con Cifrado César, recuperar el texto original sería una tarea trivial, ya que solo hay 25 claves posibles. El alfabeto inglés tiene 26 letras, y un desplazamiento de 26 mantendrá la letra sin cambios; por lo tanto, 25 claves válidas para cifrar con Cifrado César. La figura a continuación muestra cómo el descifrado se realizará correctamente al intentar todas las claves posibles; en este caso, recuperamos el mensaje original con K e y = 5 . Por lo tanto, según los estándares actuales, donde el cifrado es de dominio público, el Cifrado César se considera inseguro.

Encontrarás muchos más cifrados históricos en películas y libros de criptografía. Algunos ejemplos incluyen:
- La cifra Vigenère del siglo XVI
- La máquina Enigma de la Segunda Guerra Mundial
- La libreta de un solo uso de la Guerra Fría
Responda las preguntas a continuación
Sabiendo que XRPCTCRGNEIfue cifrado usando Cifrado César, ¿cuál es el texto original?
ICANENCRYPT
Tarea 5 Tipos de cifrado
Las dos categorías principales de cifrado son simétrico y asimétrico .
Cifrado simétrico
El cifrado simétrico , también conocido como criptografía simétrica , utiliza la misma clave para cifrar y descifrar los datos, como se muestra en la figura siguiente. Mantener la clave en secreto es fundamental; también se denomina criptografía de clave privada . Además, comunicar la clave a los destinatarios puede ser complicado, ya que requiere un canal de comunicación seguro. Mantener la confidencialidad de la clave puede ser un desafío considerable, especialmente si hay muchos destinatarios. El problema se agrava ante un adversario poderoso; por ejemplo, considere la amenaza del espionaje industrial.

Imagine un caso sencillo: creó un documento protegido con contraseña para compartirlo con su compañero. Puede enviarle fácilmente el documento cifrado por correo electrónico, pero lo más probable es que no pueda enviarle la contraseña. Esto se debe a que cualquier persona con acceso a su buzón accedería tanto al documento protegido con contraseña como a su contraseña. Por lo tanto, debe buscar otra forma, es decir, un canal, para compartir la contraseña. A menos que piense en un canal seguro y accesible, una solución sería reunirse en persona y comunicarle la contraseña.
Ejemplos de cifrado simétrico son DES (Estándar de cifrado de datos), 3DES (Triple DES ) y AES (Estándar de cifrado avanzado).
- DES se adoptó como estándar en 1977 y utiliza una clave de 56 bits. Con el avance de la potencia informática, en 1999se logró descifrar una clave DES en menos de 24 horas, lo que motivó la transición a 3DES.
- 3DES es DES aplicado tres veces; en consecuencia, el tamaño de la clave es de 168 bits, aunque la seguridad efectiva es de 112 bits. 3DES fue más bien una solución ad hoc cuando DES ya no se consideraba seguro. 3DES quedó obsoleto en 2019 y debería ser reemplazado por AES ; sin embargo, aún puede encontrarse en algunos sistemas heredados.
- AES fue adoptado como estándar en 2001. Su tamaño de clave puede ser de 128, 192 o 256 bits.
Hay muchos más cifrados simétricos utilizados en diversas aplicaciones; sin embargo, no han sido adoptados como estándares.
Cifrado asimétrico
A diferencia del cifrado simétrico, que utiliza la misma clave para cifrar y descifrar, el cifrado asimétrico utiliza un par de claves, una para cifrar y otra para descifrar, como se muestra en la ilustración siguiente. Para proteger la confidencialidad, el cifrado asimétrico, o criptografía asimétrica, cifra los datos utilizando la clave pública; por ello, también se denomina criptografía de clave pública .

Ejemplos de ello son la criptografía RSA , Diffie-Hellman y la de curva elíptica ( ECC ). Las dos claves implicadas en el proceso se denominan clave pública y clave privada . Los datos cifrados con la clave pública se pueden descifrar con la clave privada. La clave privada debe mantenerse privada, de ahí su nombre.
El cifrado asimétrico tiende a ser más lento, y muchos sistemas de cifrado asimétrico utilizan claves más grandes que el cifrado simétrico. Por ejemplo, RSA utiliza claves de 2048, 3072 y 4096 bits; 2048 bits es el tamaño mínimo de clave recomendado. Diffie-Hellman también recomienda un tamaño mínimo de clave de 2048 bits, pero utiliza claves de 3072 y 4096 bits para mayor seguridad. Por otro lado, ECC puede lograr una seguridad equivalente con claves más cortas. Por ejemplo, con una clave de 256 bits, ECC proporciona un nivel de seguridad comparable al de una clave RSA de 3072 bits .
El cifrado asimétrico se basa en un grupo específico de problemas matemáticos fáciles de calcular en una dirección, pero extremadamente difíciles de revertir. En este contexto, extremadamente difícil significa prácticamente inviable. Por ejemplo, podemos confiar en un problema matemático que tardaría muchísimo tiempo, por ejemplo, millones de años, en resolverse con la tecnología actual.
En la siguiente sala, visitaremos varios sistemas de cifrado asimétrico. Por ahora, es importante destacar que el cifrado asimétrico proporciona una clave pública que se comparte con todos y una clave privada que se mantiene en secreto.
Resumen de los nuevos términos
- Alicia y Bob son personajes ficticios que se usan comúnmente en ejemplos de criptografía para representar a dos partes que intentan comunicarse de forma segura. El cifrado simétrico es un método en el que se utiliza la misma clave tanto para el cifrado como para el descifrado. Por lo tanto, esta clave debe permanecer segura y nunca revelarse a nadie excepto a la parte destinataria. El cifrado asimétrico es un método que utiliza dos claves diferentes: una clave pública para el cifrado y una clave privada para el descifrado.
Responda las preguntas a continuación
¿Deberías confiar en DES? (Sí/No)
Nay
¿Cuándo se adoptó AES como estándar de cifrado?
2001
Tarea 6 Matemáticas básicas
Los pilares de la criptografía moderna residen en las matemáticas. Para demostrar algunos algoritmos básicos, abordaremos dos operaciones matemáticas que se utilizan en diversos algoritmos:
- Operación XOR
- Operación módulo
Operación XOR
XOR , abreviatura de «OR exclusivo», es una operación lógica en aritmética binaria que desempeña un papel crucial en diversas aplicaciones informáticas y criptográficas. En binario, XOR compara dos bits y devuelve 1 si son diferentes y 0 si son iguales, como se muestra en la tabla de verdad a continuación. Esta operación suele representarse con el símbolo ⊕ o ^.
| A | B | A ⊕ B |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Si es la primera vez que trabaja con una tabla de verdad, esta muestra todos los resultados posibles. La tabla de verdad XOR anterior indica los cuatro casos: 0 ⊕ 0 = 0, 0 ⊕ 1 = 1, 1 ⊕ 0 = 1 y 1 ⊕ 1 = 0.
Consideremos un ejemplo en el que queremos aplicar XOR a los números binarios 1010 y 1100. En este caso, realizamos la operación bit a bit: 1 ⊕ 1 = 0, 0 ⊕ 1 = 1, 1 ⊕ 0 = 1 y 0 ⊕ 0 = 0, resultando en 0110.
Quizás se pregunte cómo XOR puede desempeñar algún papel en criptografía. XOR tiene varias propiedades interesantes que lo hacen útil en criptografía y detección de errores. Una propiedad clave es que al aplicar XOR a un valor que lo contiene, da como resultado 0, y al aplicar XOR a cualquier valor que lo contenga, lo deja inalterado. Esto significa que A ⊕ A = 0, y A ⊕ 0 = A para cualquier valor binario A. Además, XOR es conmutativo, es decir, A ⊕ B = B ⊕ A. Y es asociativo, es decir, (A ⊕ B) ⊕ C = A ⊕ (B ⊕ C).
Veamos cómo podemos usar lo anterior en criptografía. Demostraremos cómo XOR puede usarse como un algoritmo básico de cifrado simétrico. Consideremos los valores binarios P y K, donde P es el texto plano y K es la clave secreta. El texto cifrado es C = P ⊕ K.
Ahora, si conocemos C y K, podemos recuperar P. Empezamos con C ⊕ K = (P ⊕ K) ⊕ K. Pero sabemos que (P ⊕ K) ⊕ K = P ⊕ (K ⊕ K) porque XOR es asociativo. Además, sabemos que K ⊕ K = 0; por consiguiente, (P ⊕ K) ⊕ K = P ⊕ (K ⊕ K) = P ⊕ 0 = P. En otras palabras, XOR sirvió como un algoritmo de cifrado simétrico simple. En la práctica, es más complicado, ya que necesitamos una clave secreta tan larga como el texto plano.
Operación módulo
Otra operación matemática frecuente en criptografía es el operador módulo, comúnmente escrito como % o m o d . El operador módulo, X % Y , es el residuo de dividir X entre Y. En nuestros cálculos cotidianos, nos centramos más en el resultado de la división que en el residuo. El residuo desempeña un papel fundamental en criptografía.
Necesita trabajar con números grandes al resolver ejercicios de criptografía. Si su calculadora falla, le sugerimos usar un lenguaje de programación como Python. Python tiene un inttipo integrado que puede manejar enteros de tamaño arbitrario y cambia automáticamente a tipos mayores según sea necesario. Muchos otros lenguajes de programación tienen bibliotecas dedicadas para enteros grandes. Si prefiere realizar sus cálculos en línea, considere WolframAlpha .
Consideremos algunos ejemplos.
- 25%5 = 0 porque 25 dividido entre 5 es 5, con un resto de 0, es decir, 25 = 5 × 5 + 0
- 23%6 = 5 porque 23 dividido entre 6 es 3, con un resto de 5, es decir, 23 = 3 × 6 + 5
- 23%7 = 2 porque 23 dividido entre 7 es 3 con un resto de 2, es decir, 23 = 3 × 7 + 2
Un aspecto importante a recordar sobre el módulo es que no es reversible. Si nos dan la ecuación x %5 = 4 , valores infinitos de x la satisfarían.
La operación módulo siempre devuelve un resultado no negativo menor que el divisor. Esto significa que, para cualquier entero a y entero positivo n , el resultado de a % n siempre estará en el rango de 0 a n − 1 .
Responda las preguntas a continuación
¿Cuánto es 1001 ⊕ 1010?
0011
¿Cuánto es 118613842%9091 ?
3565
¿Qué es 60%12 ?
0
Tarea 7 Resumen
En esta sala, aprendimos sobre la importancia de la criptografía y algunos de los problemas que resuelve. También presentamos los sistemas de cifrado simétrico y asimétrico. Finalmente, explicamos las operaciones XOR y módulo. En la siguiente sala, Fundamentos de la Criptografía de Clave Pública , visitaremos varios criptosistemas asimétricos y veremos cómo resuelven los problemas que enfrentamos en el mundo digital.
Sigan entrenando, Hacketones, Nos vemos en el próximo laboratorio!!!