Drupal

Supporta HackTricks

Discovery

  • Controlla meta

curl https://www.drupal.org/ | grep 'content="Drupal'
  • Nodo: Drupal indicizza il suo contenuto utilizzando nodi. Un nodo può contenere qualsiasi cosa come un post del blog, un sondaggio, un articolo, ecc. Gli URI delle pagine sono solitamente della forma /node/<nodeid>.

curl drupal-site.com/node/1

Enumerazione

Drupal supporta tre tipi di utenti per impostazione predefinita:

  1. Amministratore: Questo utente ha il controllo completo sul sito web Drupal.

  2. Utente Autenticato: Questi utenti possono accedere al sito web e svolgere operazioni come aggiungere e modificare articoli in base alle loro autorizzazioni.

  3. Anonimo: Tutti i visitatori del sito web sono designati come anonimi. Per impostazione predefinita, questi utenti possono solo leggere i post.

Versione

  • Controlla /CHANGELOG.txt

curl -s http://drupal-site.local/CHANGELOG.txt | grep -m2 ""

Drupal 7.57, 2018-02-21

Le installazioni più recenti di Drupal bloccano per impostazione predefinita l'accesso ai file CHANGELOG.txt e README.txt.

Enumerazione degli username

Registrazione

In /user/register prova a creare un username e se il nome è già in uso verrà notificato:

Richiesta nuova password

Se richiedi una nuova password per un username esistente:

Se richiedi una nuova password per un username non esistente:

Ottieni numero di utenti

Accedendo a /user/<number> puoi vedere il numero di utenti esistenti, in questo caso è 2 poiché /users/3 restituisce un errore di non trovato:

Pagine nascoste

Fuzz /node/$ dove $ è un numero (da 1 a 500 ad esempio). Potresti trovare pagine nascoste (test, dev) che non sono indicate dai motori di ricerca.

Informazioni sui moduli installati

#From https://twitter.com/intigriti/status/1439192489093644292/photo/1
#Get info on installed modules
curl https://example.com/config/sync/core.extension.yml
curl https://example.com/core/core.services.yml

# Download content from files exposed in the previous step
curl https://example.com/config/sync/swiftmailer.transport.yml

Automatico

droopescan scan drupal -u http://drupal-site.local

RCE

Se hai accesso alla console web di Drupal, controlla queste opzioni per ottenere RCE:

Drupal RCE

Da XSS a RCE

  • Drupalwned: Script di sfruttamento di Drupal che eleva XSS a RCE o altre vulnerabilità critiche. Per ulteriori informazioni, controlla questo post. Fornisce supporto per le versioni di Drupal 7.X.X, 8.X.X, 9.X.X e 10.X.X, e consente di:

  • Escalation dei privilegi: Crea un utente amministrativo in Drupal.

  • (RCE) Carica Template: Carica template personalizzati con backdoor per Drupal.

Post Sfruttamento

Leggi settings.php

find / -name settings.php -exec grep "drupal_hash_salt\|'database'\|'username'\|'password'\|'host'\|'port'\|'driver'\|'prefix'" {} \; 2>/dev/null

Dump utenti dal DB

mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from users'

Riferimenti

Supporta HackTricks

Last updated