top of page

Want to generate your own video summary in seconds?

Explorando Machine 2 Milon de Hack de Box: Técnicas y Herramientas Prácticas de Hacking

Descubre las ideas sobre técnicas y herramientas prácticas de hacking a través de una conversación sobre Machine 2 Milon de Hack de Box. Aprende sobre escaneo de puertos, explotación de API y escalada de privilegios en este interesante artículo.

Video Summary

La conversación profundiza en Machine 2 Milon de Hack de Box, una máquina Linux con la dirección IP 10.10.10.111. A pesar de su nivel de dificultad fácil, abarca conceptos intrigantes como la creación de un escáner de puertos con Scapy, similar al escaneo Stealth de Nmap. También se discute la enumeración y la explotación de API utilizando Postman, así como la escalada de privilegios a través de la explotación del kernel con overlay fs. La conversación aborda los valores TTL para máquinas Linux y Windows, un script de Python para identificar tipos de máquinas y el uso de Nmap para el escaneo de puertos.

Se enfatiza la importancia de comprender conceptos incluso en desafíos fáciles, junto con el uso de herramientas como Kitty, Power Level 10k y Parrot OS. Se destacan técnicas y herramientas prácticas de hacking, mostrando las preocupaciones del orador sobre ciberseguridad mientras utiliza Hack the Box. Se recomienda VIP Plus para medidas de seguridad adicionales.

Se demuestra la exportación de datos en formato grepe para su análisis utilizando expresiones regulares, junto con el uso de nmap para el escaneo de puertos y la detección de servicios. Se menciona Scapy para el escaneo avanzado de redes, explorando los nombres en clave de Ubuntu a través del análisis de encabezados. La conversación discute el apretón de manos Triway en el escaneo de conexión TCP y las diferencias con el escaneo Stealth.

Se explica el proceso de construcción de un escáner de puertos en Python utilizando Scapy, cubriendo la manipulación de cadenas, la construcción de paquetes y el escaneo de puertos. Se implementa el enhebrado para un escaneo más rápido, con un enfoque en el manejo de límites de hilos y tiempos de espera para la eficiencia. El escáner se prueba escaneando puertos del 1 al 65535, asegurando que la precisión y los tiempos de respuesta estén optimizados.

Se introduce Tshark para el sniffing de paquetes y el análisis del tráfico de red, enfatizando la importancia de completar los apretones de manos para que las conexiones se registren. Se explora la generación de códigos de invitación utilizando métodos de cifrado como rot13 y la decodificación de base64, junto con el registro en plataformas similares a Hack the Box. Se discuten los desafíos enfrentados por los principiantes en hacking, concluyendo con posibles características como conexiones VPN en la plataforma.

La conversación también abarca la generación de diferentes puntos finales en una API, listando puntos finales, autenticando sesiones y verificando el estado de administrador. Se mencionan las VPN para usuarios específicos y los posibles riesgos de seguridad. Se detallan la ejecución de comandos de forma remota, la obtención de acceso al sistema y el manejo de tratamientos de consola.

Se discute la explotación de una API a través de curl, utilizando la falta de sanitización para obtener acceso, junto con la enumeración y explotación en un entorno controlado con Docker. También se cubre la búsqueda de credenciales en database.php, el acceso a correos electrónicos a través de SSH y la escalada de privilegios mediante la explotación de vulnerabilidades del kernel de Linux.

Se explora una vulnerabilidad que afecta a Ubuntu 22.04, proporcionando recursos para la instalación y explotación. Se demuestran la clonación de archivos, la compilación de binarios y la ejecución de comandos para acceder al directorio raíz y encontrar una bandera. Se decodifica un mensaje codificado en hexadecimal utilizando herramientas como PHP y CyberChef, expresando gratitud por alcanzar 2 millones de usuarios en la plataforma llamada 't millon'. El usuario reconoce a Hack The Box por su experiencia de aprendizaje y el ambiente amigable en sus oficinas.

Click on any timestamp in the keypoints section to jump directly to that moment in the video. Enhance your viewing experience with seamless navigation. Enjoy!

Keypoints

00:00:03

Descripción de la máquina

Máquina 2 millones de Hack de box es una máquina Linux de dificultad fácil con IP 10.10.10.111.

Keypoint ads

00:00:13

Exploración de conceptos

A pesar del nivel de dificultad fácil de la máquina, la discusión cubrirá conceptos interesantes, incluyendo la creación de un escáner de puertos sigiloso con scapy similar al escaneo sigiloso de Nmap.

Keypoint ads

00:00:40

Aplicación Práctica

La sesión demostrará prácticamente cómo construir un escáner moderadamente rápido aprovechando los conocimientos del curso ofensivo de Python en La Academia.

Keypoint ads

00:01:00

Uso de herramientas

La discusión utilizará en gran medida una aplicación introducida en el curso de introducción al hacking para la enumeración y explotación de APIs, empleando herramientas como Postman para la organización.

Keypoint ads

00:01:20

Escalada de privilegios

Se explorará una técnica de escalada de privilegios a través de la explotación del kernel utilizando overlight fs, un concepto previamente encontrado en la máquina del hospital.

Keypoint ads

00:02:01

Preparación

Se anima a los participantes a tener sus consolas listas para la sesión, asegurándose de que estén preparados para las demostraciones prácticas y discusiones.

Keypoint ads

00:02:24

Configuración del terminal

El orador utiliza Kitty con una configuración de Power Level 10k, empleando zsh con plugins específicos y personalizaciones para una experiencia optimizada.

Keypoint ads

00:02:36

Preferencia del sistema operativo

La migración temporal a Cali se debió a problemas con Parrot OS, pero con la resolución del problema en la última versión, el hablante ha regresado a Parrot OS, enfatizando una preferencia por él.

Keypoint ads

00:02:49

Personalización de Linux

El curso de personalización de Linux en La Academia se actualizó recientemente para mostrar la personalización de Parrot OS, destacando una experiencia fluida sin problemas.

Keypoint ads

00:03:18

Creación de directorio

Se crea un directorio llamado 'ton' utilizando la utilidad 'mkt', demostrando una configuración personalizada del flujo de trabajo para una organización eficiente del trabajo.

Keypoint ads

00:04:07

Valores TTL para máquinas Linux y Windows

En el contexto de Hack The Box, los valores de TTL alrededor de 64 son típicamente vistos para máquinas Linux y alrededor de 128 para máquinas Windows. Esta distinción es importante ya que ayuda a identificar el tipo de máquina que se está atacando durante la exploración de red.

Keypoint ads

00:05:02

Script de Python para la Detección de TTL

Un script de Python 3 está disponible que puede detectar el valor TTL de un objetivo sin necesidad de conocer rangos específicos. Este script proporciona una forma conveniente de determinar si una máquina está ejecutando Linux o Windows en función de su valor TTL.

Keypoint ads

00:05:28

Identificación de la máquina

Al usar el script de Python e ingresar la dirección IP, puede identificar con precisión si la máquina objetivo es un sistema Linux o Windows basado en el valor TTL reportado.

Keypoint ads

00:06:14

Exploración de puertos con Nmap

Al realizar un escaneo de puertos con Nmap, es crucial enfocarse en identificar los puertos abiertos en lugar de los filtrados. Esto garantiza que los resultados sean relevantes para un análisis y explotación posteriores.

Keypoint ads

00:06:47

Técnica de Escaneo Sigiloso

Utilizar un modo de escaneo Stealth en Nmap permite un proceso de escaneo más rápido y discreto. Al no completar el handshake de tres vías, el escaneo permanece sigiloso, reduciendo las posibilidades de dejar rastros y potencialmente aumentando la velocidad de escaneo.

Keypoint ads

00:07:42

Salida detallada en Nmap

Habilitar la opción de triple verbose en Nmap proporciona retroalimentación en tiempo real durante el proceso de escaneo, permitiendo la identificación inmediata de puertos abiertos a medida que avanza el escaneo. Este nivel de verbosidad ayuda en monitorear y analizar los resultados del escaneo de manera efectiva.

Keypoint ads

00:08:03

Medidas de seguridad de red

El orador discute medidas de seguridad de red, como deshabilitar la resolución de DNS y el descubrimiento de hosts ARP para mejorar la velocidad de escaneo y evitar posibles riesgos. Recomiendan usar parámetros específicos como '-pn' para evitar escaneos de red no deseados, especialmente cuando se está conectado a plataformas como Hack The Box.

Keypoint ads

00:09:00

Exportación de datos y análisis

El orador explica el proceso de exportar datos en formato 'grep' al archivo 'all ports' para un análisis eficiente. Destacan los beneficios de usar expresiones regulares (regex) para filtrar información relevante rápidamente y sugieren incorporar una función personalizada como 'extract ports' en el archivo 'zshrc' para la extracción de datos simplificada.

Keypoint ads

00:10:18

Exploración de puertos e identificación de servicios

El orador demuestra el uso de 'nmap' para el escaneo de puertos, identificando servicios como SSH en el puerto 22 y HTTP en el puerto 80. Hacen hincapié en la importancia de realizar escaneos exhaustivos para determinar los servicios y versiones que se ejecutan en un sistema, lo que permite una investigación adicional y recopilación de información.

Keypoint ads

00:11:29

Reconocimiento basado en scripts

El orador profundiza en la reconocimiento basado en scripts utilizando scripts Lua en 'nmap' para recopilar información detallada sobre servicios y sistemas. Explican cómo los scripts se categorizan según funcionalidades, permitiendo a los usuarios personalizar escaneos seleccionando categorías de scripts específicas o combinándolas para una reconocimiento completo.

Keypoint ads

00:12:05

Ordenación y visualización de datos

Al encerrar todo el resultado entre comillas dobles, presionar enter y aplicar un comando de ordenamiento, puedes ordenar alfabéticamente los datos. Esta representación visual ayuda a identificar repeticiones y listar cadenas únicas. Hay un total de 13 o 14 categorías que se pueden combinar según sea necesario.

Keypoint ads

00:12:36

Ejecución de script para detección de puertos

Los scripts para tareas de reconocimiento popular pueden ser solicitados, junto con la detección de la versión y servicio en ejecución en puertos específicos de una dirección IP dada. Estos parámetros pueden combinarse para mayor eficiencia y exportarse en formato nmap a un archivo llamado 'targeted' para mantener evidencia de escaneo.

