PDA

View Full Version : مشکل امنیتی با ajax



darkface
سه شنبه 02 شهریور 1395, 19:16 عصر
سلام خدمت دوستان عزیز.
خدمتتون عرض کنم یه موضوعی هست که من رو خیلی وقته درگیر کرده و اونم این موضوع هست که طرفی که از فریم ورک ها به هر دلیلی استفاده نمیکنه یه مشکل خیلی جدی دارن
شما فرض کنید یه سری لیست موارد رو اوردید به این صورت.


while($m=mysql_fetch_assoc($result)){
$id=$m['adsid'];
$SQL11 = "SELECT * FROM `ads` WHERE `id` = '$id'";
$result11 = mysql_query($SQL11) or die(mysql_error());
if($result11) {
if(mysql_num_rows($result11) > 0) {
$member = mysql_fetch_assoc($result11);
$adsname = $member['name'];
}
}

?>
<tr>
<td id="cartname"><? echo $adsname; ?></td>
<td><? echo $m['tprice']; ?></td>
<td><i class="fa fa-close" style="color:red" onclick="delpru('<? echo $m['id']; ?>')"></i></td>
</tr>
<?
}


خب همونطوری که مشاهده میکنید در این خط ما یه فانکشن jquery رو فراخونی کردیم و یه Id بهش دادیم.



<td><i class="fa fa-close" style="color:red" onclick="delpru('<? echo $m['id']; ?>')"></i></td>


خب الان قاعدتا برای طرف توی کد اینو نشون میده مثلا


<i class="fa fa-close" onclick="delpru('7')" style="color:red"></i>


خب بقیه کدشام که نیازی نداریم چون بحث تا همینجاشه.
الان طرف میاد این ایدی 7 رو مثلا میکنه 8 یه محصول دیگه پاک میشه.

حالا اینو گذاشتم ببینم راهکار شماها چیه؟
ممنون

ravand
چهارشنبه 03 شهریور 1395, 08:40 صبح
خب برای اینکه کسی غیر مدیر پاکش نکنه شما باید با php مدیر رو مشخص کنی که کی هست؟ که کسی غیر از مدیر نتونه پاکش کنه.و هر کی رکوردهای مربوط به خودش رو حذف کنه.

SELECT * FROM `ads` WHERE `karbar`=ali AND `id` = '$id'