Girdi temizleme, zararlı kodların sisteme girmesini önlemek için kullanıcılardan, API'lerden ve istenmeyen karakterlerin ve dizelerin web hizmetlerinden gelen veri girişlerinin kontrol edilmesi, temizlenmesi ve filtrelenmesine yönelik bir siber güvenlik ölçüsüdür.
Bilgisayar korsanları, web sitesi ile sunucu arasındaki etkileşimdeki boşluktan yararlanmak için uzak dosya dahil etme (RFI) ve SQL enjeksiyonu (SQLi) ve siteler arası komut dosyası oluşturma (XSS) gibi enjeksiyon saldırılarını kullanır. Özel karakterleri kodlayabilir ve güvenliği tehlikeye atan yetkisiz eylemler gerçekleştirebilirler. Girdi temizliği uygulandığında, bu tür saldırılar önlenebilir.
Bir uygulama, sistemi kötü niyetli saldırılara maruz bırakabilecek güvenilmeyen kaynaklardan sorgular ve istekler alır. Girdi temizleme, girilen verilerin alt sistem ve güvenlik gereksinimlerine uygun olmasını sağlayarak potansiyel zarar verebilecek gereksiz karakterleri ortadan kaldırır.
Temizlik girdileri
Kullanıcının tarayıcısından veri girişi, bilgisayar korsanlarının web sunucusuna erişmek için düzenleyebileceği, değiştirebileceği ve manipüle edebileceği GET isteği, POST isteği ve tanımlama bilgileri aracılığıyla dolaşır. Giriş temizleme işlemi, kodlanmış verileri web sunucusuna taşınırken filtrelemek için bir süzgeç görevi görür. Bu, üç şekilde yapılabilir:
- Beyaz listeyi temizleme yalnızca geçerli karakterlere ve kod dizelerine izin verir.
- Kara liste temizleme satır sonları, fazladan beyaz boşluklar, sekmeler ve etiketler gibi istenmeyen karakterleri kaldırarak girişi temizler.
- Sanitasyondan kaçmak geçersiz veri isteklerini reddeder ve kod olarak görülmemek için girişleri çıkarır.
Girdi sterilizasyonunun faydaları
Girdi temizleme, hiçbir şekilde enjeksiyon saldırılarını ve bir web sunucusuna zararlı sızıntıları engellemek için mükemmel bir araç değildir. Ancak aşağıdaki gibi bazı avantajları vardır:
- Yaygın siber saldırılara karşı bir çevre savunması sağlamak
- Uzaktan dosya dahil etme ve yerleştirme saldırılarının bazı biçimlerini önleme (Kod yerleştirme, SQLi ve XSS)
- Sistemi kötü niyetli kod müdahalelerinden korumak
- Web sunucusu, veritabanı ve diğer dijital varlıkların bütünlüğünü korumak