Keypoint ads

00:13:30

Agradecimiento y Reconocimiento

Expresando gratitud por el apoyo y reconociendo la ayuda recibida en la ejecución de tareas. Enfatizando la importancia de mantener evidencia para todos los escaneos para evitar trabajo redundante y pérdida de tiempo.

Keypoint ads

00:13:45

Revisando el archivo 'targeted'

Examinando el archivo 'objetivo' para mejorar la legibilidad utilizando un alias 'bat' para el comando 'cat' con especificación de lenguaje para una mejor visualización. Se destacan los detalles sobre la vulnerabilidad del puerto SSH 22 debido a la versión superior a 7.7 y la redirección del puerto HTTP 80 a 'tum.millon.htb'.

Keypoint ads

00:15:02

Determinando la versión de Ubuntu

Utilizando encabezados para determinar la versión de Ubuntu buscando en Google con launchpad. Explorando posibles nombres en clave como 'ubuntu xenial', 'ubuntu trasti', 'ubuntu focal' y 'ubuntu yami'. El proceso implica un análisis descriptivo para confirmar la versión específica de Ubuntu.

Keypoint ads

00:16:06

Exploración de puertos con Scapy

Utilizando Scapy para el escaneo de puertos para agregar complejidad y evitar la monotonía en las interacciones de la máquina. Similar a nmap, esta herramienta mejora la experiencia de escaneo al proporcionar un enfoque diferente para el escaneo de puertos.

Keypoint ads

00:16:18

Resumen del Escaneo Sigiloso

La discusión profundiza en el concepto de un escaneo sigiloso, explorando cómo los paquetes son procesados a un nivel bajo a través de capas. El ponente planea crear un script utilizando Scapy para este propósito, recomendando la instalación de Scapy a través de 'pip 3 install scapy'.

Keypoint ads

00:17:01

Proceso de Escaneo de Conexión TCP

El orador explica el proceso de un escaneo de TCP Connect, ilustrando un apretón de manos de tres vías donde se envía un paquete SYN, seguido de una respuesta SYN-ACK, y finalmente un paquete ACK para establecer una conexión exitosamente. Se destaca la importancia de entender los orígenes y destinos de los paquetes para el desarrollo de scripts.

Keypoint ads

00:18:59

Diferencia con el Escaneo Sigiloso

Se hace una distinción entre un escaneo de conexión TCP y un escaneo sigiloso. En un escaneo sigiloso, el saludo de tres vías no se completa ya que el remitente no envía un paquete ACK después de recibir una respuesta SYN-ACK. Esto deja la conexión abierta, evitando el registro de evidencia de comunicación y potencialmente aumentando la velocidad de escaneo.

Keypoint ads

00:20:19

Script de Python para Escaneo de Puertos

Para realizar un escaneo rápido de puertos utilizando Scapy en Python, el ponente sugiere construir un script que utilice Scapy para el escaneo de puertos. El script debe implementar un enfoque de escaneo Stealth, donde el paquete final a filtrar sería un paquete de reinicio, indicando la finalización del escaneo.

Keypoint ads

00:20:35

Configurando barras de progreso con herramientas p

El orador planea usar herramientas p para crear barras de progreso en su programa, ya que le resulta visualmente atractivo. También mencionan la importación de módulos como Signal, sis y Time para funcionalidades adicionales.

Keypoint ads

00:21:01

Definiendo el Flujo Inicial del Programa

Antes de iniciar el programa, el orador configura una función de controlador para ejecutar cuando el flujo del programa se interrumpe por un comando Ctrl+C. Esta función mostrará un mensaje, como 'saliendo', en la consola y saldrá del programa con un código de error.

Keypoint ads

00:23:11

Escaneando Puertos

El orador discute ejecutar el script con una dirección IP y un rango de puertos, como 2-50, para escanear puertos dentro de ese rango. Enfatizan la importancia de proporcionar argumentos específicos al programa para una ejecución adecuada.

Keypoint ads

00:24:28

Validando los Argumentos del Programa

Para garantizar el uso correcto, el hablante valida el número total de argumentos pasados al programa. Esperan que el usuario ingrese una dirección IP y un rango de puertos, mostrando un mensaje de uso en rojo si los argumentos son incorrectos.

Keypoint ads

00:25:11

Configuración del script

La configuración del script implica especificar detalles como el nombre del script 'sis arc 0', la versión de Python 'python 3' y el rango de puertos a considerar. El nombre del script está resaltado en amarillo, al igual que la dirección IP y el rango de puertos.

Keypoint ads

00:26:03

Validación de entrada

La validación de entrada es crucial, como se demuestra por la necesidad tanto de una dirección IP como de un rango de puertos. La entrada incorrecta conduce a mensajes de error, mientras que la ejecución de la entrada correcta procede sin problemas.

Keypoint ads

00:27:01

Manejo de Rango de Puertos

Al manejar una entrada de rango de puertos como '4-78', dividir la cadena basándose en el delimitador de guion resulta en una lista con los puertos inicial y final. Convertir estos valores a enteros es esencial para un procesamiento adicional.

Keypoint ads

00:28:14

Asignación de Rango de Puertos Dinámica

La asignación dinámica del rango de puertos se logra definiendo una variable 'Rango de Puertos' que calcula el rango desde el puerto de inicio hasta el puerto final más uno. Este ajuste tiene en cuenta la naturaleza exclusiva del valor final en la función de rango de Python.

Keypoint ads

00:29:11

Uso de la Función de Rango

La función 'Range' en Python se utiliza para generar una secuencia de números que representan el rango de puertos. Sumar uno al puerto final asegura que se cubra todo el rango, incluido el puerto final especificado.

Keypoint ads

00:29:58

Configurando la función principal para el escaneo de puertos

El orador planea pasar los valores de IP y puerto total a una función llamada Main para el escaneo de puertos. Mencionan usar 'IP de destino' como parámetro inicial e iterar a través de cada valor de puerto para demostrar el número total de puertos.

Keypoint ads

00:30:40

Enviando paquetes al destino

Durante el proceso de escaneo, el orador explica la necesidad de enviar un paquete separado a cada puerto de destino utilizando scapy. Hacen hincapié en la importancia de construir los paquetes correctamente para una comunicación exitosa.

Keypoint ads

00:31:01

Escaneo de puertos individuales

El orador discute llamar a una función 'escanear Puerto' para escanear puertos individuales pasando la IP y valores de puerto específicos. Destacan la importancia de entender las estructuras de paquetes y la funcionalidad para un escaneo efectivo.

Keypoint ads

00:31:32

Desglose y análisis de paquetes

El orador demuestra el análisis de paquetes utilizando herramientas como tshark para analizar la composición de paquetes en detalle. Sugieren usar Wireshark para obtener una vista más completa de las capas de paquetes y encapsulación.

Keypoint ads

00:32:25

Comprendiendo las capas de paquetes

El orador explica las capas de paquetes, centrándose en las capas IP y TCP. Mencionan la encapsulación y la necesidad de representar con precisión las IPs de destino y los puertos de origen para una comunicación exitosa.

Keypoint ads

00:33:10

Utilizando Puertos Aleatorios para Escanear

Para garantizar un escaneo efectivo, el ponente sugiere utilizar puertos aleatorios como puertos de origen durante el escaneo. Mencionan el uso de 'rant short' para generar puertos aleatorios dentro del rango de 65,535 para una mayor eficiencia en el escaneo.

Keypoint ads

00:33:55

Configurando Puertos y Banderas

El orador discute la configuración de puertos y banderas para la comunicación de paquetes. Hacen hincapié en establecer los puertos de origen y destino correctamente, especificando el uso de 'rant short' para los puertos de origen aleatorios, y definiendo banderas como 'SIM' para la identificación de paquetes.

Keypoint ads

00:34:24

Manejo de errores en el procesamiento de paquetes

Al tratar con errores de procesamiento de paquetes, es esencial utilizar bloques try-except para capturar excepciones y mostrar mensajes de error descriptivos. Utilizar bibliotecas como pTools puede ayudar a presentar mensajes de error informativos para comprender el problema en cuestión. Establecer códigos y mensajes de error específicos puede ayudar en la resolución de problemas e identificación de la causa raíz de los errores.

Keypoint ads

00:35:16

Representación e interpretación de paquetes

En la representación de paquetes, distinguir entre valores hexadecimales como 0x02 y 0x12 es crucial para un manejo preciso de los paquetes. Es importante definir claramente los tipos de paquetes para evitar confusiones durante la transmisión o captura de paquetes. El uso de identificadores específicos como 's' para paquetes SYN y 'r' para paquetes de reset puede agilizar la interpretación y procesamiento de paquetes.

Keypoint ads

00:36:10

Pruebas y solución de problemas de paquetes

Probar la transmisión y recepción de paquetes a través de herramientas como tshark puede ayudar en analizar el comportamiento de los paquetes e identificar cualquier error en el proceso. Implementar mecanismos de manejo de errores y códigos de estado puede ayudar en diagnosticar problemas y refinar algoritmos de procesamiento de paquetes para mejorar la comunicación en red.

Keypoint ads

00:37:01

Estructura y configuración del paquete

Configurar estructuras de paquetes con la encapsulación adecuada, incluyendo las capas de IP y TCP, es esencial para definir de manera precisa los destinos de los paquetes, los puertos y las banderas. Utilizar funciones como randshort para generar puertos aleatorios dentro de un rango especificado puede mejorar la seguridad de los paquetes y la fiabilidad de la comunicación en la red.

Keypoint ads

00:38:21

Estableciendo los niveles de tiempo de espera y verbosidad

Establecer duraciones de tiempo de espera para respuestas de paquetes, como 2 segundos, y ajustar niveles de verbosidad para minimizar la salida innecesaria puede agilizar el procesamiento y análisis de paquetes. Al ajustar la configuración de tiempo de espera y la verbosidad, los administradores de red pueden optimizar la eficiencia en el manejo de paquetes y reducir el desorden de información superflua.

Keypoint ads

00:38:45

Advertencia de compatibilidad con Python 3

Al ejecutar código Python 3, puede encontrarse una advertencia de compatibilidad sobre tipos L3 incompatibles. Esta advertencia indica la necesidad de definir si el código está tratando con IPv4 o IPv6. A pesar de la advertencia, el código seguirá funcionando correctamente. Para abordar esta advertencia, se puede importar la biblioteca de registro y establecer el nivel de registro para mostrar solo errores críticos, ignorando advertencias y otros mensajes no críticos.

