Drupal

Reading time: 4 minutes

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

Ontdekking

  • Kontroleer meta
bash
curl https://www.drupal.org/ | grep 'content="Drupal'
  • Node: Drupal indekse sy inhoud met behulp van nodes. 'n Node kan enige iets bevat soos 'n blogpos, opname, artikel, ens. Die bladsy-URI's is gewoonlik van die vorm /node/<nodeid>.
bash
curl drupal-site.com/node/1

Opname

Weergawe

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

Drupal 7.57, 2018-02-21

note

Nuwer installasies van Drupal blokkeer standaard toegang tot die CHANGELOG.txt en README.txt lêers.

Gebruikersenumerasie

Drupal ondersteun drie tipes gebruikers standaard:

  1. Administrator: Hierdie gebruiker het volledige beheer oor die Drupal-webwerf.
  2. Authenticated User: Hierdie gebruikers kan aanmeld op die webwerf en operasies uitvoer soos om artikels by te voeg en te redigeer gebaseer op hul toestemmings.
  3. Anonymous: Alle webwerf besoekers word as anoniem aangewys. Standaard mag hierdie gebruikers slegs poste lees.

Om gebruikers te enumerate kan jy:

  • Kry aantal gebruikers: Toegang tot /user/1, /user/2, /user/3... totdat dit 'n fout teruggee wat aandui dat die gebruiker nie bestaan nie.
  • Registrasie: Toegang tot /user/register en probeer om 'n gebruikersnaam te skep en as die naam reeds geneem is, sal dit in 'n fout van die bediener aangedui word.
  • Herstel wagwoord: Probeer om die wagwoord van 'n gebruiker te herstel en as die gebruiker nie bestaan nie, sal dit duidelik in 'n foutboodskap aangedui word.

Versteekte bladsye

Vind net nuwe bladsye deur te kyk na /node/FUZZ waar FUZZ 'n nommer is (van 1 tot 1000 byvoorbeeld).

Gemonteerde modules inligting

bash
#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

Outomatiese Gereedskap

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

RCE

As jy toegang het tot die Drupal web konsole, kyk na hierdie opsies om RCE te verkry:

Drupal RCE

Van XSS na RCE

  • Drupalwned: Drupal Exploit Skrip wat XSS na RCE of ander kritieke kwesbaarhede verhoog. Vir meer inligting, kyk na hierdie pos. Dit bied ondersteuning vir Drupal weergawes 7.X.X, 8.X.X, 9.X.X en 10.X.X, en laat jou toe om:
  • Privilegie Escalatie: Skep 'n administratiewe gebruiker in Drupal.
  • (RCE) Laai Sjabloon Op: Laai pasgemaakte sjablone wat terugdeur na Drupal is op.

Post Exploitatie

Lees settings.php

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

Dump gebruikers uit DB

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

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks