Htaccess Dosyası ile Tüm Web Güvenlik Açıklarını Kapatmak
22 Mayıs 2016 Yorum 0 1957 Görüntüleme

Htaccess Dosyası ile Tüm Web Güvenlik Açıklarını Kapatmak

Htaccess dosyasında rewrite kuralları ekleyerek web sunucusnuz için ek önlemler alabilirsiniz.Dosya tüm linux sunucularda mevcut olup bazen yazılımlarda hazır geldiği gibi bazen sizin oluşturmanız gerekebilir.Eğer wordpress,prestashop,opencart,joomla vs. gibi hazır yazılımlar kullanıyorsanız, veri güvenliğinizi sağlamak isyor ve 3. şahısların zararlı saldırılarına karşı güvenlik sağlamak için aşağıdaki işlemleri yaparak dosyanıza gerekli eklemeleri yapınız.

FTP bağlantısı sağlayıp dosyanıza LFI(Local File Include) saldırı korumaları için ekleyiniz.
.htaccess
Options +Followsymlinks
RewriteEngine On
RewriteCond %{REQUEST_URI} passwd
RewriteRule ^(.*)$ - [F,L]
RewriteEngine On
RewriteCond %{REQUEST_URI} shadow
RewriteRule ^(.*)$ - [F,L]

//bu örnek kuralları ekleyerek sunucunuzdaki krtik dosyalarınıza web üzerinden yetkisiz erişimleri engelleyebilirsiniz.

 

RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http%3A%2F%2F [OR]
RewriteRule .* - [F]

Bu kurallarla Linux yerel dosya enjeksiyon(LFI) saldırısnı engelleyebilirsiniz.

RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC,OR]
RewriteCond %{QUERY_STRING} \=PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} [NC,OR]
RewriteCond %{QUERY_STRING} (\.\./|\.\.) [OR]
RewriteCond %{QUERY_STRING} ftp\: [NC,OR]
RewriteCond %{QUERY_STRING} http\: [NC,OR]
RewriteCond %{QUERY_STRING} https\: [NC,OR]
RewriteCond %{QUERY_STRING} \=\|w\| [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)/self/(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)cPath=http://(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} (\< |%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (< |%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (\< |%3C).*iframe.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (< |%3C)([^i]*i)+frame.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [NC,OR]
RewriteCond %{QUERY_STRING} base64_(en|de)code[^(]*\([^)]*\) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|< |>).* [NC,OR]
RewriteCond %{QUERY_STRING} (NULL|OUTFILE|LOAD_FILE) [OR]
RewriteCond %{QUERY_STRING} (\./|\../|\.../)+(motd|etc|bin) [NC,OR]
RewriteCond %{QUERY_STRING} (localhost|loopback|127\.0\.0\.1) [NC,OR]
RewriteCond %{QUERY_STRING} (< |>|'|%0A|%0D|%27|%3C|%3E|%00) [NC,OR]
RewriteCond %{QUERY_STRING} concat[^\(]*\( [NC,OR]
RewriteCond %{QUERY_STRING} union([^s]*s)+elect [NC,OR]
RewriteCond %{QUERY_STRING} union([^a]*a)+ll([^s]*s)+elect [NC,OR]
RewriteCond %{QUERY_STRING} (;|< |>|'|\)|%0A|%0D|%22|%27|%3C|%3E|%00).*(/\*|union|select|insert|drop|delete|update|cast|create|char|convert|alter|declare|order|script|set|md5|benchmark|encode) [NC,OR]
RewriteCond %{QUERY_STRING} (sp_executesql) [NC]
RewriteRule ^(.*)$ - [F,L]

Bu eklediğimiz kurallarla mysql enjeksiyon ve remote file inclusion(RFI) saldırılarını engeleyebiliriz.

Bu kurallar haricinde kendinizde ek kural ve önlem kodlarını ekleyebilirsiniz.

Önceki Laravel Route Cache Kullanımı
Sonraki Sigarayı Bırakma Maceram Elektronik Sigara Likit ve Sarım İşleri

Yazar hakkında

keykubad
keykubad 232 Gönderiler

2012 yılında yeni kimliği ve yeni bilgilerle sizlere teknoloji,web programlama,tasarim,güvenlik,internet ve programlar hakkında detaylı bilgiler vermek amaçlı kurulmuş kişisel web sayfamdır.

Yazara ait tüm yazılar

Diğer yazılarımız

PHP ve MYSQL 1Yorum

MEB PHP Eğitimi İnternet Programcılığı Kitap

Merhaba arkadaşlar Megep kapsamında milli eğitim bakanlığının hazırladığı internet programcılığı php kitabını sizlere paylasmak istedim içindeki konular sıfırdan başlayıp nesne yönelimli programlamaya kadar giriyor.Yani güzel bir ekitap okumanızı tavsiye ederim..

Güvenlik 0 Yorum

Linux ve Windows Shell ve Spam(toplu) Mail Dosya Tarayıcı Findbot

Merhaba bildiğiniz üzere sunucuların baş belası haline gelen shell,telnet ve root exploitler ne yazikki bazen şifrelendiği için linux veya windows sistemlerde yakalanmaz durumda oluyor.Size aşağıdaki vereceğim yazılım bu şifreli kodlara

Sunucu Yönetimi 0 Yorum

Zimbra Mail Listesi ve Kullanım Oranlarını Almak

Merhaba bu makalemde zimbra sunucularda maillerin listesini almak ve tüm maillerin listesine ait kullanım oranlarını ekrana yazdırmak için bir komut vereceğim. Zimbra sunucularda mail kullanım oranları için istatistik olmadığı için

0 Yorum

Herhangi bir yorum yapılmamış!

İlk yazan olabilirsin bu yazıyı yorumlamak istermisin?

Cevap bırakın

This site uses Akismet to reduce spam. Learn how your comment data is processed.