Keypoint ads

00:39:30

Estableciendo niveles de registro en Scapy

Para establecer niveles de error específicos en Scapy utilizando la biblioteca de registro, se puede utilizar el método 'getLogger' junto con 'setLevel'. Al especificar 'login.error', solo se mostrarán errores críticos durante la ejecución, ignorando advertencias no críticas. Esto permite un enfoque más centrado en el manejo de errores y el registro.

Keypoint ads

00:40:39

Exploración de puertos y análisis de paquetes

En el contexto del escaneo de puertos, enviar paquetes y analizar respuestas puede ayudar a determinar si un puerto está abierto o cerrado. Al enviar paquetes como SYN y SYN-ACK a puertos específicos, se pueden observar las respuestas para identificar puertos abiertos. Analizar las banderas de los paquetes, como la bandera SYN-ACK (0x12), puede indicar si un servidor ha respondido en un puerto particular, revelando su estado como abierto o cerrado.

Keypoint ads

00:43:22

Manejo de respuestas

Si la respuesta está vacía o carece de contenido, la función debe devolver falso. Esto indica que no se recibió información válida. Por otro lado, si la respuesta contiene datos, la función debe analizarlos para determinar si un puerto está abierto o cerrado.

Keypoint ads

00:43:31

Determinación del estado del puerto

Al examinar la respuesta, la función puede determinar el estado de un puerto. Si la respuesta indica 'verdadero', significa que el puerto está abierto y la función puede proceder a recopilar más información sobre el puerto.

Keypoint ads

00:44:10

Informe del Estado del Puerto

Cuando la respuesta es 'verdadero', indicando un puerto abierto, la función puede informar este estado indicando que el puerto está abierto y disponible para la comunicación. Esta información puede ser transmitida al usuario para tomar acciones adicionales.

Keypoint ads

00:44:44

Análisis de paquetes

Para determinar si un paquete es un paquete SYN, la función verifica si la capa TCP contiene el campo 'flx' con un valor de 12. Si se cumple esta condición, la función puede confirmar que el paquete es efectivamente un paquete SYN.

Keypoint ads

00:45:12

Manejo de paquetes

Si se encuentra que un puerto está abierto, la tarea de la función es enviar un paquete de reinicio para cerrar el puerto. Esta acción es necesaria para garantizar la seguridad y prevenir el acceso no autorizado a través del puerto abierto.

Keypoint ads

00:45:16

Manejo de errores

Si la respuesta no coincide con ninguna de las condiciones esperadas, la función debería devolver falso. Esto indica que el paquete recibido no es relevante para el escaneo y puede ser ignorado.

Keypoint ads

00:46:51

Seguimiento del progreso

Para proporcionar retroalimentación al usuario durante el escaneo de puertos, se puede mostrar una barra de progreso llamada 'escaneo tcp'. Esta barra se actualiza a medida que se escanea cada puerto, brindando información en tiempo real sobre el proceso de escaneo.

Keypoint ads

00:48:04

Estableciendo el puerto final para el escaneo

El orador menciona establecer el puerto final en 65535 para fines de escaneo. Explican que el puerto final se especifica como el puerto de destino final para el escaneo, que se indica con 'end Port' en la función principal.

Keypoint ads

00:48:49

Manejo de la Terminación del Escaneo

En caso de terminación del escaneo, el orador sugiere mostrar 'escaneo finalizado' para completar exitosamente y 'escaneo abortado' para salidas forzadas como usar control c. Discuten posibles mensajes como 'escaneo terminado (control c ha sido preestablecido)' o 'escaneo abortado' para indicar interrupción del escaneo.

Keypoint ads

00:50:32

Manejo de errores y retroalimentación

El orador menciona humorísticamente la posibilidad de mostrar 'escaneo abortado' para tareas incompletas debido a errores como la falta de definiciones de funciones. Enfatizan la importancia de prestar atención a los detalles y proporcionar retroalimentación constructiva para prevenir errores en el proceso de escaneo.

Keypoint ads

00:50:44

Eficiencia en el escaneo

Para mejorar la eficiencia del escaneo, el ponente recomienda utilizar hilos para acelerar el proceso. Sugieren importar la biblioteca 'threading' y organizar los hilos para ejecutar escaneos paralelos, pasando los puertos correspondientes para cada llamada. Este enfoque tiene como objetivo optimizar la velocidad de escaneo y la utilización de recursos.

Keypoint ads

00:51:27

Implementando el Multihilo para Escaneos Paralelos

El orador explica el proceso de implementar el multihilo para escaneos paralelos. Discuten la creación de una lista de hilos y el uso del módulo 'threading' para definir funciones de hilo con argumentos como direcciones IP y puertos. Al utilizar los hilos de manera efectiva, el proceso de escaneo puede acelerarse y gestionarse de manera más eficiente.

Keypoint ads

00:52:41

Configurando un escáner de puertos en Python usando Scapy

