hacktricks/network-services-pentesting/pentesting-web/drupal
2024-09-23 23:32:16 +00:00
..
drupal-rce.md Translated ['binary-exploitation/libc-heap/README.md', 'binary-exploitat 2024-09-23 23:32:16 +00:00
README.md Translated ['network-services-pentesting/pentesting-web/drupal/README.md 2024-08-21 09:10:06 +00:00

Drupal

{% hint style="success" %} AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)

HackTricks'i Destekleyin
{% endhint %}

{% embed url="https://websec.nl/" %}

Keşif

  • meta kontrol edin
curl https://www.drupal.org/ | grep 'content="Drupal'
  • Node: Drupal içeriğini düğümler kullanarak indeksler. Bir düğüm herhangi bir şeyi tutabilir, örneğin bir blog yazısı, anket, makale vb. Sayfa URI'leri genellikle /node/<nodeid> biçimindedir.
curl drupal-site.com/node/1

Enumeration

Drupal varsayılan olarak üç tür kullanıcı destekler:

  1. Administrator: Bu kullanıcı, Drupal web sitesinin tam kontrolüne sahiptir.
  2. Authenticated User: Bu kullanıcılar, web sitesine giriş yapabilir ve izinlerine göre makale ekleme ve düzenleme gibi işlemler gerçekleştirebilir.
  3. Anonymous: Tüm web sitesi ziyaretçileri anonim olarak tanımlanır. Varsayılan olarak, bu kullanıcıların yalnızca gönderileri okumasına izin verilir.

Version

  • /CHANGELOG.txt dosyasını kontrol edin.
curl -s http://drupal-site.local/CHANGELOG.txt | grep -m2 ""

Drupal 7.57, 2018-02-21

{% hint style="info" %} Drupal'ın daha yeni kurulumları varsayılan olarak CHANGELOG.txt ve README.txt dosyalarına erişimi engeller. {% endhint %}

Kullanıcı adı sayımı

Kayıt

/user/register adresinde bir kullanıcı adı oluşturmaya çalışın ve eğer isim zaten alınmışsa bildirim alacaksınız:

Yeni şifre talebi

Eğer mevcut bir kullanıcı adı için yeni bir şifre talep ederseniz:

Eğer var olmayan bir kullanıcı adı için yeni bir şifre talep ederseniz:

Kullanıcı sayısını öğrenme

/user/<number> adresine erişerek mevcut kullanıcı sayısını görebilirsiniz, bu durumda 2'dir çünkü /users/3 bulunamadı hatası döner:

Gizli sayfalar

Fuzz /node/$ burada $ bir sayıdır (örneğin 1'den 500'e kadar).
Arama motorları tarafından referans verilmeyen gizli sayfalar (test, dev) bulabilirsiniz.

Yüklenen modüller bilgisi

#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

Otomatik

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

RCE

Drupal web konsoluna erişiminiz varsa, RCE almak için bu seçenekleri kontrol edin:

{% content-ref url="drupal-rce.md" %} drupal-rce.md {% endcontent-ref %}

XSS'den RCE'ye

  • Drupalwned: XSS'yi RCE veya Diğer Kritik Güvenlik Açıklarına yükselten Drupal Sömürü Scripti. Daha fazla bilgi için bu gönderiye bakın. Drupal Sürümleri 7.X.X, 8.X.X, 9.X.X ve 10.X.X için destek sağlar ve şunları yapmanıza olanak tanır:
  • Yetki Yükseltme: Drupal'da bir yönetici kullanıcısı oluşturur.
  • (RCE) Şablon Yükle: Drupal'a arka kapı eklenmiş özel şablonlar yükler.

Sömürü Sonrası

settings.php'yi Oku

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

DB'den kullanıcıları dökme

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

Referanslar

{% embed url="https://websec.nl/" %}

{% hint style="success" %} AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks'i Destekleyin
{% endhint %}