Santiago Benavidez

Software engineering

Áreas en desarrollo

Lenguajes de programación y frameworks

  • Jetpack Compose (UI en Kotlin) con Material 3 Expressive
  • Angular
  • CSS
  • Django
  • HTML
  • JavaScript
  • Python
  • TypeScript

Habilidades técnicas

  • Automatización de tareas a escala, mediante scripts diseñados en python para entornos individuales y/o locales sin conexión a internet
  • Diseño de servidores y bases de datos
  • Desarrollo de sitios web y aplicaciones móviles multiplataforma
  • Prototipado de aplicaciones con diseños de alta fidelidad en Figma
  • Implementación de embeddings y modelos de lenguaje (LLMs)

Experimentos aislados

  • Core Actualidad

    Núcleo modular listo para el desarrollo completo de Productos Mínimos Viables (MVP) altamente optimizados, escalables y de bajo costo de mantenimiento.
    Diseñado para actualizar y liderar en masa aplicaciones finales. Cualquier mejora aplicada al núcleo se replica automáticamente en todas las apps basadas en él, reduciendo tiempos y esfuerzo de mantenimiento.
    Utilizo Rust como lenguaje de backend (servidor), cuenta con ejecución de bajo nivel cercana al fierro (hardware), lo que reduce altos costos de computo en la nube. Solo así garantizo un rendimiento máximo, alta eficiencia y seguridad en memoria, evitando vulnerabilidades comunes como los desbordamientos de búfer presentes en lenguajes tradicionales como C o C++.
    En el frontend, empleo Kotlin para crear interfaces reutilizables bajo un sistema visual basado en Material You. Aseguro una experiencia coherente, moderna y alineada con las guías de diseño actuales de Google.

    Habilidades empleadas: Figma Kotlin Material You PostgreSQL PostgreSQL Rust
  • Fashion Diffusion 2023

    Una tienda en línea que integra todo el catálogo de indumentaria publicado en MercadoLibre, con imágenes de entrenamiento suficientes por artículo, actualizadas en tiempo real. La plataforma permite generar visualizaciones realistas del usuario vistiendo cualquier prenda disponible, ofreciendo una experiencia previa a la compra más inmersiva y personalizada. El potencial se vió limitado por factores como: el posible mal uso de la tecnología para generar imágenes indebidas (como correr riesgo de que se genere deepnude en el servidor), el alto costo computacional asociado al uso intensivo de GPU/TPU, y el riesgo de infringir normas legales.

    Habilidades empleadas: CSS Django Google Colab HTML JavaScript Postgresql Python Selenium Web Driver Stable Diffusion Web Scrapping Coste de desarrollo: 1 año
  • OniricMapping 2023

    Un sistema diseñado para comparar similitud entre cada bloque de imagen satelital del planeta con un dibujo otorgado por el usuario, surgidos de sus sueños oníricos (mios). Utilizando una API no oficial de Google Maps —obtenida tras analizar los endpoints consultados por la plataforma— el script recorre coordenadas globales, descarga imágenes satelitales en tiempo real y evalúa su similitud con el dibujo ingresado. El usuario puede ajustar el umbral de similitud deseado, permitiendo que el sistema detecte coincidencias visuales entre el fragmento soñado y regiones reales del planeta. Una herramienta experimental para geolocalizar sueños. Utilizando StableDiffusion control-net (gradio_scribble2image.py) para convertir los trazos del soñador en mapas satelitales

    Habilidades empleadas: Python Stable diffusion Web Scrapping Coste de desarrollo: 3 semanas
  • LifeToMovie 2022

    Una App Web que recibe tu historia personal como entrada y sugiere películas donde la similitud entre tu relato y la vida del protagonista sea alta. Se mal basó en la API de ChatGPT para interpretar los textos, cosa que devolvía resultados genéricos. Ahora (2025) soy consciente de que la versión ideal se lograría vectorizando toda la información narrativa de las películas para así compararla directamente con la historia del usuario. Esto permitiría localizar similitudes empíricas.

    Habilidades empleadas: CSS Django HTML OpenAI API Postgresql Python TMDB API Coste de desarrollo: 1 mes
  • MeliAI 2021

    Un sistema completo y automatizado desarrollado en Python con Selenium, diseñado para navegar y recolectar masivamente información de productos desde la plataforma de MercadoLibre. Su objetivo principal es identificar aquellos artículos que carecen de descripción detallada, generar textos optimizados utilizando modelos de lenguaje (LLM) a partir de detalles técnicos de los productos (sin descripción). Incluye un generador automático de documentos con las nuevas descripciones mejoradas y un sistema de distribución masiva para enviarlas directamente a los vendedores vía whatsapp (Api no oficial creada con selenium). Aunque MercadoLibre no provee canales de contacto externos de forma oficial, el sistema logra acceder a ellos mediante técnicas avanzadas de descubrimiento basadas en análisis de subdominios... si xD

    Coste de desarrollo: 2 meses Habilidades empleadas: API de WhatsApp vía scraping Python Selenium Web Driver Web Scrapping
  • PsicoRecogn 2021

    Serie de scripts que recolecta de manera masiva, rostros y los analiza en busca de patrones asociados a la morfopsicología. Utiliza OpenCV para el reconocimiento y trazado de lineamientos faciales, aunque con una precisión del asco. El desarrollo quedó en pausa, a la espera de mejores modelos y más veloces que permita parar marcar mallas faciales con mejor precision. Para tener mayor fiabilidad en los rasgos morfopsicológicos y poner esta pseudo sciencia a prueba.

    Habilidades empleadas: Open CV Python Selenium Web Drive Web Scraping Coste de desarrollo: 1 mes