El orador explica el proceso de configurar un escáner de puertos en Python usando Scapy. Mencionan que la respuesta será una llamada a la función 'scan', pasando la IP y el puerto. Si la respuesta es verdadera, indica que el puerto está abierto. El orador discute la copia y pegado de código, el manejo de operaciones de anexar hilo, y la iteración a través de una lista de hilos para la paralelización.

Keypoint ads

00:54:01

Optimizando velocidad y rendimiento

El orador sugiere optimizar la velocidad y el rendimiento implementando la paralelización en el código. Recomiendan usar hilos y uniones para manejar múltiples llamadas de función de manera concurrente. El orador menciona probar para mejorar la velocidad, específicamente para los puertos 22 y 80, y aborda errores relacionados con las operaciones de hilo.

Keypoint ads

00:55:01

Estructura del paquete Scapy y rango de escaneo

El orador discute la conveniencia de Scapy para analizar estructuras de paquetes y crear paquetes personalizados. Mencionan el escaneo de puertos del 1 al 65535, destacando posibles retrasos en el escaneo de todos los puertos. El orador enfatiza la importancia de la precisión en informar los puertos abiertos y ajustar la configuración de tiempo de espera para las respuestas del servidor.

Keypoint ads

00:56:27

Gestionando limitaciones de hilos y escaneo sigiloso

El orador habla sobre cómo gestionar las limitaciones de los hilos utilizando ejecutores para un manejo eficiente de los hilos. Hacen hincapié en la importancia del escaneo sigiloso para evitar ser detectados por los servidores. El orador explica el concepto de olfatear paquetes y la importancia de completar el saludo de tres vías para establecer conexiones sin dejar rastros.

Keypoint ads

00:57:11

Estado de conexión y emisión de paquetes

El orador menciona que incluso si estás conectado, tu estado puede no mostrarse como conectado debido a la emisión de muchos paquetes, causando ruido. Esto está relacionado con los procesos ESAN y MAP.

Keypoint ads

00:57:33

Interacción con la máquina

El orador sugiere agregar alguna actividad a la máquina para hacerla menos aburrida, aunque la máquina ya es impresionante. Proceden a mencionar una dirección IP, 10.129.23.177, y discuten campos de inicio de sesión y autenticación.

Keypoint ads

00:58:13

Iniciar sesión en Hack the Box

El orador habla sobre el proceso de inicio de sesión en Hack the Box, mencionando que no es un hack oficial de Hack the Box. Discuten el 'Antiguo login' y la falta de funcionalidades definidas como la recuperación de contraseña.

Keypoint ads

00:58:40

Membresía de Hack the Box

El orador rememora el proceso pasado de obtener un código de membresía para Hack the Box registrándose y obteniendo un código de invitación. Mencionan la funcionalidad de 'unirse' y el proceso de generación de códigos de invitación.

Keypoint ads

00:59:07

Generación de código y encriptación

El orador demuestra la generación de código para un código de invitación, señalando que los datos están encriptados. Mencionan el tipo de encriptación 'rot 13' y sugieren verificar el tipo de encriptación para desencriptar los datos.

Keypoint ads

01:00:02

Encriptación ROT13

El orador explica el método de encriptación ROT13, donde cada letra se rota 13 posiciones en el alfabeto. Proporcionan un ejemplo de cómo aplicar la encriptación ROT13 usando el comando 'TR' en la consola.

Keypoint ads

01:01:40

Solicitud de API y Decodificación

Una solicitud se puede hacer al punto final http://mion.htb usando curl, que parece tener una API detrás de él. La respuesta probablemente esté en formato JSON. Al decodificar un valor base64 encontrado en la respuesta, se puede obtener una invitación de código similar a las utilizadas en plataformas como Hack The Box.

Keypoint ads

01:02:13

Invitación de código

Decodificar el valor base64 revela una invitación de código, reminiscente de procesos de registro de plataformas como Hack The Box de hace unos 10 años. Este código puede ser utilizado con fines de registro.

Keypoint ads

01:03:46

Registro de usuario

Un usuario con el nombre de usuario 'savitar' y el correo electrónico 'savitar@sbcglobal.net' se ha registrado exitosamente. El proceso de registro implica ingresar un código de invitación y crear una contraseña.

Keypoint ads

01:04:19

Reconocimiento de suscriptores

Se da reconocimiento a los suscriptores, incluyendo a 'sebiJesúsrm69' por 5 meses, 'Iván Pérez Molina' por 3 meses, 'sulivan gfx' por 21 meses, y 'suvanjef' por un regalo de suscripción. Se extienden agradecimientos especiales a los moderadores 'Alex calion' y 'matc9' por su apoyo.

Keypoint ads

01:04:48

Desafíos del Registro

Se destaca la dificultad y confusión inicial enfrentada durante el proceso de registro, enfatizando la necesidad de orientación por parte de individuos experimentados. Superar los desafíos iniciales llevó a un viaje de aprendizaje y desarrollo de habilidades en el campo del hacking.

Keypoint ads

01:05:26

Experiencia de aprendizaje

El orador reflexiona sobre su viaje de aprendizaje, mencionando la importancia de la orientación práctica en el hacking. Comenzando con un conocimiento mínimo, el orador adquirió gradualmente habilidades y conocimientos, enfatizando el valor de la experiencia práctica sobre la comprensión teórica.

Keypoint ads

01:05:33

