Laravel App_key Güvenlik Açığı Uzak Kod Yürütülmesine izin verir


Laravel App_key Güvenlik Açığı Uzak Kodu yürütmek için kullanıldı - Yüzlerce uygulama savunmasız

Laravel uygulamalarında kritik bir güvenlik açığı, APP_KEY yapılandırma değerlerini ortaya çıkarır ve saldırganların uzaktan kod yürütülmesini (RCE) elde etmesini sağlar.

Gitguardian ve Synacktiv arasındaki işbirlikçi araştırmalar, 2018’den bu yana GitHub’a yaklaşık 260.000 APP_KEY’nin maruz kaldığını ve 600’den fazla başvuru, önemsiz RCE saldırılarına karşı savunmasız olduğunu doğruladı.

Güvenlik açığı, Laravel’in şifre çözülmüş verilerin otomatik olarak sazizleşmesinden kaynaklanmaktadır ve kamu depolarındaki şifreleme anahtarlarının yaygın olarak maruz kalması ile birlikte.

Google Haberleri

Key Takeaways
1. Laravel's exposed APP_KEY enables remote code execution through automatic deserialization flaws.
2. 260,000 APP_KEYs exposed on GitHub since 2018, with 600+ applications vulnerable.
3. Attackers use phpggc tools to craft payloads for trivial code execution via decrypt() function.
4. 35% of APP_KEY exposures include additional critical credentials like database and cloud tokens.

Laravel App_key güvenlik açıkları

App_key, çerçevenin encrypt () ve şifreleme () işlevleri tarafından çerezleri, oturum verilerini ve şifre sıfırlama jetonlarını otomatik olarak kullanılan birincil 32 bayt simetrik şifreleme anahtarı olarak hizmet eder.

Kritik güvenlik açığı Laravel’in uygulamasından ortaya çıkar; burada DeRrypt () işlevinin, uygun doğrulama olmadan şifrelenmiş verileri otomatik olarak sönüklük oluşturur.

Bu tasarım kusuru, maruz kalan app_keys ile birleştirildiğinde tehlikeli bir seansizasyon saldırısı vektörü oluşturur.

Saldırganlar, Laravel’in şifre çözme mekanizması yoluyla işlendiğinde, hedef sunucuda keyfi kod yürütülmesini tetikleyen kötü niyetli yükler oluşturabilir.

Güvenlik açığı, birden fazla Laravel sürümündeki uygulamaları etkiler, bu da onu özellikle yaygın ve tehlikeli hale getirir.

Başarılı sömürü, PHP gadget zincirlerine dayanır – serialize () işlemi sırasında keyfi komut yürütme sağlayan belgelenmiş kod dizileri.

PHPGGC (PHP Jenerik Gadget zincirleri) gibi araçlar V12’ye kadar olan Laravel sürümleri için bu saldırı zincirleri katalogu:

En etkili saldırı senaryosu, hem app_key hem de app_url aynı anda maruz kaldığında meydana gelir. Saldırganlar doğrudan hedef uygulamaya erişebilir, oturum çerezlerini alabilir ve tehlikeye atılan anahtarı kullanarak bunları şifresini çözebilir.

Araştırma, GitHub’a maruz kalan 28.000 çift tanımladı, yaklaşık% 10’u geçerli kaldı ve şu anda hemen uzlaşmaya karşı savunmasız 120 uygulama.

CVE-2018-15133 gibi eski güvenlik açıkları, Laravel’in oturum_driva = çerez kullanarak çerez serileştirmenin önemsiz RCE saldırılarını nasıl mümkün kıldığını gösterirken, CVE-2024-55555 ve CVE-2024-48987 de dahil olmak üzere son keşifler, bu saldırı vektörünün modern uygulamalarda devam ettiğini göstermektedir.

Azaltma stratejileri

Analiz, App_key maruziyetlerinin% 63’ünün .env dosyalarından veya .env.production gibi varyantlardan kaynaklandığını ve sistemik yapılandırma yönetimi arızalarını gösterdiğini ortaya koymaktadır.

App_key açıklamalarının üçte birinden fazlası, veritabanı kimlik bilgileri (MongoDB, MySQL, PostgreSQL), bulut depolama jetonları (AWS S3, dijital okyanus alanları) ve ödeme platformu anahtarları (Stripe, PayPal) dahil olmak üzere ek gizli maruziyetlerle çakışır.

GitGuardian’ın üretim izlemesi, GitHub’da 10.000’den fazla benzersiz APP_KEY tanımladı ve hem App_key hem de App_url çiftini içeren 1.300 örnek.

Otomatik doğrulama, 400 fonksiyonel APP_KEYS’i doğruladı ve üretim sistemlerinde 4 doğrulanmış RCE güvenlik açığı.

Uygun azaltma, basit depo silme yerine hemen app_key rotasyonu gerektirir.

Kuruluşlar sürekli gizli izleme uygulamalı, otomatik algılama araçlarını kullanmalı ve gelecekteki maruziyetleri önlemek için güvenli yapılandırma yönetimi uygulamaları oluşturmalıdır.



Source link