¿Qué es el Hijacking de DLL?

| Última modificación: 19 de abril de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabes qué es el Hijacking de DLL? Las DLL son librerías dinámicas muy utilizadas en los binarios y servicios de Windows. El problema que se encuentra habitualmente es que, por una incorrecta configuración o debido a la compatibilidad en múltiples sistemas, en ocasiones hay binarios que buscan DLL necesarias para la versión o sistema en cuestión.

Hijacking de DLL?

¿En qué consiste el Hijacking de DLL?

Cuando un proceso busca una DLL (Dynamic Link Library), el sistema realiza la búsqueda en las siguientes localizaciones:

  • Directorio desde donde se ejecuta la aplicación.
  • Directorio de Windows System32.
  • Directorio de Windows System.
  • Directorio de instalación de Windows c:\\Windows.
  • El directorio actual de trabajo (CWD).
  • Directorios incluidos en el PATH del sistema.
  • Directorios incluidos en el PATH del usuario.

La técnica Hijacking de DLL se basa en identificar una DLL que se le esté pidiendo al sistema y que este no encuentre, para aprovechar un path accesible al usuario y dejar dicha DLL maliciosa.

El Hijacking de DLL es, por tanto, un método de ataque utilizado por los hackers para comprometer la seguridad de un sistema informático. DLL es un tipo de archivo en los sistemas operativos Windows que contiene código y datos compartidos utilizados por múltiples aplicaciones.

El Hijacking de DLL implica reemplazar o modificar una DLL legítima con una versión maliciosa o manipulada. Los hackers aprovechan la forma en la que los programas cargan y ejecutan las DLL para engañar al sistema y ejecutar su propio código en lugar del código original.

Tipos de ataques de Hijacking de DLL

Los ataques de Hijacking de DLL se ejecutan mediante la explotación de vulnerabilidades en el proceso de carga de bibliotecas dinámicas (DLL) por parte del sistema operativo o las aplicaciones.

🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴

Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en Ciberseguridad por una semana

Hay varios tipos de ataques de Hijacking de DLL, entre los que están:

DLL Side-Loading

Este ataque de Hijacking de DLL también es conocido como carga lateral de DLL. En este tipo de ataque, los atacantes explotan aplicaciones que cargan las DLL de forma no segura desde ubicaciones arbitrarias. Buscan aplicaciones que busquen y carguen una DLL específica sin especificar la ruta completa de acceso, lo que permite que un atacante coloque una DLL maliciosa en un directorio preferido por la aplicación y la cargue en lugar de la DLL legítima. El atacante puede aprovechar esto para ejecutar código malicioso con los privilegios de la aplicación.

DLL Search-Order Hijacking

Es conocido también como secuestro del orden de búsqueda de DLL. En este tipo de ataque de Hijacking de DLL, los atacantes buscan explotar el orden en que el sistema operativo busca las DLL requeridas por una aplicación. Si un atacante coloca una DLL maliciosa en un directorio prioritario para la búsqueda de DLL, el sistema operativo la cargará en lugar de la DLL legítima. Los atacantes suelen apuntar a directorios como el directorio de la aplicación, el directorio del sistema o el directorio de Windows para llevar a cabo este ataque.

Phantom DLL Hijacking

También conocido como secuestro de DLL fantasma. Este ataque de Hijacking de DLL se basa en la creación de una DLL maliciosa con el mismo nombre que una DLL legítima, pero ubicada en un directorio preferido por la aplicación o el sistema operativo para la carga de DLL. El atacante espera que la aplicación o el sistema operativo busquen y carguen la DLL, y así ejecuta su código malicioso en lugar del código legítimo. Para que este ataque tenga éxito, el atacante debe tener acceso y permisos suficientes para colocar la DLL maliciosa en el directorio apropiado.

Binary Planting

Esta técnica también se conoce como plantación binaria. En este tipo de ataque, los atacantes buscan explotar aplicaciones que cargan las DLL sin especificar la ruta completa de acceso. El atacante coloca una DLL maliciosa en un directorio en el que la aplicación tiene permisos de escritura y espera a que la aplicación la cargue en lugar de la DLL legítima. Este ataque también se conoce como DLL planting o DLL spoofing.

¿Quieres seguir aprendiendo?

¿Sabías que existían varias técnicas Hijacking de DLL? Si te ha resultado interesante este tema y quieres aprender más sobre cómo acceder a sistemas de manera segura, entra ya a nuestro Ciberseguridad Full Stack Bootcamp. Con esta formación de alta intensidad, nuestros profesores expertos te enseñarán todo lo necesario a nivel tanto teórico como práctico para impulsar tu carrera en poco tiempo y convertirte en todo un profesional del mundillo IT¡Entra ahora para pedir más información y atrévete a cambiar tu vida!

Carlos Cilleruelo

CEO and co-founder of Byron Labs & Coordinador del Bootcamp en Ciberseguridad.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Ciberseguridad

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado