Búsqueda de vulnerabilidades de escalada de privilegios
La búsqueda de vulnerabilidades de escalada de privilegios es crucial para evaluar la seguridad de un sistema y prevenir posibles amenazas. Aquí se describen algunos pasos y técnicas comunes utilizadas para identificar vulnerabilidades que podrían permitir a un atacante elevar sus privilegios:
- Recolección de Información: Obtener información detallada sobre el sistema, incluyendo la versión del sistema operativo, servicios en ejecución y configuraciones de seguridad.
- Enumeración de Usuarios y Grupos: Utilizar comandos y herramientas como whoami, id, o net user para enumerar usuarios y grupos en el sistema.
- Revisión de Políticas de Seguridad: Examinar las políticas de seguridad del sistema para comprender las restricciones y configuraciones de acceso.
- Análisis de Configuraciones: Revisar las configuraciones de seguridad, como permisos de archivos, configuraciones de servicios y políticas de control de acceso.
- Búsqueda de Vulnerabilidades Conocidas: Utilizar bases de datos de vulnerabilidades, escáneres de vulnerabilidades y herramientas como Nessus o OpenVAS para identificar vulnerabilidades conocidas.
- Pruebas Activas de Escalada de Privilegios: Realizar pruebas activas, como intentos de explotación, para identificar vulnerabilidades que podrían conducir a la escalada de privilegios.
Técnicas Comunes
- Elevación de Privilegios del Usuario: Buscar vulnerabilidades que permitan a un usuario regular elevar sus privilegios a niveles más altos.
- Explotación de Servicios y Aplicaciones: Buscar vulnerabilidades en servicios y aplicaciones que podrían permitir la ejecución de código con privilegios elevados.
- Ataques a Configuraciones Débiles: Identificar configuraciones de seguridad débiles o malas prácticas que puedan ser explotadas para la escalada de privilegios.
- Escalada de Privilegios a Nivel de Sistema: Buscar vulnerabilidades que permitan a un usuario obtener privilegios de administrador o de sistema.
- Explotación de Servidores: Investigar vulnerabilidades específicas de servidores que puedan ser explotadas para la escalada de privilegios.
Herramientas Comunes
- Windows-Exploit-Suggester: Herramienta para identificar posibles exploits en sistemas Windows.
- Uso: Búsqueda de exploits para versiones específicas de Windows.
- Linux Exploit Suggester: Herramienta para identificar posibles exploits en sistemas Linux.
- Uso: Búsqueda de exploits para versiones específicas de sistemas Linux.
- PowerUp: PowerShell script para enumerar información y buscar vulnerabilidades en sistemas Windows.
- Uso: Identificación de posibles vectores de escalada de privilegios.
- BeRoot: Herramienta para verificar configuraciones y buscar vulnerabilidades en sistemas Linux.
- Uso: Búsqueda de debilidades que podrían conducir a la escalada de privilegios.
👉 Es crucial llevar a cabo estas actividades de manera ética y responsable, obteniendo siempre el consentimiento del propietario del sistema y respetando las leyes y regulaciones aplicables. La comunicación transparente de los hallazgos es fundamental para facilitar la mitigación y mejorar la seguridad del sistema evaluado.
Uso de técnicas básicas para elevar los privilegios
El uso de técnicas básicas para elevar los privilegios es un componente crítico en las pruebas de penetración. Aquí se describen algunas técnicas comunes que los profesionales de seguridad pueden utilizar para identificar y explotar vulnerabilidades que conduzcan a la escalada de privilegios:
- Explotación de Servicios Vulnerables: Identificar servicios en ejecución con vulnerabilidades conocidas y utilizar exploits específicos para elevar los privilegios.
- Explotación de Configuraciones Débiles: Identificar configuraciones incorrectas o débiles que permitan la escalada de privilegios, como permisos inadecuados en archivos o directorios.
- Inyección de Comandos: Explotar vulnerabilidades que permitan la inyección de comandos para ejecutar código arbitrario con privilegios elevados.
- Explotación de Vulnerabilidades de Día Cero: Utilizar exploits de vulnerabilidades de día cero que aún no han sido parcheadas por el fabricante.
- Ataques de Fuerza Bruta: Realizar ataques de fuerza bruta para obtener acceso no autorizado a cuentas de usuario con privilegios más altos.
- Uso de Herramientas de Explotación: Utilizar herramientas especializadas como Metasploit, PowerShell Empire o Covenant para automatizar la explotación de vulnerabilidades y la escalada de privilegios.
- Explotación de Servidores con Permisos Elevados: Identificar servicios que se ejecutan con privilegios elevados y buscar vulnerabilidades que permitan la manipulación de esos servicios.
- Manipulación de Tokens de Acceso: Modificar tokens de acceso para obtener privilegios adicionales en el sistema.
- Uso de Exploits para Escalada de Privilegios Específicos del Sistema Operativo: Utilizar exploits específicos para la escalada de privilegios en sistemas operativos particulares, como Windows o Linux.
- Explotación de Vulnerabilidades de Aplicaciones Web: Identificar vulnerabilidades en aplicaciones web que permitan la escalada de privilegios a nivel de sistema.
Consideraciones Importantes
- Consentimiento del Propietario: Obtener el consentimiento explícito del propietario del sistema antes de realizar pruebas de penetración.
- Documentación Detallada: Documentar cada acción realizada, incluyendo hallazgos, exploits utilizados y resultados obtenidos.
- Seguimiento Ético y Legal: Realizar todas las actividades dentro de los límites éticos y legales, evitando cualquier daño no autorizado.
- Comunicación Transparente: Comunicar de manera transparente con el cliente o el propietario del sistema sobre las acciones realizadas y los resultados obtenidos.
💡 Es esencial llevar a cabo estas actividades de manera ética y responsable, garantizando siempre el consentimiento del propietario del sistema y respetando las leyes y regulaciones aplicables. La escalada de privilegios debe ser realizada con el objetivo de mejorar la seguridad del sistema, identificar debilidades y facilitar la mitigación.
Obtención de acceso privilegiado en el sistema objetivo
La escalada de privilegios es el acto de explotar un error, una falla de diseño o la supervisión de la configuración en un sistema operativo o aplicación de software para obtener un acceso elevado a los recursos que normalmente están protegidos de una aplicación o usuario. Vamos a utilizar una distro de Linux vulnerable para poner un ejemplo de elevación de privilegios, se trata de Metasploitable II. Nuestra máquina atacante será un Kali Linux. El proceso que se va a llevar a cabo de manera resumida es el siguiente:
- Buscamos los servicios que están corriendo en la máquina Metasploitable.
- Comprobamos si tiene vulnerabilidades.
- Explotamos la vulnerabilidad que escogemos.
- Estamos dentro con privilegios limitados, así que buscamos procesos corriendo como root y que no pertenezcan al kernel.
- Buscamos un exploit que nos permita elevarnos y lo ejecutamos.
Las máquinas y sus IPs son las siguientes
- Kali Linux >
192.168.1.50
- Metasploitable II >
192.168.1.49
Buscando servicios en la máquina víctima. Para esta tarea usaremos nmap, el comando a ejecutar:
1nmap -p 1-65535 -T4 -sV 192.168.1.49
Como se va a usar Metasploit, podemos hacer uso de nmap en la propia herramienta (db_nmap), el resultado va a ser el mismo, pero se guardarán los resultados en la base de datos, para no perdernos antes borramos la base de datos con “clear database”. La salida (no completa) se muestra en la siguiente captura:

Ahora podemos consultar los servicios todas las veces que queramos con el comando services de Metasploit.
Buscamos posibles exploits
Vamos a centrarnos en el puerto 21, el servicio FTP, y buscamos un posible exploit:

Encontramos un exploit disponible para la versión que está corriendo en la máquina víctima. Configuramos el exploit y lo lanzamos:

Ya estamos dentro de la máquina víctima, y encima con el usuario root, que más se puede pedir. En el próximo post veremos que no siempre es tan fácil conseguir altos privilegios, y tendremos que trabajar un poco más para llegar a ello.