Drupal

Impara l'hacking AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!

Altri modi per supportare HackTricks:

Discovery

  • Controlla meta

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

curl drupal-site.com/node/1

Enumerazione

Drupal supporta tre tipi di utenti di default:

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

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

  3. Anonimo: Tutti i visitatori del sito web sono designati come anonimi. Di default, a questi utenti è consentito 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 di default bloccano l'accesso ai file CHANGELOG.txt e README.txt.

Enumerazione degli username

Registrazione

In /user/register prova semplicemente a creare un username e se il nome è già stato preso verrai notificato:

Richiesta di nuova password

Se richiedi una nuova password per un username esistente:

Se richiedi una nuova password per un username inesistente:

Ottenere il numero di utenti

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

Pagine nascoste

Fuzz /node/$ dove $ è un numero (da 1 a 500 per esempio). Potresti trovare pagine nascoste (test, dev) che non sono referenziate 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:

pageDrupal RCE

Post Esploitation

Leggi settings.php

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

Estrarre gli utenti dal database

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

Riferimenti

Impara l'hacking su AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Altri modi per supportare HackTricks:

Last updated