Funcionalidad del sitio web

Algunas funciones en el sitio web, como 'Ver mi perfil' y 'Configuración de la cuenta', se señalan como no funcionales, pareciendo el diseño del sitio web de sus primeros días. El hablante expresa curiosidad sobre la posibilidad de descargar una VPN similar a la de Hack The Box para conexiones seguras.

Keypoint ads

01:05:57

Generación de VPN

El orador explora la opción de generar un paquete de conexión VPN similar al de Hack The Box. Al pasar el cursor sobre las opciones 'paquete de conexión' y 'regenerar', se identifican distintos puntos finales relacionados con la generación de VPN, insinuando posibles funcionalidades futuras.

Keypoint ads

01:06:24

Accediendo a los puntos finales de la API

Para acceder a los puntos finales de la API, se puede intentar enviar una solicitud GET y manipular la URL. Al jugar con el modo detallado, es posible que se requiera un conjunto de autorización, posiblemente debido a la necesidad de llevar una cookie de sesión. Esto implica configurar un encabezado con el valor de la cookie de sesión. El uso de jq puede ayudar a ver diferentes puntos finales existentes.

Keypoint ads

01:07:26

Registro de usuario e inicio de sesión

Para el registro de usuarios y el inicio de sesión, es probable que ciertas solicitudes se procesen a través de POST a rutas específicas de la API. Existe una sección de administrador para verificar si un usuario es un administrador enviando una solicitud GET a 'Api v1 admin'. Además, es posible interactuar con otras rutas utilizando solicitudes PUT.

Keypoint ads

01:08:05

Generación de VPN

Generar una VPN para un usuario específico, no el usuario actual, puede ser crítico. Sin embargo, intentar generar una VPN para otro usuario puede requerir privilegios administrativos. Sin la autorización adecuada, intentar generar una VPN puede resultar en una respuesta de 'no autorizado'.

Keypoint ads

01:09:11

Exploración de punto final de API

Explorar más puntos finales de API revela opciones como 'Actualizar configuraciones de administración de la versión de la API' que permite cambiar las características del usuario. Se debe tener cuidado ya que esta acción podría tener implicaciones significativas. Al trabajar con APIs, asegurarse de que el tipo de contenido correcto, típicamente 'application/json', es crucial para solicitudes exitosas.

Keypoint ads

01:11:17

Convirtiéndose en Administradores

El orador menciona que ahora son administradores pero expresan insatisfacción con la configuración actual, indicando la necesidad de mejoras.

Keypoint ads

01:11:23

Generando VPN

Discusión sobre el proceso de generar una VPN para un usuario enviando una solicitud con los detalles del usuario en formato JSON, resaltando la importancia de especificar el nombre de usuario.

Keypoint ads

01:11:46

Cambios en la respuesta

Observando un cambio en la respuesta de 'no autorizado' a 'tipo de contenido no válido' después de modificar los encabezados de la solicitud para incluir 'tipo de contenido aplicación/json' y proporcionar el parámetro 'nombre de usuario'.

Keypoint ads

01:12:23

Generación dinámica de VPN

Observación de que el sistema genera una VPN basada en el usuario especificado en la solicitud, lo que sugiere una posible ejecución de comandos a nivel de sistema para la creación de la VPN.

Keypoint ads

01:13:00

Preocupaciones de seguridad

Destacando la importancia de garantizar la validación de entrada para prevenir ataques de inyección de comandos, advirtiendo sobre posibles vulnerabilidades en el proceso de creación de VPN.

Keypoint ads

01:14:15

Ejecución remota de comandos

Discusión sobre la falta de capacidades de ejecución de comandos remotos, seguida de un escenario hipotético de obtener acceso al sistema escuchando en el puerto 443 para una shell inversa.

Keypoint ads

01:15:02

Gestión de terminales

Explicación sobre cómo gestionar la terminal de manera efectiva aplicando comandos específicos para mantener el control y prevenir la terminación accidental de servicios.

Keypoint ads

01:15:36

Configuración del entorno de terminal

El valor de 'term' debe establecerse en 'X term' para habilitar el control. Si la terminal no tiene 'bash', se recomienda exportar 'shell bash'. Ajustar las dimensiones de la terminal para que coincidan con el tamaño de la ventana de la terminal es crucial para un funcionamiento adecuado.

Keypoint ads

01:16:13

Explotación de API

Explotar una falta de saneamiento de API a través de 'curl' puede llevar a vulnerabilidades de seguridad. La explotación detallada de API se cubre en una sección dedicada de la academia, ofreciendo ejemplos y ejercicios prácticos para la enumeración y explotación en un entorno controlado.

Keypoint ads

01:17:00

Plan de estudios de la academia

La academia ofrece un curso completo sobre la explotación de API, dedicando aproximadamente una hora para cubrir temas como la enumeración y explotación en un entorno controlado utilizando Docker. El curso proporciona ejemplos detallados para una comprensión más profunda de la seguridad de API.

Keypoint ads

01:17:25

Personalización de Linux

La academia también abarca la personalización de Linux, guiando a los estudiantes en la configuración de su entorno para un rendimiento óptimo. Los estudiantes pueden personalizar su configuración, explorar recursos y cambiar entre modos claro y oscuro para una experiencia personalizada.

