- Katılım
- 29 Haz 2020
- Mesajlar
- 1,362
- Tepkime puanı
- 33
- Puanları
- 48
Metin2 Pvp veya başka bir website panel yada dosyaları hakkında güvenlik açıklarını nasıl kapatırız? Websitelerde bulunan açıkları kapatmanın, site hızını arttırmanın ve güvenliği arttırmanın en emin yolları nelerdir?
1. Güvenli Website Hostingi
Websitenizi barındırdığınız hosting firmasının güvenlik duvarı oldukça önemlidir. Eğer kendi sunucunuza sahipseniz, kesinlikle güvenlik duvarı ve güvenlik modlarını açık tutmalısınız. Örnek bir panelden gideyim WebControlPanel7 de pro sürüm kullanırsanız güvenlik modları en güncel hali ile sitenizi koruyacaktır. Mod securty oldukça önemlidir.
2. SSL yani https protokolü
Burda sitenizi girdiğiniz browserlar güvenli olarak tanımlayacaktır. Siteniz oyun sitesi de olsa ssl almanız hem ziyaretçiye güven veriri hemde sitenizin şifrelendiğini ve bu şekilde hackerlardan uzak tutulduğunu bilmeniz oldukça önemli.
3. Website Yazımı
Websitenizin yazılımı yani kodları ne kadar temiz ve ne kadar stabil çalıştığıda oldukça önemlidir. Profesyonel bir kodlama uzmanından bu konuda kesinlikle yardım alın. Eğer ufak bir açığınız yakalanırsa bunu farkeden kişi sonuna kadar kullanmak için uğraşacaktır. Bunu çözmek için iyi bir kodlama uzmanı ile anlaşabilirsiniz.
4. Klasör ve dosya listelemeyi engelleyin
Bazı klasörlerinize yada dosyalarınıza kök isim ile girenler dosyaların liste halinde görünmesini sağlar. Buda ciddi bir güvenliktir. Bunu düzenlemek için tüm klasörlere boş index.html atın yada .htaccess dosyasına aşağıdaki kodu ekleyin.
5. Sitenizin trafik yükünü azaltın
Bunu yapmak oldukça basit sitenizde .htaccess desteği varsa, ftp den site root dosyasına gidin orda .htaccess dosyasını indirin ve metin editoru ile açın. İçine aşağıda verdiğim kodları ekleyin. Bu kodlar sitenizin hem yükleme hızını arttıracak hemde yüksek trafiklerde sitenizin yükünü azaltacaktır.
6. CDN kullanımı
Cdn sitenize gelen trafiği süzmeye ve çoğu tekrarlı trafiği sitenize hiç yük yapmadan kendi sunucusundan sağlayan bir hizmettir. Bunun için ücretsiz olarak hizmet veren cloudflare yi tercih edebilirsiniz. Sizden dns yönlendirmenizi isteyerek basit bir şekilde sitenizi cdn kullanımına sevk edebiliyor.
7. Config dosyasını güvenli hale getirme ve erişime engellemek
Aşağıdaki kod ile kolayca dilediğiniz dosyaya direkt erişimi kısıtlayabilirsiniz. Örnek olarak .htaccess ve config.php bu (baglan.php de olabilir) dosyalarını 3. kişilere engelleyebilirsiniz.. Komutu .htaccess dosyasına eklediğinizde artık bu dosyalar dış erişime kapalı olacaktır.
Bu güvenlik önlemleri ile sitenizin eski halinden çok daha güvenli ve hızlı hale getirecektir. Aşağıdaki kodları da .htaccess dosyasına ekleyerek ilgili sorunları kapatabilirsiniz.
Krtik dosyalarınıza web üzerinden yetkisiz erişimleri engellemek için
Linux yerel dosya enjeksiyon(LFI) saldırısnı engellemek için
Mysql enjeksiyon ve remote file inclusion(RFI) saldırılarını engellemk için
1. Güvenli Website Hostingi
Websitenizi barındırdığınız hosting firmasının güvenlik duvarı oldukça önemlidir. Eğer kendi sunucunuza sahipseniz, kesinlikle güvenlik duvarı ve güvenlik modlarını açık tutmalısınız. Örnek bir panelden gideyim WebControlPanel7 de pro sürüm kullanırsanız güvenlik modları en güncel hali ile sitenizi koruyacaktır. Mod securty oldukça önemlidir.
2. SSL yani https protokolü
Burda sitenizi girdiğiniz browserlar güvenli olarak tanımlayacaktır. Siteniz oyun sitesi de olsa ssl almanız hem ziyaretçiye güven veriri hemde sitenizin şifrelendiğini ve bu şekilde hackerlardan uzak tutulduğunu bilmeniz oldukça önemli.
3. Website Yazımı
Websitenizin yazılımı yani kodları ne kadar temiz ve ne kadar stabil çalıştığıda oldukça önemlidir. Profesyonel bir kodlama uzmanından bu konuda kesinlikle yardım alın. Eğer ufak bir açığınız yakalanırsa bunu farkeden kişi sonuna kadar kullanmak için uğraşacaktır. Bunu çözmek için iyi bir kodlama uzmanı ile anlaşabilirsiniz.
4. Klasör ve dosya listelemeyi engelleyin
Bazı klasörlerinize yada dosyalarınıza kök isim ile girenler dosyaların liste halinde görünmesini sağlar. Buda ciddi bir güvenliktir. Bunu düzenlemek için tüm klasörlere boş index.html atın yada .htaccess dosyasına aşağıdaki kodu ekleyin.
# Options -Indexes
5. Sitenizin trafik yükünü azaltın
Bunu yapmak oldukça basit sitenizde .htaccess desteği varsa, ftp den site root dosyasına gidin orda .htaccess dosyasını indirin ve metin editoru ile açın. İçine aşağıda verdiğim kodları ekleyin. Bu kodlar sitenizin hem yükleme hızını arttıracak hemde yüksek trafiklerde sitenizin yükünü azaltacaktır.
<IfModule mod_expires.c>
ExpiresActive On
# Images
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
# Video
ExpiresByType video/mp4 "access plus 1 year"
ExpiresByType video/mpeg "access plus 1 year"
# CSS, JavaScript
ExpiresByType text/css "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
# Others
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
</IfModule>
6. CDN kullanımı
Cdn sitenize gelen trafiği süzmeye ve çoğu tekrarlı trafiği sitenize hiç yük yapmadan kendi sunucusundan sağlayan bir hizmettir. Bunun için ücretsiz olarak hizmet veren cloudflare yi tercih edebilirsiniz. Sizden dns yönlendirmenizi isteyerek basit bir şekilde sitenizi cdn kullanımına sevk edebiliyor.
7. Config dosyasını güvenli hale getirme ve erişime engellemek
Aşağıdaki kod ile kolayca dilediğiniz dosyaya direkt erişimi kısıtlayabilirsiniz. Örnek olarak .htaccess ve config.php bu (baglan.php de olabilir) dosyalarını 3. kişilere engelleyebilirsiniz.. Komutu .htaccess dosyasına eklediğinizde artık bu dosyalar dış erişime kapalı olacaktır.
<Files config.php>
Order Deny,Allow
Deny from all
</Files>
<Files .htaccess>
Order Allow,Deny
Deny from all
</Files>
Bu güvenlik önlemleri ile sitenizin eski halinden çok daha güvenli ve hızlı hale getirecektir. Aşağıdaki kodları da .htaccess dosyasına ekleyerek ilgili sorunları kapatabilirsiniz.
Krtik dosyalarınıza web üzerinden yetkisiz erişimleri engellemek için
Options +Followsymlinks
RewriteEngine On
RewriteCond %{REQUEST_URI} passwd
RewriteRule ^(.*)$ - [F,L]
RewriteEngine On
RewriteCond %{REQUEST_URI} shadow
RewriteRule ^(.*)$ - [F,L]
Linux yerel dosya enjeksiyon(LFI) saldırısnı engellemek için
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]
Mysql enjeksiyon ve remote file inclusion(RFI) saldırılarını engellemk için
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]