barnamenevis2016
یک شنبه 24 خرداد 1394, 20:32 عصر
سلام..من داشتم یک کتاب در مورد امنیت php می خوندم...بعد در اوایل ساده می گفت که مثلا هکر می تونه یک متغیر رو نسبت دهی بکنه و عملی مخرب انجام بده...اینطور مثال زده بود
$pass = strtolower(md5($_POST['pass']));
$$pass = "de1b2a7baf7850243db71c4abd4e5a39";
if($pass == $$pass){
$admin= 1;
}
if($admin==1)
{
echo "Welcome to the system";
}else{
echo "Enter Correct Password";
}
بعد می گفت هکر می تونه با معین کردن و فرستادن متغیر admin و با مقدار یک....به سیستم خودش رو مدیر جا بزنه....ولی من موندم که چطور هکر می تونه متغیر admin رو نسبت دهی کنه و مقدار یک بده، واسه سرور...
توی کتاب نوشته بود...هکر کافی کد زیر رو در فرم ورود به سایت قرار بده....
<input type=hidden name=admin value=1>
در این صورت اگر هکر فرم رو بفرسته و submit کنه مقدار متغیر admin معین و برابر یک خواهد بود برای سرور...ولی چطور...مگه می شه؟
و چطور اصلا می شه در میان فرم متغیری رو هم فرستاد سمت سرور؟
$pass = strtolower(md5($_POST['pass']));
$$pass = "de1b2a7baf7850243db71c4abd4e5a39";
if($pass == $$pass){
$admin= 1;
}
if($admin==1)
{
echo "Welcome to the system";
}else{
echo "Enter Correct Password";
}
بعد می گفت هکر می تونه با معین کردن و فرستادن متغیر admin و با مقدار یک....به سیستم خودش رو مدیر جا بزنه....ولی من موندم که چطور هکر می تونه متغیر admin رو نسبت دهی کنه و مقدار یک بده، واسه سرور...
توی کتاب نوشته بود...هکر کافی کد زیر رو در فرم ورود به سایت قرار بده....
<input type=hidden name=admin value=1>
در این صورت اگر هکر فرم رو بفرسته و submit کنه مقدار متغیر admin معین و برابر یک خواهد بود برای سرور...ولی چطور...مگه می شه؟
و چطور اصلا می شه در میان فرم متغیری رو هم فرستاد سمت سرور؟