v2.5.2
Giriş yap

Post işleminde açık nerede sürekli hack yiyorum

onnumaraadam
531 defa görüntülendi

merhabalar bir script satın almıştım puan sistemli ve her üyeye günlük (24 saatte) birdefa hediye puan işlemi var

siteme bir üye dadandı sürekli istediği puanı alıyor kod bilgim çok az ne olur yardımcı olun

kısaca index.php de bir adet tıklama buttonu var

    <div class="tablo hediye">
        Günlük Hediyeni almak için tıklayın
    </div>

bu işlem js kısmında ise bu şekilde işlem yaptırılmış

    $('.hediye').on('click',function() {
    $(".hediye").html("Lütfen bekleyin");

    $.post("./php/post.php", {
     tip:"hediye",
     
    },function(r){
        if(r=="ok"){
             window.location.href = './index.php';
        }else{
            if(r=="oturum"){
    			$(".hediye").html("Günlük Hediyeni almak için tıklayın");
                uyar("<br>Oturum açmalısınız");
            }else{
                if(r=="zaten"){
                    $(".hediye").html("Günlük Hediyeni almak için tıklayın");
                    uyar("<br>Bugünlük hediyenizi zaten aldınız<br>24 Saat sonra tekrar alabilirsiniz.");
                }
            }
        }
    });
    });

post.php de ise

burda $hediyelik = $proje->hediyelik; veritabanından belirlediğim puan miktarı


    function guvenlikKapisi($data){
    return htmlspecialchars($data);
    }

    if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['tip'])){
    $_POST  = array_map('guvenlikKapisi', $_POST);
    
    if($_POST['tip']=='hediye'){
        if(isset($_SESSION['oturum']) && $_SESSION['oturum']){
			$profil     =   DB::getRow('SELECT * FROM uyeler WHERE id = ?',array($_SESSION['oturum']));
			$hediyelik   = $proje->hediyelik;
			if($profil){
			$bitis = date('Y-m-d H:i:s', strtotime('+24 hours'));
			$guncelle= DB::exec('UPDATE uyeler SET bakiye=bakiye + ?, hediye=1,hediyetarih=? WHERE id =?',array($hediyelik,$bitis,$_SESSION['oturum']));
			if($guncelle){
				
			echo 'ok';
            return;
			}
				
			}
		}else{
            echo 'oturum';
            return;			
		}
	}
	}
polev
1286 gün önce

Anladım ama bu şekilde sağlıklı çalışma olmaz ve güvenli değil.Biraz araştırmanı tavsiye ederim.