Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi gerçekleştirdiğinizde, bir ortaklık komisyonu kazanabiliriz. Devamını oku.

Web sunucuları, web uygulamanızı oluşturan dosyaları (web sayfaları, resimler, videolar, formlar vb.) barındırır ve web sitenizi ziyaret edildiğinde bu dosyaları sunar. Bazı sunucular daha gelişmiştir ve web ziyaretçilerinin ne kadar erişime sahip olduğunu da kontrol eder. Normal ziyaretçilerin diğer kullanıcıların hesaplarına veya yönetim panolarına erişimini kısıtlayabilirler. Web sunucuları yaptıkları işlerde verimli olmalarına ve bunu oldukça güvenli bir şekilde yapmalarına rağmen, saldırganlar, bir sunucunun barındırdığı dosyalara hizmet verme biçimindeki insan hatasından veya kusurlu mantıktan kaynaklanan hatalardan yararlanabilir.

LFI Saldırısı Nedir?

Yerel Dosya Saldırısı (LFI) saldırısı, saldırganlar bir web sunucusunun dosyalarına erişimi depolama, sunma, doğrulama veya kontrol etme şeklindeki güvenlik açıklarından yararlandığında gerçekleşir. Bu güvenlik açığı, PHP tabanlı web sitelerinde yaygındır.

instagram viewer

Saldırganların bir uygulamayı bozmak için kötü amaçlı yazılımlara güvendiği birçok siber saldırı biçiminin aksine, LFI'lerdeki saldırganlar çoğunlukla zekice numaralara ve kısa kod satırlarına güvenir. Bu, nadiren gelişmiş araçlar veya karmaşık betikler gerektirir; saldırılar genellikle web tarayıcısında gerçekleşir. Saldırganların kullandığı en yaygın hile, URL dizesini kod, dosya yolları veya dosya adlarıyla değiştirmektir.

LFI Saldırıları Nasıl Gerçekleşir?

LFI saldırıları tipik olarak dört aşamada gerçekleşir.

İlk olarak, saldırgan, genellikle web uygulamasının (yani sitenin) komutu işleyip işlemediğini görmek için tarayıcı URL'sinde temel bir kod çalıştırarak güvenlik açığı bulunan bir web uygulaması çalıştıran bir PHP web sitesini tanımlar. Bunu, bir Paskalya yumurtasının kilidini açmak için oyun kumandanızdaki tuş kombinasyonlarına basmak gibi düşünün; örneğin, Super Mario'da tünellere girmek için aşağı tuşuna basmak gibi. Ancak saldırganların LFI saldırılarında yürüttüğü komutlar, Super Mario'daki her tüneli kontrol etmekten daha tutarlıdır.

Yanlış yapılandırılmış veya girişleri doğrulayamayan bir web uygulaması veya sunucu, kötü amaçlı kodu çalıştıracaktır. Bilgisayar korsanı buradan savunmasız dosyaları okumak veya kötü amaçlı dosyaları sunucuya yüklemek için ihtiyaç duyduğu erişimi ve ayrıcalığı elde edebilir.

Çoğu LFI saldırısı, saldırganın hassas bilgilere erişmesiyle sonuçlanır. Kötü amaçlı yazılım yükleme olasılığı nadiren başarılı olur çünkü web uygulamasının dosyayı LFI güvenlik açığının bulunduğu aynı sunucuya kaydedeceğine dair bir garanti yoktur. Web uygulaması çok sunuculu bir ortamdaysa bu genellikle olur.

Dolayısıyla, görüntüleri barındıran sunucuda LFI güvenlik açığı varsa, ancak çalışanları depolayan sunucuda yoksa kimlik bilgileri veya kullanıcı parolaları, saldırganın yalnızca güvenlik açığı bulunan bu sunucudaki görüntü dosyalarına erişimi olacaktır. Ne olursa olsun, siber olaylar gibi LastPass'a yapılan saldırı bilgisayar korsanlarının görünüşte en önemsiz erişim düzeyiyle ortalığı kasıp kavurabileceğini gösteriyor.

LFI Saldırıları Nasıl Önlenir?

LFI saldırıları oldukça yaygındır. Açık Web Uygulama Güvenliği Projesi (OWASP). Anlaşılır bir şekilde, bilgisayar korsanları bu saldırıyı tercih ederdi, çünkü W3Tech'ler Raporlara göre, 10 web sitesinden yaklaşık sekizi PHP'yi sunucu taraflı bir programlama dili olarak çalıştırıyor; tabiri caizse çok sayıda kurban var. En iyi web güvenliği uygulamalarını benimseyerek bir LFI saldırısını önlemek mümkündür.

Beyaz Liste Genel Sunucu Dosyaları

Web uygulamaları genellikle URL girişleri olarak dosya yollarını kullanır. Bilgisayar korsanları, URL'nin dosya yolu olarak ikiye katlanan kısmını değiştirerek bu dosyalama sisteminden yararlanabilir. Örneğin, bir saldırgan değişebilir https://dummywebsite.com/?module=contact.php ile https://dummywebsite.com/?module=/etc/passwd. Zayıf filtrelemeye ve kusurlu mantığa sahip savunmasız bir sunucu, /etc/passwd yolunda depolanan dosyanın içeriğini görüntüler.

Elbette bilgisayar korsanları, başarılı bir saldırı olasılığını artırmak için yaygın dosya adlarının varyasyonlarını ve sorgu karakterlerinin kombinasyonlarını kullanır. Amaç, web uygulamasını bir komut dosyası çalıştırması veya dosyaları bir web sunucusunda göstermesi için kandırmaktır.

Sunucunuzda genel belgelerden oluşan bir beyaz liste oluşturarak ve web uygulamasına diğer tüm belge veya dosya yollarıyla ilgili sorguları dikkate almamasını söyleyerek bu güvenlik açığını engelleyebilirsiniz. Bu nedenle, bir saldırgan özel kod istemek veya çalıştırmak için URL'yi değiştirmeye çalışırsa, bunun yerine bir hata sayfası alır.

Güvenlik Açıklarını Sık Sık Test Edin

Kullanabilirsiniz web tarama araçları sizi LFI saldırılarına maruz bırakabilecek güvenlik açıklarını bulmak ve düzeltmek için. Web uygulaması tarayıcıları, uygulamanızı bir saldırgan gibi tarayan ve olası güvenlik açıklarına karşı sizi uyaran otomatik araçlardır. OpenVAS ve Wireshark gibi birkaç açık kaynaklı web tarayıcısı vardır, ancak güvenlik açığı tarayıcılarının çoğu tescilli yazılımdır ve kullanım için ücretli planlar gerektirir.

Ancak, elbette, yalnızca LFI saldırıları için bir web tarayıcısı almıyorsunuz. Bu araçlar ayrıca aşağıdakiler gibi daha geniş güvenlik açıklarını da arar: uzak dosya dahil etme, siteler arası komut dosyası çalıştırma, SQL enjeksiyonu ve zayıf sunucu yapılandırmaları. Yani buna değer.

Site Ziyaretçi Ayrıcalıklarını Kısıtla

Bilgisayar korsanları genellikle LFI saldırılarını başarılı bir şekilde gerçekleştirir çünkü web uygulamaları kullanıcı ayrıcalıklarını bölümlere ayıramaz ve bunu yaparken ziyaretçilerin yalnızca yöneticiler tarafından görülebilmesi gereken dosyalara erişmesine izin verir. Bu önlem, beyaz listeye alma gibi çalışır: web uygulamanızı ve sunucunuzu, genel dosyalara hizmet edecek ve bir ziyaretçi web uygulamasıyla etkileşime girdiğinde yetkisiz istekleri dikkate almayacak şekilde yapılandırın. Bu, özellikle hassas dosyalar içeren dosya yollarına yönelik sorgular için önemlidir.

Bu amaçla, dosya yollarının doğrudan değiştirilmesini engellemeniz gerekebilir. Web uygulaması yalnızca sabit kodlu bir yol listesinden belgeler sunmalıdır. Ayrıca, web uygulamasını, base64 veya bin2hex işlevleri yerine dinamik yol birleştirme (URL'ler alfanümerik karakterler içermelidir) ile istekleri işlemek üzere yapılandırın.

Dosya adlarını kara listeye almayı düşünüyorsanız, yapmayın. Bilgisayar korsanlarının genellikle bir LFI saldırısını gerçekleştirmek için kullanabilecekleri, giderek artan bir dosya adı listesi vardır. Ayrıca, pratik olarak imkansızdır (ve muazzam bir zaman kaybıdır) sürekli artan kaynakların bir listesini kara listeye almak saldırı

Çoklu Sunucu Ortamı Kullanın

Çok sunuculu bir ortam, önemli, hassas belgeleri genel dosyalardan ayırmanıza olanak tanır, böylece bir ihlal durumunda riskinizi azaltır. Ayrılmış sunucular, birlikte çalışsalar da yapılandırmaları farklı olduğu için LFI saldırılarına karşı daha az savunmasızdır.

Bu güvenliğin yanı sıra, birden çok sunucu da güvenilir (daha düşük kesinti riskiyle), hızlı ve verimlidir. Kuşkusuz, web siteniz küçükse, çok sunuculu bir ortam kullanmak uygun maliyetli değildir. Bu durumda, web uygulamanızın verilere erişimini özel veriler için bir veritabanı ve genel dosyalar için bir sunucu arasında bölmeyi düşünün.

LFI Saldırılarından Endişelenmeli misiniz?

Özellikle siteniz PHP üzerinde çalışıyorsa, bir LFI saldırısı olasılığı vardır, ancak web uygulamalarını ve sunucularını web güvenliği en iyi uygulamalarına göre yapılandırarak riskinizi azaltabilirsiniz.

Ayrıca, güvenlik açıklarını bulmak için rutin güvenlik kontrolleri yapmayı düşünmelisiniz. Özellikle site mimarisi karmaşık hale geldikçe işler her zaman bozulur. Kendinizi korumanız için ihtiyaç duyacağınız araçlar otomatiktir ve birçoğu ayrıntılı bir kurulum veya gelişmiş teknik bilgi gerektirmez.