SQL injection - Help

Discussion in 'PHP' started by mr666, 20 Nov 2006.

  1. mr666

    mr666 New Member

    Joined:
    19 Nov 2006
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Немогу понять как замутить SI. вобщем есть самописный движок на локалхосте, я ввожу в URL'e http://test1.ru/page.php?p=kontakt' и MySQL возвращает мне Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\test1.ru\www\func.php on line 8, как я понимаю инжект возможен, но когда я пытаюсь заюзать UNION то не чё не получается: http://test1.ru/page.php?p=UNION+SELECT+*+FROM+page
    В самом движке функция запроса имеет вид:

    function page() {
    $p=$_GET['p'];
    $res=mysql_query("SELECT text FROM page WHERE param='$p' ");
    $otv=mysql_fetch_array($res);
    $pg=$otv['text'];
    echo $pg;
    Эта функция ищет параметр $P в базе и выводит сопастовимый ему text т.е. саму страницу.
    В оперирует скрипт в базе с полями param,text.
    Непойму как даже теперь затестить свой скрипт.
     
  2. fucker"ok

    fucker"ok Elder - Старейшина

    Joined:
    21 Nov 2004
    Messages:
    578
    Likes Received:
    274
    Reputations:
    91
    переменная $p стоит в одинарных ковычках. Твой инжектор http://test1.ru/page.php?p=UNION+SELECT+*+FROM+page выполняется, как обычный запрос по поиску.
    Наверно нужно что-то вроде
    http://test1.ru/page.php?p='+UNION+SELECT+*+FROM+page/*
     
    #2 fucker"ok, 20 Nov 2006
    Last edited: 20 Nov 2006
  3. mr666

    mr666 New Member

    Joined:
    19 Nov 2006
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    fucker"ok ты прав.
     
  4. mr666

    mr666 New Member

    Joined:
    19 Nov 2006
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    А как можно вывести всё таблицу, или получается скрипт выдаёт только столбец text