Şimdi arkadaslar php de çoğu güvenlik sorunları form işlemlerinden kaynaklanır.
Eğer webmaster gelen verileri uygun bir biçimde filtrelememişse bu saldırganın kötü kodlarının da çalışmasına neden olacaktır
mesela xss ataklarında şöyle bir şey olsun.bir form olsun ve bu formdan
verileri alıp veritabanına kaydetmeyi deneyelim.formdan isim ve şifre isteyelim
eğer şu şekilde veriler alınırsa bir xss açığı oluşacak
-
-
<?php
-
-
isim=$_POST[‘isim’];
-
sifre=$_POST[‘sifre’];
-
?>
-
evet normalde su sekilde post olur
kayit.php?isim=el_master&sifre=123456
ama webmaster filtrelemediği için şu kodu çalıştırırsak xss alertimizi verebiliriz
kayit.php?isim=scriptalert(‘xss’);/script&sifre=123456
bunu browser da çalıştırdığımız zaman alert penceresi içerisinde xss uyarısı verecektir.peki script alert(document.cookie)/script yazarsak ne olur.o anki session id mizi verir.bu şekilde eğer bir linkte bu url yi gizleyip sitenin yöneticisine tıklatırsak sitenin yöneticisinin cookie sini çalıp siteye yonetici yetkisiyle girebiliriz.
Evet bir de veritabanına gonderilen sorgularda filtreleme olmazsa çeşitli hatalardan yararlanılıp siteye ciddi zararlar verilebilir.
mesela
haberler.php?id=34
burdaki id değeri integer yani sayısal bir ifadedir.eğer bir id yi integer olmayan bir değer girersek sistem hata verecektir.ve bu hatalardan veritabnında mevcut olan nerdeyse tüm bilgileri çekebiliriz.
eğer bunun gibi yani haberler.php?id=34 gibi olan veri,ler çekiyorsak
şeklinde yaparak sadece integer verileri alırız ve boylece sql injection ataklarından kurtulabiliriz.
YA da veritabanından text olan bir sütundan veri çekersek mesela sitemde olan
site.php?detay=gencportal.org burda linke
site.php?detay=gencportal.org’ şeklinde girersek gene hata verecektir.bunuda şu şekilde engelleyebiliriz
şeklinde yazarak string escape ediyoruz yani saklıyoruz(kaçırıyoruz)
bu şekilde güvenliği sağlarız
benden size tavsiye formdan gelen verileri mutlaka
strip_tags() yada htmlspecialchars() ile filtreleyin
bunun gibi birçok güvenlki fonksiyonları vardır.php.net ten inceleyebilirsiniz
benden şimdilik bu kadar