Sql-injection в поиске

Discussion in 'Болталка' started by virgoz, 4 Nov 2004.

  1. virgoz

    virgoz Elder - Старейшина

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Вроде, как Sql-injection, но синтаксиси неправильный:
    Поле поиска не фильтрует одинарные кавычки. Вот какая происходит ошибка, если в поиске ввести test'  : </span><table border="0" align="center" width="95%" cellpadding="3" cellspacing="1"><tr><td>Исходный код </td></tr><tr><td id="CODE">Error: MySQL query 'SELECT news_id, news_title, news_text FROM news WHERE LOWER(news_text) LIKE '%test'%' ORDER BY news_id, news_title, news_text' failed.
    >1064: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '%' ORDER BY news_id, news_title, news_text' at line 1[/QUOTE]<span id='postcolor'>
    Понятно, что мешает препоследняя кавычка! Ну и конечно, что после слова test идут другие запросы. Какой должен быть правильный синтаксис, например для удаления таблицы?
    </span><table border="0" align="center" width="95%" cellpadding="3" cellspacing="1"><tr><td>Исходный код </td></tr><tr><td id="CODE">'; DROP TABLE news[/QUOTE]<span id='postcolor'> - пишет синтаксическую ошибку.
    Можно ли как нибудь остановить обработку запроса после '; DROP TABLE news?
     
  2. Pengo

    Pengo New Member

    Joined:
    13 Sep 2004
    Messages:
    34
    Likes Received:
    0
    Reputations:
    0
    дай ссылку на сайт!
     
  3. virgoz

    virgoz Elder - Старейшина

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Pengo, объясни, потом дам.