php ajax post güvenliği

0

Merhabalar yardım istediğim konu şu şekilde.Ben mesela begen.php ye bir veri göndermek istiyorum ve bu veriyi jquery ve ajax kullanarak gönderiyorum.Aşağıda örnek post gönderme kodunu yazıyorum.

$(document).ready(function(){
  $(".prgncl").click(function(){
    var begeniid = $("[name=begeniid]").val();
    var deger = "&begeniid="+begeniid;      
        $.ajax({
        type: "POST",
        url: "begen.php",
        data: deger,
        success: function(asd){
        swal(asd)
        }                        
      });
    });
  });

şimdi ben bunu bu şekilde yolladım diyelim.sonra begen.php de veriyi şu şekilde alıp veritabanı işlemi yaptık diyelim.

$cevapid = $_POST["begeniid"];

$puanarttir = $db->prepare("update begen set begeni_puan=begeni_puan+1 where uye_id='$cevapid'");
$puanguncelle = $puanarttir->execute(array( ));

Bu şekilde bir sistem yaptık diyelim.Bu dışarıdan müdahale edilmeye gayet açık bir sistem oldu.Mesela örneğin begen.php ye başka bir siteden de js ile veri gelebilir ve bu veri siteye girmesini istemediğimiz bir veri olabilir.Benim istediğim sadece site içinden gelmiş ajax postlarını kabul etsin diğerlerini kabul etmesin dışarıdan müdahale etme olayı olmasın.Bunun için neler yapılabilir ? mesela begeniid değişkenini ajax yerine sayfa yenilemeden başka nasıl bir şekilde yollayabiliriz?

yumuklusucurta yumuklusucurta (89)
6 yıl önce sordu

    Toplam 1 Cevap


    0

    begen.php'de kimlik doğrulaması yapmıyor musun? Bunu yapmak zorundasın, bunu yaptığında zaten sorun kendiliğinden kaybolur. Yani gerçekten o kullanıcı beğen butonunu tıklamış mı bunu kontrol etmen gerekir.

    begen.php dosyanı sadece autorize olmuş kullanıcılar tetikleyebilmeli.

    Aynı zamanda bilmen gereken bir kaç kavram var: CSRF ve CORS bunları biraz araştırmanda fayda var.

    alattin alattin (17125)
    6 yıl önce cevaplandı

    • Kimlik doğrulaması dediğiniz şey nedir ? yumuklusucurta 6 yıl önce
    üyelik gerektirir

    Cevap yazabilmek için üye girişi yapmalısınız.

    Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
    uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol