نمایش نتایج 1 تا 6 از 6

نام تاپیک: sql injection

  1. #1

    sql injection

    کد زیر کد یک صفحه php است

    <form name="form1" method="get" action="<?=$PHP_SELF?>">
    <input type="text" name="text">
    <input type="submit" name="Submit" value="Submit">
    </form>
    <?php
    $var=$_GET["text"];
    if(isset($var) && empty($var)==false){
    $conn=mysql_connect("localhost","root","pass"& #41; or die("error");
    $db=mysql_select_db("test") or die("error2");
    $query="SELECT * FROM test WHERE name LIKE '$var'";
    $result=mysql_query($query) or print(mysql_error());
    while ($row=mysql_fetch_array($result))& #123;
    echo $row[name]."<p>";echo $row[phone]."<p>";echo $row[family]."<p>----<p>";
    }
    }
    ?>

    اگر من در url خود وارد کنم

    http://127.0.0.1/1.php?text=ho%20union select * from test where name='houtan'

    باید بوسیله یک sql injection ساده اطلا عات houtan را به من بدهد در حالی که من با error بانک اطلا عاتی مواجه می شوم
    چرا؟ :shock:
    Artists use lies to tell the truth while politicians use them to cover the truth up

  2. #2
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    سلام،

    بهتر بود این سوال رو در بخش php می پرسیدی.... :)
    در php.ini متغیرس داریم به نام magic_quotes_gpc که احتمالا در مکانی که این برنامه رو اجرا کردید ON بوده...
    کار این متغیر همونجوری که شاید از نامش معلوم باشه این هستش که علامت های qoute مثل ' و " رو با یک اسلش در ابتدای اون به برنامهء شما پاس می ده یعنی متغیر text در داخل خود برنامه به احتمال زیاد به صورت زیر در خواهد آمد...

    text=ho%20union select * from test where name=\'houtan\'


    با این تفاسیر.... این query جدید برای بانک ناشناخته خواهد بود و مسلما به شما error بر خواهد گرداند!!!

    موفق باشید، امید
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  3. #3
    1-با phpinfo() چک کردم off بود
    :shock: 2-آیا بجز تغییر در php.ini راهی برای گرفتن اطلاعات به این روش هست؟
    Artists use lies to tell the truth while politicians use them to cover the truth up

  4. #4
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    تا اونجایی که من می دونم نه....
    باز هم قبل از ارسال اون رشته به بانک اون رو پرینت کن ببین دقیقا چه شکلی هستش.
    نتیجه رو اینجا بنویس تا یه فکری به حالش بکنیم :) :wink:

    موفق باشید، امید
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  5. #5
    در url نشان داده شده در address bar هیچ تغییری بجز اضافه شدن %20 به جای فاصله ها نمی بینم
    در مقالاتی که می خوانم مثال های جامعی نمی بینم اما با همان روشی که آن ها توضیح داده اند کار می کنم و جواب نمی گیریم
    اگر لطف کنید یک مثال ساده برای من بگذار :flower: ید
    Artists use lies to tell the truth while politicians use them to cover the truth up

  6. #6
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    می شه لطف کنی و دقیقا خروجی کدت رو بدی....
    البته کدت رو به صورت زیر تغییر بدی بد نیست....
    x die("SELECT * FROM test WHERE name LIKE '$var'"); x

    موفق باشید، امید
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

تاپیک های مشابه

  1. نمونه sql injection
    نوشته شده توسط tizdast در بخش PHP
    پاسخ: 7
    آخرین پست: سه شنبه 19 فروردین 1393, 00:50 صبح
  2. هنر تزریق - The Art SQL Injection
    نوشته شده توسط Best Programmer در بخش امنیت در نرم افزار و برنامه نویسی
    پاسخ: 1
    آخرین پست: یک شنبه 08 شهریور 1388, 19:04 عصر
  3. راهکار شما برای مقابله با sql injection
    نوشته شده توسط hmm در بخش ASP.NET Web Forms
    پاسخ: 19
    آخرین پست: جمعه 02 شهریور 1386, 14:46 عصر
  4. SQL Injection
    نوشته شده توسط yavari در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: سه شنبه 10 مرداد 1385, 09:34 صبح
  5. sql injection
    نوشته شده توسط hmm در بخش SQL Server
    پاسخ: 4
    آخرین پست: شنبه 11 بهمن 1382, 18:37 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •