Merhaba arkadaşlar,
Bugün size web sitenize RFI(Remote File Inclusion) ataklarından nasıl korunabileceğiniz göstereceğim. Öncelikle RFI atak neymiş kısaca bir anlatalım.
RFI atak uzaktan dosya dahil etmektir. PHP scriptlerde bulunan bir açıktır. Web sitesine uzaktan bir dosya eklemenizi sağlar. Değişkenlerinizin tanımlı olmadığı yerlerde yani değişkenleriniz boş olduğu anda buralarda RFI açıklar meydana gelir. RFI atağı ile o değişkene uzaktan eklenen dosyanın değeri atanır. Bu işlemin file upload işlemleriyle alakası yoktur. Shell dosyaları ile yapılır.
Şimdi http://, https:// veya ftp:// için yapılan sorgu satırlarımızı kontrol edelim:
1 |
RewriteCond %{QUERY_STRING} (.*)(http|https|ftp)://(.*) |
Eğer bu rewrite koşulunu .htaccess dosyanızda kullanıyorsunuz bütün benzer istekleri aşağıdaki komutlar ile engelleyelim:
1 |
RewriteRule ^(.+)$ - [F] |
Eğer vHost’unuza erişim izniniz varsa bu denemleri kayıt altına alabilirsiniz:
1 2 3 4 5 6 |
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{QUERY_STRING} (.*)(http|https|ftp)://(.*) RewriteRule ^(.+)$ - [env=rfi:true] </IfModule> CustomLog /kayitlarinizin/tutuldugu/dizin/rfi.log combined env=rfi |
Aynı zamanda yukarıdaki rewrite komutlarından kaynaklanan istekleride engelleyebilirsiniz:
1 |
Deny from env=rfi |
Umarım kimsenin başına gelmeden tedbirinizi almış olursunuz. Kolay gelsin,
Yorumlar