Keypoint ads

01:18:53

Configuración del entorno

Ya sea utilizando Parrot o Kali, configurar el entorno es similar y no debería plantear desafíos significativos. Ambas distribuciones ofrecen herramientas y funciones para un trabajo cómodo y eficiente, permitiendo a los usuarios crear espacios de trabajo, abrir múltiples consolas y personalizar su configuración.

Keypoint ads

01:19:00

Seguridad de la base de datos

En un archivo PHP llamado 'database.php', las credenciales como nombre de usuario y contraseña suelen ser almacenadas. Sin embargo, utilizar variables de entorno para almacenar información sensible como el host, usuario y contraseña puede mejorar la seguridad. Acceder a las credenciales desde variables de entorno puede prevenir exponerlas en texto claro.

Keypoint ads

01:20:20

Accediendo al correo electrónico

Para acceder a los correos electrónicos, navegue hasta el directorio 'bar mail' donde se encuentra un archivo de correo electrónico. Al examinar las enumeraciones del sistema, se pueden identificar los privilegios de usuario y las membresías de grupo, como no tener privilegios de sudo o ser parte del grupo 'docker'.

Keypoint ads

01:21:40

Análisis de sistemas

Analizar un sistema Ubuntu Yami revela una versión del kernel de 5.1.7, potencialmente explotable para la escalada de privilegios utilizando técnicas como overlay fs. A pesar de dudas anteriores, el sistema carece de binarios explotables con permisos setuid.

Keypoint ads

01:22:25

Búsqueda de propiedad de archivo

Realizar búsquedas de archivos propiedad de 'admin' desde el directorio raíz puede revelar archivos potencialmente interesantes. Filtrar directorios irrelevantes como 'sis' y 'proc' utilizando redirección y tuberías puede llevar a descubrir archivos como 'bar mail admin' que contienen información valiosa.

Keypoint ads

01:23:39

Visita a Hack The Box

Recordando una visita a las oficinas de Hack The Box en Grecia, donde la CEO, Pilarin, estaba ausente. A pesar de reunirse con el equipo de marketing y recibir regalos como calcetines, camiseta y llavero de Hack The Box, el ambiente era acogedor. La comunicación fue en inglés, mostrando competencia, y se mencionó un proyecto reciente de migración de base de datos.

Keypoint ads

01:24:39

Mantenimiento del servidor y actualización del sistema

El orador menciona la necesidad de mantenimiento del servidor y una actualización del sistema debido a vulnerabilidades recientes relacionadas con el kernel de Linux. Específicamente, se han identificado vulnerabilidades como overlight fs fuse, que podrían potencialmente llevar a exploits de escalada de privilegios.

Keypoint ads

01:25:26

Permisos de usuario y Escalada de privilegios

El orador explica la diferencia entre ser un administrador y tener acceso de root, resaltando las limitaciones de no tener privilegios de root. Esta distinción se vuelve crucial al intentar explotar vulnerabilidades y elevar privilegios en un sistema.

Keypoint ads

01:26:43

Explotando vulnerabilidades

El orador discute el proceso de clonación y transferencia de archivos de explotación a una máquina objetivo, enfatizando la importancia de comprimir archivos para una transferencia eficiente. Siguiendo pasos específicos como compilar binarios y ejecutar comandos, el orador demuestra cómo explotar vulnerabilidades con éxito.

Keypoint ads

01:28:02

Decodificación de mensajes

El orador decodifica un mensaje utilizando codificación de URL y demuestra la conversión de datos hexadecimales a texto legible. Al utilizar herramientas como PHP para decodificar y xxd para la conversión inversa, el orador muestra un método para revelar mensajes e información oculta.

Keypoint ads

01:29:22

Método de descifrado usando XOR y Base64

El orador explica un método de descifrado utilizando XOR y Base64. Mencionan usar Cyber Chef para romper la encriptación rápidamente ya que la clave es conocida. Al convertir una cadena Base64 a hexadecimal y aplicar XOR, descifran el mensaje 'Hack de box'.

Keypoint ads

01:30:39

Celebración de 2 millones de usuarios en la plataforma

El orador expresa gratitud por alcanzar los 2 millones de usuarios en la plataforma, mencionando la máquina 't millon' nombrada en celebración. Elogian el esfuerzo puesto en la creación de máquinas de alta calidad por el equipo de Hack de box, expresando admiración y respeto por su trabajo.

Keypoint ads

01:31:11

Agradecimiento hacia el equipo de Hack de Box.

El orador recuerda visitar las oficinas de Hack de Box y expresar gratitud al equipo por su impacto en su proceso de aprendizaje. Mencionan el deseo de comunicarse mejor en inglés para transmitir el impacto significativo que el equipo ha tenido en su vida y carrera, enfatizando una profunda apreciación y respeto por el equipo.

Keypoint ads

01:31:49

Pensamientos finales y agradecimientos

En conclusión, el orador reitera su admiración y respeto por el equipo de Hack de Box, reconociendo la influencia positiva que el equipo ha tenido en su vida. Expresan gratitud y admiración, destacando la experiencia y el impacto en su experiencia de aprendizaje.

Keypoint ads

Did you like this Youtube video summary? 🚀

Try it for FREE!

bottom of page