15 Ekim 2016 Cumartesi

Güvenli Web site Oluşturma


Merhabalar, bu konuda uygun fiyata site güvenliği nasıl sağlanıldığını anlatacağım.

Öncelikle site güvenliğimiz için güvenli domain firması seçiyoruz. Domain firması bizim web  sitemize erişebiliyor.
 Türk domain firmalarından satın alırsak hem daha pahalı hem güvenliğimizi azaltacağı için direk ana  bayi den satın alıyoruz.
Ben godaddy üzerinden anlatacağım.
 tr.godaddy.com adresinden domain adımızı yapıp sepete ekliyoruz.
 Domain satın alırken admin e-maili çok önemlidir aa.com sitesinin admin e-mail adresi domain@site.com olursa site.com sitesine erişilip mail paneline erişildiği taktirde aa.com sitesine erişilir.
 Bu yüzden alan adımızla eşleşen e-mail satın alıp info@aa.com admin@aa.com gibi e-mail satın alıp admin mail adresimize ekliyoruz. Veya sunucu satın alırken mail satın alabilirsiniz.
 Whois bilgilerimizi gizlemek site güvenliğini arttırır. Telefon numaranızı- adres bilgilerinizi gizler.
 domain süreniz dolduğunda aynı alan adı ile domain açılmaz vs.
 Daha sonra domain satın alıp hosting işlemlerine geçelim.
 Basit bir hosting satın alırsak sunucuda bulunan diğer sitelerden hedef siteye erişebilir.
 Sunucu satın alıp site.com'a ait dns veriyor.
 örn: ns1.site.com  ns2.site.com
 Satın aldığımız zaman serverda tek site olduğu için diğer sitelerden girip sitenizi hackleyemezler.
 site.org site.info gibi birçok site kuracaksanız her bir siteye yeni bir ip adresi alın.
 Daha sonra sitemize uygun script seçelim. Mümkünse scripti kendimiz kodlayalım (Güvenliği arttırır)
 400$ vBulletin scripti sürümlerinde bile güvenlik açığı görülebiliyor.
 Scripti kurduktan sonra ip üzerinde ftp-ssh-mysql-mssql hesapları kuracaksanız şifrenizin güvenliği çok önemlidir. 1milyarlık şifre kelimesinin içinde bile olmayan şifreler seçin.
 Veritabanı kesinlikle güçlü bir şifreleme ile saklanmalıdır.
 Sitenizin admin panelini kesinlikle gizli tutun. Gerekirse subdomain açıp sadece localhosta erişim verin. 2082 ve 2083 portu kapalı olsun.
  Sunucunuzdaki sitenizde açık tarama programlarını imha etmek için .htaccess dosyasına kodları yapıştırın.

RewriteEngine On
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_USER_AGENT} Acunetix [NC,OR]
RewriteCond %{HTTP_USER_AGENT} dirbuster [NC,OR]
RewriteCond %{HTTP_USER_AGENT} jbrofuzz [NC,OR]
RewriteCond %{HTTP_USER_AGENT} webshag [NC,OR]
RewriteCond %{HTTP_USER_AGENT} nikto [NC,OR]
RewriteCond %{HTTP_USER_AGENT} SF [OR]
RewriteCond %{HTTP_USER_AGENT} sqlmap [NC,OR]
RewriteCond %{HTTP_USER_AGENT} fimap [NC,OR]
RewriteCond %{HTTP_USER_AGENT} nessus [NC,OR]
RewriteCond %{HTTP_USER_AGENT} whatweb [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Openvas [NC,OR]
RewriteCond %{HTTP:Acunetix-Product} ^WVS
RewriteRule ^.* http://127.0.0.1/ [R=301,L]
</IfModule> 

 Xss açıklarını engellemek için .htaccess dosyasına kodları yapıştırın

RewriteEngine On
RewriteCond %{QUERY_STRING} base64_encode.*\\(.*\\) [OR]
RewriteCond %{QUERY_STRING} (\\<|<).*script.*(\\>|>) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\\[|\\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\\[|\\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php|forum.php|yaz.php [F,L]


 SQL İnjection engellemek için .htaccess dosyasına kodları yapıştırın

 RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR]
RewriteCond %{HTTP_REFERER} ^(.*)(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{REQUEST_URI} ^/(,|;|<|>|/{2,999}).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(libwww|curl|wget|python|scan).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{HTTP_COOKIE} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\\.0\\.0\\.1).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(<|>|’|%0A|%0D|’|<|>|).* [NC,OR]
RewriteCond %{QUERY_STRING} [^a-z](|order|union|declare|char|set|cast|convert|delete|drop|exec|insert|meta|script|select|truncate|update)[^a-z] [NC]
RewriteRule (.*) - [F] 

 Bu kodlar Sql ve Xss açıklarını filtreler. Çoğu exploit çalışmaz. Bypass yapılabilir fakat zordur.

Not: Web sitenize her cihazdan ve ağdan giriş yapmayın. 
 
 Herşeyi halledip keylogger & trojan yemezsiniz herhalde :)