Follow along with the video below to see how to install our site as a web app on your home screen.
Not: This feature may not be available in some browsers.
Laravel Log Poisoning, tek başına bir zafiyet olmayıp, iki farklı güvenlik açığının bir araya gelmesiyle oluşan zincirleme bir saldırıdır. Temel amacı, sunucuda uzaktan kod çalıştırmaktır (RCE). İlk adımda saldırgan, uygulamanın log dosyasına (laravel.log) çeşitli yöntemlerle (geçersiz bir URL'e istek atmak, HTTP başlıklarını manipüle etmek gibi) çalıştırılabilir PHP kodu enjekte eder; bu işleme "günlüğü zehirleme" denir. İkinci ve en kritik adımda ise, saldırgan uygulamada bulunan bir Yerel Dosya Dahil Etme (LFI) zafiyetini kullanarak sunucuya, içine kod enjekte ettiği bu log dosyasını bir PHP dosyası gibi okuyup çalıştırması komutunu verir.
Saldırgan bu zehirlemeyi yapabilmek için Laravel'in hata durumlarında kullanıcıdan gelen...
güzel bir kaynak önerir misin .Biraz uzunca konu ama klasik yöntem User Agent ile Poisoning konusunu başlangıç için araştırman daha iyi.
Laravel Log Poisoning, tek başına bir zafiyet olmayıp, iki farklı güvenlik açığının bir araya gelmesiyle oluşan zincirleme bir saldırıdır. Temel amacı, sunucuda uzaktan kod çalıştırmaktır (RCE). İlk adımda saldırgan, uygulamanın log dosyasına (laravel.log) çeşitli yöntemlerle (geçersiz bir URL'e istek atmak, HTTP başlıklarını manipüle etmek gibi) çalıştırılabilir PHP kodu enjekte eder; bu işleme "günlüğü zehirleme" denir. İkinci ve en kritik adımda ise, saldırgan uygulamada bulunan bir Yerel Dosya Dahil Etme (LFI) zafiyetini kullanarak sunucuya, içine kod enjekte ettiği bu log dosyasını bir PHP dosyası gibi okuyup çalıştırması komutunu verir.güzel bir kaynak önerir misin .
bu konu hakkında bilgi sahibi olanlar var mı?
teşekkür ediyorum.Laravel Log Poisoning, tek başına bir zafiyet olmayıp, iki farklı güvenlik açığının bir araya gelmesiyle oluşan zincirleme bir saldırıdır. Temel amacı, sunucuda uzaktan kod çalıştırmaktır (RCE). İlk adımda saldırgan, uygulamanın log dosyasına (laravel.log) çeşitli yöntemlerle (geçersiz bir URL'e istek atmak, HTTP başlıklarını manipüle etmek gibi) çalıştırılabilir PHP kodu enjekte eder; bu işleme "günlüğü zehirleme" denir. İkinci ve en kritik adımda ise, saldırgan uygulamada bulunan bir Yerel Dosya Dahil Etme (LFI) zafiyetini kullanarak sunucuya, içine kod enjekte ettiği bu log dosyasını bir PHP dosyası gibi okuyup çalıştırması komutunu verir.
Saldırgan bu zehirlemeyi yapabilmek için Laravel'in hata durumlarında kullanıcıdan gelen girdileri (URL, User-Agent başlığı, form verileri vb.) loglamasından faydalanır. Örneğin, bir isteğin User-Agent başlığına <?php system($_GET['cmd']); ?> gibi bir kod parçası yerleştirir. Log dosyası bu zararlı kodu barındırdığında artık bir metin dosyası değil, potansiyel bir web shell'dir. LFI zafiyeti tetiklendiğinde (index.php?sayfa=../../storage/logs/laravel.log gibi bir istek ile), sunucunun PHP yorumlayıcısı bu dosyayı okur, içindeki PHP etiketlerini görür ve kodu çalıştırarak saldırgana sistem üzerinde komut çalıştırma yetkisi verir.
Bu saldırıdan korunmanın en temel yolu, zincirin en zayıf halkası olan LFI zafiyetini ortadan kaldırmaktır. Kullanıcıdan gelen veriler asla doğrudan include gibi dosya fonksiyonlarına verilmemeli, bunun yerine sadece izin verilen dosyaları içeren bir beyaz liste (whitelist) kontrolü yapılmalıdır. Ayrıca logları harici bir servise göndermek, log dosyasının uzantısını .txt gibi çalıştırılamaz bir formata çevirmek ve sunucu seviyesinde dosya erişim izinlerini sıkılaştırmak da etkili savunma katmanlarıdır.
Konuyla İlgili Kaynaklar:
OWASP - Local File Inclusion: LFI zafiyetinin ne olduğunu, nasıl sömürüldüğünü ve nasıl önleneceğini anlatan temel bir kaynaktır. Log Poisoning, LFI'nin bir alt tekniği olarak burada ele alınır.
HackTricks - Log Poisoning: Siber güvenlik uzmanları ve sızma testi yapanlar için hazırlanmış popüler bir kaynaktır. Log Poisoning tekniğini farklı senaryolarla ve pratik komutlarla anlatır.
PortSwigger Web Security Academy - File Inclusion: Burp Suite'in geliştiricisi tarafından sunulan bu ücretsiz eğitim platformu, LFI zafiyetini interaktif laboratuvar ortamlarında denemenize olanak tanır.
Laravel Resmi Dokümantasyonu - Logging: Saldırıyı anlamak kadar, Laravel'in loglama sisteminin nasıl doğru yapılandırılacağını bilmek de önemlidir. Log kanallarını değiştirmek gibi savunma yöntemleri için resmi doküman en doğru kaynaktır.
CTF (Capture The Flag) Write-ups: Gerçek veya kurgusal zafiyetli makinelerin nasıl çözüldüğünü anlatan raporlardır. Google'da veya Medium gibi platformlarda "Laravel Log Poisoning CTF Writeup" gibi aramalar yaparak bu zafiyetin adım adım nasıl sömürüldüğünü gösteren gerçek dünya örnekleri bulabilirsiniz.