HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   Форум АНТИЧАТ > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

SQL инъекция в MySQL
  #1  
Старый 18.12.2005, 12:26
gadjet
Познающий
Регистрация: 17.12.2005
Сообщений: 78
Провел на форуме:
464418

Репутация: 23
Question 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'

То беж у меня нет прав.
Что мне делать в этом случае для продолжение атаки на сервер?
Как я понял, в таком случае надо перебирать названия таблиц, но как? и к чему это приведет?

Пожалуйста, посоветуйте, что делать в данном случае?
 
Ответить с цитированием

  #2  
Старый 18.12.2005, 16:20
virgoz
Участник форума
Регистрация: 16.09.2004
Сообщений: 193
Провел на форуме:
621131

Репутация: 47
По умолчанию

Правильно, перебирай...
Потом, когда таблицу подберешь, можешь подбирать столбцы
Обычно ищут таблицы юзеров, или конфиг-таблицы...
 
Ответить с цитированием

  #3  
Старый 18.12.2005, 16:28
gadjet
Познающий
Регистрация: 17.12.2005
Сообщений: 78
Провел на форуме:
464418

Репутация: 23
По умолчанию

А какие имена таблиц нужно подбирать, и как на это должен реагировать сайт?
 
Ответить с цитированием

  #4  
Старый 18.12.2005, 17:06
virgoz
Участник форума
Регистрация: 16.09.2004
Сообщений: 193
Провел на форуме:
621131

Репутация: 47
По умолчанию

Попробуй users,admin,condig,user,admins и т.д. Все зависит от сайта, везде по разному... Если таблицы нет - вылетит ошибка, а есил есть, ошибок не будет. Потом столбцы подбирай. Удобнее это делать, если знаешь что выводится. Для этого вместо null ставь чистла. Например: http://www.somesite.ru/shop/?nd=99999 UNION SELECT 1,2,3,4,5,6 FROM mysql.user/* И те числа, которые ты увидишь при подобранной таблице и надо заменять на столбцы
Короче пробуй
 
Ответить с цитированием

  #5  
Старый 18.12.2005, 17:53
gadjet
Познающий
Регистрация: 17.12.2005
Сообщений: 78
Провел на форуме:
464418

Репутация: 23
По умолчанию

Цитата:
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/*
 
Ответить с цитированием

  #6  
Старый 18.12.2005, 18:26
virgoz
Участник форума
Регистрация: 16.09.2004
Сообщений: 193
Провел на форуме:
621131

Репутация: 47
По умолчанию

Цитата:
1044Access denied for user: 'wmex@localhost' to database 'mysql'
По-моему, у меня нет прав на select. Возможно ли продолжать взлом после этого?
Это значит у тебя нет прав на просмотр базы mysql. Что является обычным случаем. Редко случается, когда они есть. Только при плохо-настроенном конфиге.
Но в твоем случае, всем бы получилось, если бы был вывод результата. Тоесть если-бы были видны цифры 123456. Раз их нет, то и нъекции нормальной нет. Можно только найти таблицу, подобрать столбцы, и потом пробовать методом перебора. Подробнее можешь спросить у ZaCo
Так что ищи другую дыру
 
Ответить с цитированием

  #7  
Старый 20.12.2005, 18:39
gadjet
Познающий
Регистрация: 17.12.2005
Сообщений: 78
Провел на форуме:
464418

Репутация: 23
По умолчанию

А вот такая еще проблема: как атаковать сайт если инъекция выполняется в поле order by? UNION не попрет, пишет: Wrong usage of UNION and ORDER BY
 
Ответить с цитированием

  #8  
Старый 20.12.2005, 20:11
Xalegi
Участник форума
Регистрация: 24.11.2004
Сообщений: 126
Провел на форуме:
137630

Репутация: 11
По умолчанию

функция ОРДЕР бай означает СОРТИРОВКУ
а по поводу то что нужно цифры.. (select 1,2,3,4,5 from ....)мммм... бред... т.е. обращаешься К СТОЛБЦАМ С ИМЕНАМИ 1,2,3,4,5 хмм.. не кажется что это заведомо не верно? =)

структура ORDER BY:

Select * from xxx
[where xxx]
ORDER BY <столбец> [desc - эт по возрастанию кажись]\(Avp -вот тут не помню как по убыванию точно)

ну вот и смотрим =)
 
Ответить с цитированием

  #9  
Старый 20.12.2005, 20:29
ZaCo
Banned
Регистрация: 20.06.2005
Сообщений: 880
Провел на форуме:
4610226

Репутация: 1332


По умолчанию

2Xalegi
1)order by - оператор
2)... unoon select 1,2,3,4,5 from xxx - по твоему это не правильно? почитай про синтаксис union
2gadjet в предложении order by возможно выполнить инекцию с оператором union.
---
на все свои вопросы можно получить более полный ответ на mysql.ru
 
Ответить с цитированием

  #10  
Старый 20.12.2005, 21:26
Xalegi
Участник форума
Регистрация: 24.11.2004
Сообщений: 126
Провел на форуме:
137630

Репутация: 11
По умолчанию

хммм... Union... вообще кажись ОБЪЕДИНЕНИЕ без повторяющихся строк =) или мну ошибается?

по поводу ордер бай.. мде... ступил.. эт действительно оператор =)
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.