PDA

View Full Version : برای مقابله با اینجکت این کد باید چیکار کرد



boysilent
شنبه 26 اسفند 1391, 20:38 عصر
سلام دوستان عزیز من تاپیکای زیادی خوندم برای مقابله با sql injection ولی بازم به نتیجه نرسیدم
چند تا تابع بود که میخواستم ازشون استفاده کنم ولی یه جاهایی نوشته شده بود که ائنها هم قابل نفوذه
با سشن میشه کاریش کرد؟امنیتشو بالا برد؟

2-برای هک شدن سایت از طریق include() باید چیکا کنیم؟
مثلا این کد:

<?php include ("send.php");$obj=new classconnect();$obj->funcconnect();$_user=$_POST[txtuser];$_pass=$_POST[txtpass];$querylog=mysql_query("SELECT * FROM _tbvorod WHERE `_use_r`='{$_user}' AND _pas_s='{$_pass}'");if($querylog){ $_SESSION[admin]=$_user; echo 1; } else echo 0; ?>

SlowCode
شنبه 26 اسفند 1391, 21:21 عصر
سلام
بله کدت امنیت نداره.
ربطی به اینکلود نداره! اینجکشن زمانی اتفاق می افته که هکر دستورات sql رو به صفحه تزریق میکنه به زبون ساده تر میاد دستورات رو تو txtuser یا txtpass شما وارد میکنه. شما باید از چندتا تابع استفاده کنی. دوستان قبلا در موردش خیلی صحبت کردن ولی شما واسه میتونی از این استفاده کنی:


function Escape($value)
{
$value = stripslashes($value);
$value=htmlentities($value);
return $value;
}

نحوه استفاده:


$user=Escape($_post['txtuser']);
$pass=Escape($_post['txtpass']);
.
.

boysilent
شنبه 26 اسفند 1391, 21:44 عصر
ممنونم از اینکه توجه کردید بغیر از اینجکشن با اینکلود هم میگن هک میشه کرد

engmmrj
یک شنبه 27 اسفند 1391, 01:34 صبح
یه تابع خوب برای Escape کردن sql injection

function quote_smart($value)
{
if(!is_numeric($value)) {
if(get_magic_quotes_gpc()) $value = stripslashes($value);
return mysql_real_escape_string($value);
}
else return $value;
}

boysilent
یک شنبه 27 اسفند 1391, 06:51 صبح
دوستان کسی در مورد باگ دایرکت ها چیزی نمیدونه؟؟؟؟