Yapay Zeka Modellerine Yönelik Prompt Injection Saldırıları Makalemiz Yayınlandı!
Siber Guvenlik Terimleri Sozlugu
Yol geçişi, dosya yolu girdisinin manipüle edilerek uygulamanın erişmemesi gereken dosyalara ulaşılmasına dayanan bir zafiyettir.

Yol geçişi, dosya yolu içeren girdinin manipüle edilerek uygulamanın erişmemesi gereken dosyalara ulaşılmasına dayanan bir zafiyettir. Birçok uygulama, kullanıcıdan aldığı bir dosya adına göre içerik okur ya da sunar. Bu dosya adı yeterince denetlenmezse, saldırgan özel karakterler kullanarak dizin yapısında yukarı çıkabilir. Böylece uygulamanın izin verdiği alanın dışındaki hassas dosyalara erişebilir. Bu erişim, yapılandırma dosyalarından kimlik bilgilerine kadar geniş bir etki yelpazesi doğurur.
Zafiyetin kökeninde, kullanıcı girdisinin dosya yolu oluştururken güvensiz kullanılması yatar. Uygulama, kullanıcı girdisini bir temel dizinle birleştirerek dosya yolu oluşturur. Girdi içindeki dizin geçiş karakterleri denetlenmezse, oluşan yol beklenen alanın dışına çıkabilir. Bu nedenle savunmanın temeli, oluşturulan yolun izin verilen alan içinde kaldığını güvence altına almaktır. Bu denetim sağlandığında, girdi ne içerirse içersin erişim sınırlı kalır.
Yol geçişi, dosya yolu içeren girdinin dizin geçiş karakterleriyle manipüle edilerek uygulamanın izin verdiği alanın dışındaki dosyalara erişilmesine dayanan bir zafiyettir.
Saldırının temel mekanizması, dizin yapısında yukarı çıkmayı sağlayan özel dizilerdir. Saldırgan, dosya adı yerine üst dizinlere işaret eden bir yol girerek uygulamayı beklenmedik bir konuma yönlendirir. Uygulama bu yolu doğrulamadan kullanırsa, saldırganın hedeflediği dosyayı okur. Bu basit ama etkili teknik, birçok uygulamada hâlâ karşılaşılan bir sorundur. Zafiyetin sadeliği, tespit edilmediğinde ciddi sonuçlar doğurmasına engel değildir.
Tipik bir senaryoda, uygulama kullanıcıdan bir dosya adı alarak onu bir dizinden okur ve sunar. Örneğin bir belge indirme işlevi, kullanıcının seçtiği dosyayı ilgili dizinden getirir. Saldırgan, dosya adı yerine dizin geçiş dizileri içeren bir değer girerek bu işlevi kötüye kullanır. Uygulama girdiyi doğrulamazsa, saldırganın işaret ettiği sistem dosyasını okur. Böylece basit bir indirme işlevi, hassas dosyalara erişim aracına dönüşür.
Saldırının etkisi, uygulamanın çalıştığı hesabın erişim yetkilerine bağlıdır. Yüksek yetkili bir hesapla çalışan uygulama, saldırgana daha geniş bir dosya erişimi sunar. Bu nedenle uygulamaların en az yetkiyle çalıştırılması, olası etkiyi sınırlar. En az yetki ilkesi bu bağlamda önemli bir savunmadır. Yetki sınırlaması, zafiyet önlenemese bile erişilebilecek dosyaları daraltır.
Bazı durumlarda saldırı, okuma dışında yazma yeteneği de sağlayabilir. Uygulama, kullanıcı kontrollü bir yola dosya yazıyorsa, saldırgan bu yolu manipüle ederek kritik dosyaların üzerine yazabilir. Bu senaryo, dosya okumaya göre daha yıkıcı sonuçlar doğurabilir. Örneğin bir yapılandırma dosyasının değiştirilmesi, sistem davranışını bozabilir. Bu nedenle hem okuma hem yazma işlevleri bu zafiyete karşı denetlenmelidir.
Sızma testinden olay müdahalesine, uçtan uca çözümlerle yanınızdayız.
Fiyat Teklifi AlEn temel önlem, kullanıcı girdisinin doğrudan dosya yolu oluşturmakta kullanılmamasıdır. Mümkün olduğunda, kullanıcıya doğrudan dosya adı girmek yerine önceden tanımlı seçenekler sunulmalıdır. Bu yaklaşım, saldırganın keyfi bir yol girmesini baştan engeller. Örneğin dosyalar bir kimlik numarasıyla eşlenerek, kullanıcı yalnızca bu numarayı seçer. Bu tasarım, zafiyetin kaynağını ortadan kaldırır.
İkinci önlem, oluşturulan yolun izin verilen alan içinde kaldığının doğrulanmasıdır. Uygulama, dosya yolunu çözümledikten sonra beklenen temel dizinle başlayıp başlamadığını kontrol etmelidir. Bu kontrol, dizin geçişiyle alan dışına çıkan yolları yakalar. Girdi doğrulama bu bağlamda yol denetimini kapsamalıdır. Alan dışına çıkan her erişimin reddedilmesi, saldırıyı etkisiz kılar.
Üçüncü önlem, dizin geçiş karakterlerinin ve kodlanmış biçimlerinin denetlenmesidir. Saldırganlar, denetimi atlatmak için farklı kodlama biçimleri kullanabilir. Bu nedenle girdi, çözümlendikten sonra denetlenmeli ve kodlama hileleri hesaba katılmalıdır. Yalnızca ham girdiye bakan bir denetim kolayca atlatılır. Çözümlenmiş yol üzerinden yapılan kontrol, bu atlatma girişimlerini engeller.
Dördüncü önlem, uygulamanın çalıştığı hesabın yetkilerinin sınırlanmasıdır. Uygulama yalnızca ihtiyaç duyduğu dosyalara erişebilecek yetkiye sahip olmalıdır. Böylece bir yol geçişi durumunda saldırganın ulaşabileceği dosyalar kısıtlanır. Bu katman, önleme başarısız olsa bile etkiyi azaltır. Yetki sınırlaması, derinlemesine savunmanın önemli bir parçasıdır.
Yol geçişi, dosya dahil etme zafiyetleriyle yakından ilişkilidir. Uygulama, kullanıcı kontrollü bir yolu yalnızca okumakla kalmayıp dahil ederek işlerse, etki çok daha ağır olabilir. Dosya dahil etme bu senaryonun ayrıntısını ele alır. İki zafiyet, aynı temel soruna, yani güvensiz yol işlemeye dayanır. Bu nedenle savunmaları da büyük ölçüde ortaktır.
Dosya yükleme zafiyetleriyle birleştiğinde de etki artabilir. Saldırgan önce zararlı bir dosya yükleyip ardından yol geçişiyle onu çalıştırabilir. Bu zincir, iki ayrı zafiyeti güçlü bir saldırıya dönüştürür. Dosya yükleme zafiyetleri bu nedenle yol geçişiyle birlikte değerlendirilmelidir. Zafiyetlerin birbirini güçlendirdiği bu zincirler, bütünsel bir bakış gerektirir.
Zafiyetin tespiti, dosya adı ya da yol alan tüm işlevlerin incelenmesini gerektirir. İndirme, görüntüleme ve dosya işleme işlevleri tipik risk noktalarıdır. Web uygulama sızma testi bu noktaları dizin geçiş yükleriyle değerlendirir. Farklı kodlama biçimleri de denenerek denetimin atlatılabilirliği sınanır. Böylece hem bariz hem de gizli yol geçişi noktaları ortaya çıkarılır.
Kod incelemesi de tespitte etkili bir yöntemdir. Dosya yolu oluşturan kod parçaları, girdinin güvenli işlenip işlenmediği açısından denetlenir. Güvenli kod gözden geçirme bu güvensiz kalıpları erken yakalar. Kodda yakalanan bir zafiyet, üretime ulaşmadan giderilebilir. Bu erken tespit, hem maliyeti hem de riski önemli ölçüde azaltır.
Bulgular, tekil düzeltmelerin ötesinde kök nedene odaklanmalıdır. Güvenli yol işleme, tüm uygulamada standart bir kalıp hâline getirilmelidir. Böylece aynı hata farklı işlevlerde tekrarlanmaz. Standartlaştırılmış güvenli kalıplar, zafiyetin tekrar ortaya çıkmasını kalıcı biçimde önler. Bu yaklaşım, savunmayı sürdürülebilir kılar.
Saldırganlar, girdi denetimlerini aşmak için çeşitli kodlama hileleri kullanır. Dizin geçiş dizileri, farklı kodlama biçimleriyle gizlenerek basit denetimlerden kaçabilir. Örneğin karakterlerin kodlanmış ya da çift kodlanmış biçimleri, ham girdiye bakan denetimleri atlatabilir. Bu nedenle denetim, girdi tam olarak çözümlendikten sonra yapılmalıdır. Çözümlenmiş yol üzerinden yapılan kontrol, bu tür atlatma girişimlerini büyük ölçüde engeller.
Bazı sistemlerde, farklı yol ayırıcı karakterleri de atlatma için kullanılabilir. Farklı işletim sistemleri, dizin ayırıcı olarak farklı karakterler kabul edebilir. Saldırgan, hedef sistemin kabul ettiği alternatif karakterleri deneyerek denetimi aşmaya çalışır. Bu nedenle denetim, tüm olası ayırıcı biçimlerini hesaba katmalıdır. Kapsamlı bir denetim, platforma özgü bu farklılıkları da göz önünde bulundurmalıdır.
Bu atlatma yöntemleri, kara liste temelli savunmanın neden yetersiz olduğunu gösterir. Yalnızca bilinen zararlı desenleri engellemeye çalışan bir yaklaşım, öngörülmeyen biçimlerle sıklıkla aşılır. Bunun yerine, oluşturulan yolun izin verilen alan içinde kaldığını doğrulayan beyaz liste temelli bir yaklaşım tercih edilmelidir. Bu yaklaşım, girdinin biçiminden bağımsız olarak güvenli tarafta kalır. Alan doğrulaması, atlatma hilelerine karşı en dayanıklı savunmadır.
Bu zafiyet, geçmişte birçok ciddi güvenlik olayının kökeninde yer almıştır. Yapılandırma dosyalarının okunması, saldırganlara kimlik bilgileri ve sistem yapısı hakkında değerli bilgi sağlamıştır. Bu bilgiler, çoğu zaman daha kapsamlı saldırıların başlangıç noktası olmuştur. Bu nedenle zafiyet, tekil bir dosya erişimi sorunu olarak değil, saldırı zincirinin bir halkası olarak değerlendirilmelidir. Elde edilen her bilgi, sonraki adımları besleyebilir.
Zafiyetin etkisi, sunucudaki dosya sisteminin yapısına da bağlıdır. Hassas dosyaların iyi korunmadığı ortamlarda, tek bir yol geçişi ciddi sızıntılara yol açabilir. Bu nedenle savunma, yalnızca uygulama katmanında değil, dosya sistemi izinlerinde de sağlanmalıdır. Katmanlı bir yaklaşım, uygulama denetimi atlatılsa bile dosya erişimini sınırlar. İşletim sistemi düzeyindeki izinler, ek bir güvenlik marjı sağlar.
Modern çerçeveler, bu zafiyete karşı yerleşik korumalar sunar. Birçok çerçeve, dosya yollarını güvenli biçimde işleyen ve alan dışına çıkmayı engelleyen mekanizmalar içerir. Bu mekanizmaların doğru kullanılması, geliştirici hatası olasılığını azaltır. Ancak bu korumaların atlatıldığı özel durumlar, zafiyeti yeniden ortaya çıkarabilir. Bu nedenle çerçeve korumaları doğru kullanılmalı ve düzenli olarak denetlenmelidir.
Privia Security olarak dosya yolu işleyen uygulamalarda yetkisiz erişim zafiyetlerinin tespitini düzenli zafiyet tarama kapsamında değerlendiriyoruz.
Bunlar İlginizi Çekebilir