Captura la bandera (CTF)

  • Mirai Marzo 29, 2024
    Linux

    Mirai demuestra uno de los vectores de ataque de más rápido crecimiento en la era moderna. Los dispositivos IoT mal configurados. A medida que se multiplican por el mundo, botnets enteras los explotan sin descanso, y los atacantes los usan para establecer persistencia a largo plazo dentro de redes internas. Una amenaza sigilosa, imparable y en expansión.

    Default Credentials Information Disclosure
  • Bashed Marzo 29, 2024
    Linux

    Bashed es una máquina relativamente sencilla que se centra en el uso de fuzzing para descubrir archivos clave. Aunque el acceso básico al crontab está restringido, cada pista encontrada revela un sendero oculto hacia la escalada de privilegios.

    Code Execution OS Command Injection
  • Cap Marzo 30, 2024
    Linux

    Cap es una maquina que expone un servidor HTTP con funciones administrativas mal protegidas. Una vulnerabilidad IDOR permite acceder a capturas de red ajenas, revelando credenciales en texto plano. Con ellas, se gana acceso y se escala a root mediante una capacidad de Linux mal gestionada.

    Clear Text Credentials File System Configuration Insecure Direct Object Reference (IDOR)
  • SteamCloud Abril 22, 2024
    Linux

    SteamCloud es una máquina que revela puertos específicos de Kubernetes abiertos. Aunque el API requiere autenticación, Kubelet permite acceso anónimo, lo que permite listar pods del clúster. Al acceder a uno de ellos, se obtienen claves para autenticar en la API y desplegar un pod malicioso desde donde se ejecutan comandos para capturar la root flag.

    Anonymous/Guest Access Command Execution Misconfiguration Sensitive Data Exposure
  • Secret Abril 23, 2024
    Linux

    Secret es una máquina Linux que expone el código fuente de una API de autenticación personalizada, revelando un repositorio Git con un commit que contiene la clave secreta para firmar tokens JWT. Con esta clave, se falsifica un token como theadmin y se explota un endpoint vulnerable a inyección de comandos para obtener una shell como dasith. Luego, se abusa de un binario SUID que lee archivos como root; al provocar un fallo con volcados de memoria activos, se extrae la clave SSH de root.

    Misconfiguration OS Command Injection Weak Authentication
  • Blunder Abril 25, 2024
    Linux

    Blunder es una máquina Linux que expone un CMS Bludit en el puerto 80. Tras identificar un archivo de texto con pistas sobre el usuario fergus y una página de login admin protegida contra ataques de fuerza bruta, se explota una vulnerabilidad para acceder al panel como fergus. Luego, se usa una vulnerabilidad de carga de archivos arbitrarios y traversal de directorios para obtener una shell como www-data. La enumeración revela una versión actualizada de Bludit con el hash SHA1 de la contraseña de hugo, que se descifra en línea. El usuario hugo puede ejecutar comandos como cualquier otro usuario con sudo, y al explotar una vulnerabilidad en sudo (CVE-2019-14287), se obtiene una shell como root.

    Arbitrary File Upload Directory Traversal
  • Sense Abril 28, 2024
    OpenBSD

    Sense es una máquina que, aunque no requiere muchos pasos, se vuelve desafiante debido a que el exploit de prueba de concepto disponible es poco fiable. Se necesita un enfoque alternativo que utilice la misma vulnerabilidad de manera distinta para conseguir acceso, demostrando que el éxito a menudo depende de la adaptabilidad frente a los fallos.

    Clear Text Credentials Remote Code Execution Sensitive Data Exposure
  • SwagShop Abril 29 del 2024
    Linux

    SwagShop es una máquina Linux que ejecuta una versión antigua de Magento, vulnerable a SQLi y RCE, lo que lleva a una shell. El usuario de bajo nivel puede ejecutar vim con privilegios de 'sudo', lo que puede ser aprovechado para escalar privilegios y obtener una shell como root. Un recordatorio de que lo obsoleto puede ser la llave maestra para la conquista total del sistema.

    Remote Code Execution
  • Postman Abril 30, 2024
    Linux

    Postman es una máquina Linux que ejecuta un servidor Redis sin autenticación. Este servicio se puede aprovechar para escribir una clave pública SSH en la carpeta del usuario. Tras encontrar una clave privada SSH cifrada y crackearla, se obtiene acceso al usuario. Además, el usuario tiene una cuenta en una versión antigua de Webmin, que es explotada mediante inyección de comandos para obtener privilegios root. La vulnerabilidad yace en lo que parece ser seguro, y su explotación abre el camino hacia el control total.

    Arbitrary File Write Weak Authentication
  • OverGraph Mayo 04, 2024
    Linux

    Overgraph es una máquina difícil que comienza con una página estática en el puerto 80. Tras identificar vhosts y registrar una cuenta, un ataque de NoSQL permite omitir la validación OTP. Se manipulan cookies para obtener privilegios de administrador, y mediante una combinación de XSS y CSRF, se roba el token de administrador. Luego, al explotar un error en FFmpeg, se exfiltra una clave SSH, y con una vulnerabilidad de "Use After Free", se obtiene ejecución de código como root.

    Cross Site Request Forgery (CSRF) Cross Site Scripting (XSS) Heap Overflow Information Disclosure Local File Inclusion NoSQL Injection Server Side Request Forgery (SSRF) Server Side Template Injection (SSTI)
  • Unicode Mayo 04, 2024
    Linux

    Unicode es una máquina de dificultad media que comienza con un webserver y un JWT cookie para autenticación. Tras manipular el JWT y acceder a un nuevo dashboard, se descubre un endpoint LFI que se puede vulnerar mediante un ataque HostSplit con caracteres Unicode. Esto lleva a obtener credenciales SSH como code, quien puede ejecutar un binario compilado en Python. Tras extraer el código fuente, se encuentra una forma de inyectar comandos y colocar una clave SSH en el directorio de root, logrando finalmente acceso como root.

    Argument Injection Local File Inclusion
  • Fulcrum Mayo 05, 2024
    Linux, Windows

    Fulcrum es una de las máquinas más desafiantes en Hack The Box. Requiere varios pivoteos entre Linux y Windows, y se enfoca profundamente en el uso de PowerShell, un terreno donde solo los expertos pueden prevalecer.

    Clear Text Credentials Information Disclosure XXE Injection
  • Mischief Mayo 5, 2024
    Linux

    Mischief es una máquina de dificultad extrema que resalta los riesgos de exponer SNMP y de pasar credenciales por la línea de comandos. Además, presenta una página de administración de "ping", común en dispositivos, que es clave para explorar vulnerabilidades de RCE.

    OS Command Injection
  • Aragog Mayo 06, 2024
    Linux

    Aragog aborda varias vulnerabilidades, técnicas y configuraciones incorrectas comunes en el mundo real.

    Anonymous/Guest Access XXE Injection
  • Ariekei Mayo 08, 2024
    Linux

    Ariekei es una máquina compleja que se centra principalmente en firewalls de aplicaciones web y técnicas de pivoteo. Es una de las más desafiantes, requiriendo múltiples escaladas y escapes de contenedores.

    OS Command Injection
  • Ellingson Mayo 14, 2024
    Linux

    Ellingson es una máquina de dificultad difícil que corre un servidor Python Flask en modo debug detrás de un proxy nginx. El depurador puede ser explotado para ejecutar código en el servidor con los privilegios del usuario que lo ejecuta. Al estar en el grupo adm, se accede al archivo shadow.bak, obteniendo hashes que permiten el movimiento lateral. Además, un binario SUID vulnerable a desbordamiento de búfer requiere una explotación ROP, dado que ASLR y NX están habilitados, para finalmente obtener una shell como root.

    Buffer Overflow Remote Code Execution Weak Permissions
  • Sink Mayo 28, 2024
    Linux

    Sink es una máquina de dificultad insana que presenta una aplicación vulnerable a un ataque HTTP Desync. Explotar esta vulnerabilidad otorga acceso a un usuario con altos privilegios en la aplicación, lo que lleva al acceso al servicio Gitea. La enumeración de repositorios revela una fuga de claves privadas que permite obtener acceso al sistema. Además, al explorar el servicio SecretsManager, se encuentran credenciales que facilitan el movimiento lateral, y el acceso al sistema se logra al descifrar un archivo usando el servicio KMS. Un despliegue de astucia donde cada capa es una oportunidad para el atacante.

    HTTP request smuggling Information Disclosure Misconfiguration
  • Validation Agosto 17, 2024
    Linux

    Validation es una máquina Linux que explota una inyección SQL de segunda orden para lograr ejecución remota de código mediante una web shell. El acceso inicial da paso a una escalada simple reutilizando credenciales, culminando en acceso root.

    Misconfiguration SQL Injection