Про слив баз данных с сайтов

Про слив баз данных с сайтов



Немного теории

В большинстве случаев у веб-сайтов "сливают" бд (базу данных) при помощи внедрения SQL кода (SQL Injection).


Для внедрения кода хакеры делают поиск уязвимых мест сайта, где можно выполнить SQL Injection, и в последствии получить определённые данные с базы данных веб-сайта.


Принцип работы такой аттаки достаточно прост.


Например:


Мы на сайте example.com искали уязвимое место, и нашли уязвимость, через которую можно выполнить SQL код. Допустим это get запрос xttp://example.com/?id=1 . Выполнив этот запрос, мы получим на веб-сайте контент под id 1, а в коде это выглядит так: (код PHP)


....


$id = $_REQUEST['id'];


$show_content = mysql_query("SELECT * FROM contents WHERE id_content =".$id);


....

Получается нам нужно выполнить запрос xttp://example.com/?id=-1 UNION SELECT group_concat(username, 0x3a, password) FROM users , и в итоге мы получим SQL запрос, который не выдаст никаких новостей (т.к. новостей с индексом -1 несуществует), но зато мы получим информацию из таблицы users.


Учитывая данный пример, можно понять что и защититься от него просто. Иногда защита от UNION - это просто дополнение к запросу для блокировки вывода информации, но тогда в конце нашего UNION запроса мы можем использовать символ комментария в зависимости от СУБД.


Иногда мы хотим внести в базу данных свои изменения. Для этого мы можем отправить 2 SQL запроса, просто разделив их символом ';'. Например дописать после id записи следующую строку ;INSERT INTO users (username, password) VALUES ('Nummer', 'exploit.in');.


Программы для автоматического взлома сайтов

Чаще всего "хакеры" используют программы, для автоматического слива веб-сайтов. Самая популярная программа - это sqlmap. Он достаточно прост в использовании, а в интернете по нему полно мануалов и видео. Есть программы по проще, например Havij. В отличии от sqlmap эта программа только под ОС Windows, и имеет поменьше возможностей и визуальный интерфейс.


Так же есть большое количество "дамперов", как локальных, так и веб.


Но тут возникает одна проблема, программы у нас есть, но как нам найти уязвимость? В примере выше описан самый простой вариант, а на деле всё намного труднее.


Поиск уязвимостей

Чаще всего люди дампают сайты по стране и тематике, а для этого они используют "дорки".


Дорки - это наиболее вероятные уязвимые места в веб сайтах. Их выкладывают в паблик, продают. Как их делать инормации в паблике предостаточно. Дорки выглядят примерно так:


?id=22


?page=25


?q=text


....


то есть это простые get запросы, в которых может быть уязвимость, а поиск таких уязвимых сайтов выполняют через поисковые системы (например google). Программ для автоматического поиска достаточно, т.к. руками делать это всё устанешь




Но теперь возникает вопрос, а как же взломать конкретный сайт? Тут уже всё зависит от фантазии и опыта того, кто будет искать уязвимость в данном веб-сайте. Человек может так же выполнить поиск по данному сайту используя "дорки" (опять же через поисковые системы), и пройтись по якобы уязвимым ссылкам, либо может выполнять поиск уязвимости руками, т.к. она бывает не в GET запросе, а в POST. Например регистрация пользователя, либо авторизация. Для этого придётся перебрать множество потенциально уязвимых мест на сайте, а это множество get запросов, либо post запросы форм.


По факту поиск уязвимостей на конкретных сайтах может быть неудачным, т.к. в большинстве популярных движков для веб сайтов почти все уязвимости профиксили.


Что нужно знать для слива сайтов

Для слива веб сайтов нужно понимать структуру базы данных, язык SQL. Желательно ещё и PHP.


Иметь упорство и терпение, ибо в первый раз может и не получиться, и нужно искать уязвимости дальше.

Report Page