CVE-2026-85491
Açıklama
Perl için Catalyst::Seal 0.03 öncesi sürümler, yalnızca istek yoluna dayalı bir dispatch memo aracılığıyla, tek bir isteğin bir yolu devre dışı bırakmasına veya daha sonraki bir isteği yetkilendirme kontrolünü atlayarak yönlendirmesine izin verir. Catalyst::Seal, dispatcher'ın prepare_action fonksiyonunu, bir yolun nasıl çözümlendiğini (hangi dispatch türünün eşleştiği, hangi seviyede olduğu ve argüman olarak nelerin kaldığı) memoize eden bir sürümle değiştirir. Anahtar, istek yolu dışında hiçbir şey değildir. Metot, içerik türü, şema veya sorguya göre eşleşen aksiyon rolleri, bu çözümlemenin anahtarın taşımadığı bir duruma bağlı olmasına neden olur; böylece memo, oluşturulmadığı bir istek için yanıt verir. Hiçbir aksiyona çözümlenmeyen bir yol da memoize edilir ve bu girdinin yeniden oynatılması herhangi bir dispatch türüne danışılmadan geri döner, böylece hiçbir aksiyon ayarlanmaz ve istek başarısız olur. Bu nedenle, aksiyonu yalnızca POST olarak tanımlanmış bir yolun GET isteğiyle çağrılması, doğru POST isteği dahil olmak üzere sonraki tüm istekler için o yolu devre dışı bırakır. Çözümlenen bir girdi, önceki inişin ulaştığı seviyeyi yeniden oynatır. Yalnızca POST kabul eden bir aksiyon aynı yoldaki daha sığ bir aksiyonun altında yer aldığında, GET isteği sığ rotayı memoize eder ve sonraki bir POST isteği oraya yönlendirilir; böylece derin denetleyiciyi koruyan auto() hiçbir zaman çalışmaz. Memo yalnızca kurulum sırasında gerçekleşen aksiyon kaydı yapıldığında temizlenir, dolayısıyla bir girdi işlemin ömrü boyunca kalır ve 2048 girdilik sınırı, bir çağırıcının kaç yolu devre dışı bırakabileceğini belirler. Ölçülen yapılandırmada, hatalı yönlendirme daha az ayrıcalıklı aksiyona düşmektedir; bu nedenle durum bir ayrıcalık kazanımı değil, bir yetkilendirme kontrolünün çalışmamasıdır.
Nasıl düzeltilir
- Catalyst-Seal0.03 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Catalyst-Seal | v < 0.03 | 0.03 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.