PDA

View Full Version : دو تا سوال اینجکشنی



p30graph3
جمعه 13 فروردین 1389, 19:09 عصر
سلام فرض کنی برنامه ما بدون هش کردن پسورد و نام کاربری اونا رو تو دیتا بیس ذخیره میکنه

خوب حالا فرض کینم برنامه ما از این کوئری استفاده میکنه:


select * from admins where user='$usern' AND pass='$passw'چطور میشه به این از طریق SQL INJECTION حمله کرد؟؟؟

و یک سوال دیگه

یک فرمی داریم که رمز عبوری رو برای انجام کاری از ما میگیره و اینطوری چک میکنش:

فرض کنید رمز عبور به صورت بیش فرض در متغیری به نام $pass در کدمون و در همین صفحه ذخیره شده





if ($_POST['pass'] == "$pass")
{
عملیات
}
به نظروت میشه با وارد کردن چنتا کاراکتر به جای پسوورد بدون داشتم رمز هم شرط رو برقرار کرد؟

mojtabadj
جمعه 13 فروردین 1389, 19:40 عصر
سلام فرض کنی برنامه ما بدون هش کردن پسورد و نام کاربری اونا رو تو دیتا بیس ذخیره میکنه

خوب حالا فرض کینم برنامه ما از این کوئری استفاده میکنه:


select * from admins where user='$usern' AND pass='$passw'چطور میشه به این از طریق SQL INJECTION حمله کرد؟؟؟

و یک سوال دیگه

یک فرمی داریم که رمز عبوری رو برای انجام کاری از ما میگیره و اینطوری چک میکنش:

فرض کنید رمز عبور به صورت بیش فرض در متغیری به نام $pass در کدمون و در همین صفحه ذخیره شده





if ($_POST['pass'] == "$pass")
{
عملیات
}
به نظروت میشه با وارد کردن چنتا کاراکتر به جای پسوورد بدون داشتم رمز هم شرط رو برقرار کرد؟


اگر اینکار رو کنی که بیچاره میشی:چشمک:

اگر مقادیر ارسالی رو به صورت زیر بفرستیم:



$user = 1' OR '1' = '1
$pass = 1' OR '1' = '1


query ما به صورت زیر خواهد بود



"SELECT * FROM sql_inj WHERE nick ='1 OR '1' = '1' AND pass ='1' OR '1' = '1'"


زیرا 1 یا 1 همیشه برابر 1 هست و هکر میتوتند فرم لوگین رو دور بزنه

p30graph3
جمعه 13 فروردین 1389, 20:01 عصر
نه این مال خودم نیست برای سیتم دوستمه

درم مورد سوال دومی دومی چی؟؟؟

p30graph3
جمعه 13 فروردین 1389, 20:07 عصر
$user = 1' OR '1' = '1
$pass = 1' OR '1' = '1

این رو تست کردم ولی اثری نداشت!

p30graph3
یک شنبه 15 فروردین 1389, 20:02 عصر
کسی نیست سوال دوم رو جواب بده؟