PHP Karşı Siteye Veri Girme
15
●1.732
- 14-12-2014, 19:14:46Arkadaş açık kaynak satacağı ya da dağıtacağı bir script için yazacak bu kodu. Satın alan ya da download eden herkes statik bir şifre olursa görecek. Ve kötü niyetliler için aynı scripti kullanan diğer sitelere aynı şife üzerinden veri post etme imkanı doğacak.CBSoft adlı üyeden alıntı: mesajı görüntüle
En rahat yol ip kısıtlaması yapmaktır. Güncelleme yapacak sunucunun ip adresini yazarsınız, bunun dışındanki ip adreslerinden gelen postları dikkate almazsınız. - 14-12-2014, 22:17:11Benim fikrim en güzeli csrf token mantığıdır github da classları var
- 15-12-2014, 14:38:38Üyeliği durdurulduHocam aynen dediğiniz şey de şimdi ben post ederken İp adresini form ile gönderdim diyelim 21.21.21.21 gibi karşı tarafta eğer ip 21.21.21.21 ise oke ver dedik tamam ama bunu adamda yapamazmı yani ip değişkeni yapıp 21.21.21.21 gönderirse ?digiklan adlı üyeden alıntı: mesajı görüntüle
- 15-12-2014, 15:51:35IP bilgisini veritabanında tut. Sistemi kurduğu zaman hangi ip'den data almak istiyorsa yönetim paneli kısmında bu ip'yi kendisi oluştursun. Böylelikle herkes kendi ip adresini biliyor olur. Veritabanında kayıtlı olan IP adresi dışında herhangi bir ip adresi ile işlem yapmamasını sağlarsanız kodları istediği gibi bilsin sorun yaşamazsınız. Birde şifreleme yap. Mesela bir algoritma oluştur ve benzersiz kod üret. Üretilen kod ile IP adresini eşleştir. Data gönderecek olan kişi sana veri gönderdiğinde bu benzersiz kodu da göndersin. Yine veritabanına kayıtlı olan bu kod ile gelen IP adresi eşleştirilmiş ve kayıtlı ise işlem yapmasına izin verirsin.RapCrown adlı üyeden alıntı: mesajı görüntüle
- 15-12-2014, 17:03:58ip adresi form ile post edilen bir bilgi değildir.RapCrown adlı üyeden alıntı: mesajı görüntüle
ip adresi TCP IP protokolü çerçevesinde apache tarafından alınır ve php ye iletilir.
Karşı tarafın ip adresini değiştirme gibi bir durumu olamaz.
Örnek kod yazdım.
POST verisini işleme sokmadan ip adresini $_SERVER globalinden öğrenebilirsin.
Bazı windows sunucularda $_SERVER da ip adresi boş dönebildiği için uzun kodunu yazdım.
$izinverilen_ipadresi= '127.0.0.1';
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARTDED_FOR'] != '') {
$gelen_ipadresi = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$gelen_ipadresi = $_SERVER['REMOTE_ADDR'];
}
if($gelen_ipadresi != $izinverilen_ipadresi){
die('yetkisiz işlem');
} - 15-12-2014, 17:17:57Üyeliği durdurulduİlginizden dolayı teşekkür ederim eve geçtiğimde test edicem.digiklan adlı üyeden alıntı: mesajı görüntüle