Merhaba arkadaslar. PHP ve MySQL konusunda deneyimli arkadaslardan yol gostermelerini isteyecektim. Sorum su:
Su anda PHP ve MySQL kullanarak bir sistem olusturuyorum. Yonetici panelinden veritabanina ilgili veriler eklenecek ve site ziyaretcisi bunlari gorecek. Sansliyim ki site uzerinde kullanici girisine gerek yok. Bir tek admin panele giris yapacak. Yani kisaca register veya kayit.php diye bir sayfayi bir kere kullanip daha sonra serverdan kaldiracagim. Benim istedigim bu sitenin disaridan gelecek saldirilara karsi korunakli olmasi. Bu konuda neler yapmam lazim. Su su konulara bak demeniz yeterli.
Su anda benim uzerinde ugrastiklarim:
1- Brute force u enellemek icin login-attempt i tutuyorum. Bir noktadan sonra kullanici kitleniyor ve manuel acmak gerekiyor.
2- Yine bruteforce u ve botlari engellemek icin captca kolayacagim.
3- Veri tabani ile baglanti kuracak butun kodlari barindiran php dosyalari ayri bir klasorde. User url kismina MySQL sorgusunu direk icermeyen sayfalari cagirabilsin istiyorum. Bu sayfalar include ile gerekli dosyalari icine aliyor. Bu gizlemek istedigim klasor icin dosya izinleri ne olmali mesela? Ve dogru bir yolmu sizce?
4- Baska neler yapmam lazim?
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Hocam güvenlik deyince aklıma ilk SQL Injection geliyor web sitelerinde, bunuda PHP PDO ile aştı. Yani mysql sorgularınızı mysqli kullanarak değil PDO olarak sorgulatın böylece SQL Injection sıkıntınız olmaz. Ayrıca GET metodu ile gönderilen değerleriniz varsa göndermeden önce kendinize göre şifreleyin, Alacağınız sayfada o şifreyi çözüp öyle okuyun. Mesela ornek.php?deger=120 şekliden gönderiyorsanız bunu md5 ile yada farklı şifreleme algoritmalarıyla şifreleyin. md5 ile şifrelerseniz ornek.php?deger=da4fb5c6e93e74d3df8527599fa62642 sonuc bu şekilde olacak daha sonra ornek.php sayfasında bu değeri decrypt edip kullanın.
Msql ile bağlantısı yapmaya çalıştığım da msqli veya PDO ile yapmamı söylüyor. Niçin bunları kullanmak gerekir. Msql kalkacak kullanılmayacak diyorlar. Pdo için versiyon en az ne olmalı php de. Şimdiden cevap yazan arkadaşlara teşekkürler.
Su anda PHP ve MySQL kullanarak bir sistem olusturuyorum. Yonetici panelinden veritabanina ilgili veriler eklenecek ve site ziyaretcisi bunlari gorecek. Sansliyim ki site uzerinde kullanici girisine gerek yok. Bir tek admin panele giris yapacak. Yani kisaca register veya kayit.php diye bir sayfayi bir kere kullanip daha sonra serverdan kaldiracagim. Benim istedigim bu sitenin disaridan gelecek saldirilara karsi korunakli olmasi. Bu konuda neler yapmam lazim. Su su konulara bak demeniz yeterli.
Su anda benim uzerinde ugrastiklarim:
1- Brute force u enellemek icin login-attempt i tutuyorum. Bir noktadan sonra kullanici kitleniyor ve manuel acmak gerekiyor.
2- Yine bruteforce u ve botlari engellemek icin captca kolayacagim.
3- Veri tabani ile baglanti kuracak butun kodlari barindiran php dosyalari ayri bir klasorde. User url kismina MySQL sorgusunu direk icermeyen sayfalari cagirabilsin istiyorum. Bu sayfalar include ile gerekli dosyalari icine aliyor. Bu gizlemek istedigim klasor icin dosya izinleri ne olmali mesela? Ve dogru bir yolmu sizce?
4- Baska neler yapmam lazim?
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu ileti DH mobil uygulamasından atıldı >