SQL Acığı Olan Siteyi Güvene Alma (SQL SALDIRI ENGELEME | SEO UYUMLU SİTE YAPIMI)

06-07-2018

 
 
Merhaba Arkadaşlar SQL Acığı Nedir Forumda Bilmeyen Yoktur Kısa Kesecem 
SQL Acığı $_GET['id']; 
Fonksiyonu İle Mysql Den Veri Cektiğimizde Ortaya Cıkar
Örnek 
PHP:
<?php
$id = $_GET['id']; // gelen id değeri
$kayit = mysql_query("SELECT * FROM akademi WHERE id=$id");
?>
Bu Sekilde Olur Genelde Kodlar Arasında Peki Bu Acıkları Nasıl kapatırız
PHP:
<?php
$id = $_GET['id']; // gelen id değeri
$id= mysql_real_escape_string($id);
$kayit = mysql_query("SELECT * FROM akademi WHERE id=$id");
?>
Bu sekil tabi Gene Buda Bypass Lana Bilir
ikinci İslem İşe .htaccess İle Engeleme URL Değistirme
Web Scannerlardan korunma Yapmak 
Acunetix sqlmap dirbuster gibi 
Scannerlardan korunmamızı saglıyor 
 
.htaccess kodları 
Kod:
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>
SQLMAP Havij Gibi Programları Engelem
icin bu Kodlarıda .htaccess ekliyelim
Kod:
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR]
RewriteCond %{HTTP_REFERER} ^(.*)(<|>|’|%0A|%0D|’|<|>|%00).* [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|’|<|>|%00).* [NC,OR]
RewriteCond %{HTTP_COOKIE} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\\.0\\.0\\.1).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR]
RewriteCond %{QUERY_STRING} [^a-z](|order|union|declare|char|set|cast|convert|delete|drop|exec|insert|****|script|select|truncate|update)[^a-z] [NC]
RewriteRule (.*) - [F]
Simdi İse En Son İşlem
Seo Dostu URL Yapacaz
Hem Sitemiz Seo Uyumlu Olacak
Hemde Sql atacklarında 
site.com/sayfadetay.php?id=5 yerine site.com/sayfadetay/5/seo-dostu-url-yapimi.htm
Sekline getire Biliriz Bu Sayede Daha Güvenli Bir Sisteme Sahip Oluruz
ÖNEMLİ: Eğer bu konuda bilgili değilseniz .htaccess dosyanızın bir yedeğini mutlaka alınız.Yoksa web siteniz çalışmaz.
PHP sayfalarımızı site.com/sayfadetay.php?id=5 şeklinde $_GET[id] methodu ile çalışaçakmışız gibi kodlayacağız. SEO dostu url mizin okunmasını .htaccess ile sağlayacağız.
 
SEO dostu url yaparken dikkat edilmesi gerekenler.
 
.htaccess dosyası ile php dosyalarımız aynı klasör içinde olması gerekmekte
web sayfasına eklediğiniz resim ve CSS dosyalarının çalışması için oluşturduğumuz PHP sayfalarının tamamına taginden önce PHP tagleri arasında $base tanımlaması yapılması gerekmekte
PHP:
$base = http//:www.site.com/PHPdosyalari; echo $base;
bu kodu eklemezseniz resimleriniz web sayfasında görüntülenmez
404 The page cannot be found gibi hata saylalarıda yapmak isterseniz hata sayfalarınızında aynı dizin içinde bulunması gerekmekte
dikkat etmemiz gerken diğer bir konu ise türkçe karakter problemi url mizi Türkçe karakterlerden temizlememiz gerekmektedir, uygun bir kod yapısı oluşturusak Tükçe karakter içeren bir seo dostu url de PHP ye oluşturtabiliriz. url lerdeki Türkçe karakterleri temizleyeceğimiz kod aşağıda
Örnek bir .htaccess dosyası verecek olursak
Kod:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /PHPdosyalari
 
ErrorDocument 401 /KlasorAdi/401.php
ErrorDocument 403 /KlasorAdi/403.php
ErrorDocument 404 /KlasorAdi/404.php
ErrorDocument 500 /KlasorAdi/500.php
 
RewriteRule ^sayfa/([0-9]+)/([a-zA-Z0-9]+)/$ sayfadetay.php?id=$1 [NC,QSA,L]   
#sayfa ile başlayan linke tıkladığımızda yapılacak işlemleri ifade ediyor /$1/$2/  karşılık değerleri bu değerler likimiz dorultusunda çoğaltılabilir
RewriteRule ^urun/([0-9]+)/([a-zA-Z0-9]+)/$ urundetay.php?id=$1 [NC,QSA,L]
RewriteRule ^kategori/([0-9]+)/$ kategori.php?id=$1 [NC,QSA,L]
Yazdığımız kodları açıklarsak:
 
RewriteEngine On: Bu komut ile url yönlendirmesini aktif hale getiriyoruz.
RewriteBase : Bu komut ile yönlendirmemizin etkili olacağı klasörü belirliyoruz.
Örneğin sitemiz www.site.com/PHPdosyalari şeklinde bir dizinde ise kod yapımız RewriteBase /PHPdosyalari şeklinde olacaktır.
RewriteRule : Bu komut yönlendirmeyi gerçekleştirecek komutumuzdur. Hangi adresin hangi adrese yönleneceğini bu komut ile belirlenir.
 

Blog Reviews

{{totalComments}} Comment
{{comment.owner.name}}
{{comment.owner.name}}
{{comment.createdAt | date:"dd/MM/yyyy"}}
{{comment.commentData}}