![]() |
SQL инъекция в MySQL
Я нашел сайт, подверженный SQL инъекции(MySQL). Подсчитал количество полей, которое выдает скрипт. Получилось:
http://www.somesite.ru/shop/?nd=99999 UNION SELECT null,null,null,null,null,null/* Я решил для испытать права пользователя под которым подключается скрипт к БД, выстроив запрос к базе mysql: http://www.somesite.ru/shop/?nd=99999 UNION SELECT null,null,null,null,null,null FROM mysql.user/* На это сайт ответил: 1044Access denied for user: 'wmex@localhost' to database 'mysql' :confused: То беж у меня нет прав. Что мне делать в этом случае для продолжение атаки на сервер? :confused: Как я понял, в таком случае надо перебирать названия таблиц, но как? и к чему это приведет? Пожалуйста, посоветуйте, что делать в данном случае? |
Правильно, перебирай...
Потом, когда таблицу подберешь, можешь подбирать столбцы :) Обычно ищут таблицы юзеров, или конфиг-таблицы... |
А какие имена таблиц нужно подбирать, и как на это должен реагировать сайт?
|
Попробуй users,admin,condig,user,admins и т.д. Все зависит от сайта, везде по разному... Если таблицы нет - вылетит ошибка, а есил есть, ошибок не будет. Потом столбцы подбирай. Удобнее это делать, если знаешь что выводится. Для этого вместо null ставь чистла. Например: http://www.somesite.ru/shop/?nd=99999 UNION SELECT 1,2,3,4,5,6 FROM mysql.user/* И те числа, которые ты увидишь при подобранной таблице и надо заменять на столбцы :)
Короче пробуй ;) |
Цитата:
1044Access denied for user: 'wmex@localhost' to database 'mysql' По-моему, у меня нет прав на select. Возможно ли продолжать взлом после этого? Посотрите, поймете: http://www.wmtaganrog.ru/shop/?nd=99...ll,null,null/* |
Цитата:
Но в твоем случае, всем бы получилось, если бы был вывод результата. Тоесть если-бы были видны цифры 123456. Раз их нет, то и нъекции нормальной нет. Можно только найти таблицу, подобрать столбцы, и потом пробовать методом перебора. Подробнее можешь спросить у ZaCo ;) Так что ищи другую дыру :) |
А вот такая еще проблема: как атаковать сайт если инъекция выполняется в поле order by? UNION не попрет, пишет: Wrong usage of UNION and ORDER BY
|
функция ОРДЕР бай означает СОРТИРОВКУ
а по поводу то что нужно цифры.. (select 1,2,3,4,5 from ....)мммм... бред... т.е. обращаешься К СТОЛБЦАМ С ИМЕНАМИ 1,2,3,4,5 хмм.. не кажется что это заведомо не верно? =) структура ORDER BY: Select * from xxx [where xxx] ORDER BY <столбец> [desc - эт по возрастанию кажись]\(Avp -вот тут не помню как по убыванию точно) ну вот и смотрим =) |
2Xalegi
1)order by - оператор 2)... unoon select 1,2,3,4,5 from xxx - по твоему это не правильно? почитай про синтаксис union 2gadjet в предложении order by возможно выполнить инекцию с оператором union. --- на все свои вопросы можно получить более полный ответ на mysql.ru |
хммм... Union... вообще кажись ОБЪЕДИНЕНИЕ без повторяющихся строк =) или мну ошибается?
по поводу ордер бай.. мде... ступил.. эт действительно оператор =) |
| Время: 19:45 |