Руководства, Инструкции, Бланки

инструкция Sqlmap img-1

инструкция Sqlmap

Категория: Инструкции

Описание

Kali Linux: Взлом сайта при использовании SQLMAP - theCurrent - говорим про Linux, Joomla, Android, взлом и безопасность

Kali Linux: Взлом сайта при использовании SQLMAP

Sqlmap – это инструмент с открытым исходным кодом для тестирования на проникновение, который автоматизирует процесс обнаружения и эксплуатации SQL-инъекций и захвата серверных баз данных. Инструмент поставляется с мощным поисковым ядром, многими нишевыми особенностями для пользователя, осуществляющего проникновение, широким диапазоном переключателей, начиная от получения полезных сведений о базе данных и получения информации от базы данных, до доступа к основной файловой системе и выполнению команд над операционной системой посредством внеполосного подключения.

1. Обнаружение баз данных

На данном этапе sqlmap будет использоваться для обнаружения баз данных, привязанных к цели.

Cинтаксис – sqlmap –u target url –dbs

Пример – sqlmap –u www.example.net/product.php?id=9 –dbs

На этом изображении показано, что после выполнения этой команды мы получили некоторую полезную информация, такую как ‘GET parameter id might be injectable (Possible dbms. MySQL).’ (Есть возможность получить GET-параметры id, MySQL является вероятной базой данных). То есть отображается способ для взлома сайта. Как специалисты по безопасности мы можем сказать, что присутствует уязвимость и плохой человек может использовать это. Теперь перейдем к следующему процессу, просто написав 'y' и нажав enter (ввод).

2. Напишите 'n' и нажмите enter. Если все в порядке, то вы перейдете к следующему шагу, просто напечатав 'y' и нажав enter. Я не буду объяснять, почему мы пишем где-то 'y', а где-то 'n'. Просто прочитайте, что спрашивается, и делаете то, что вы хотите сделать, подтверждая это ответом.

3. Напишите 'y' и нажмите enter.

4. Теперь нам известно о двух доступных базах данных нашей цели: ‘information_schema’ и ‘muand’. Если желаете, можно записать названия в блокнот или где-либо ещё для использования в дальнейшем.

5. Поиск таблиц в базе данных

Теперь пришло время выяснить, какие таблицы присутствует в определенной базе данных. Предположим, что нас интересует база данных 'muand'. В общем случае следует провести эксперимент с обеими. Вы получите большое количество информации о вашей цели. Сейчас мы будем работать лишь с muand.

Синтаксис – sqlmap –u target url –D target database – tables

Пример – sqlmap –u www.example.net/product.php?id=9 –D muand –tables

6. Идет поиск таблиц……

7. Обнаружено 19 таблиц в нашей целевой базе данных. Сейчас вы должны использовать ваш острый ум и определить, какие таблицы вам следует выбрать, чтобы заполучить ID и пароль. Здесь мы выбираем admin, потому что, складывается ощущение того, что там присутствует нужная нам информация.

8. Получение столбцов таблицы

У нас имеется список таблиц. Теперь заполучим столбцы таблицы admin.

Синтаксис - sqlmap –u target url –D target database –T target table –columns

Пример - sqlmap –u www.example.net/product.php?id=9 –D muand –T admin –columns

9. Идет поиск столбцов……

10. Обнаружено 3 столбца в нашей целевой таблице 'admin'.

11. Получение данных из таблицы

Теперь самая интересная часть – извлечение данных из таблицы. Прежде всего запускаем команду для username.

Синтаксис – sqlmap –u target url –D target database –T target table –C target column –dump

Пример - sqlmap –u www.example.net/product.php?id=9 –D muand –T admin –C username –dump

12. Мы получили имя пользователя – admin

13. Ещё раз выводим столбец password, чтобы проверить, что есть в этом столбце, поэтому используйте ту же команду, которую использовали для столбца 'username'

Синтаксис – sqlmap –u target url –D target database –T target table –C target column –dump

Пример - sqlmap –u www.example.net/product.php?id=9 –D muand –T admin –C password --dump

14. При выводе столбца, мы заполучили пароль в виде хеша. Запишите его на будущее.

15. Мы заполучили хешированный пароль, поэтому на этом этапе sqlmap предлагает вам в качестве опции взломать этот хеш, используя атаку перебора по словарю. Как нам всем известно, атака с перебором занимает очень много времени, но просто для того, чтобы показать, как это работает, я пишу 'y' и нажимаю enter для запуска следующего процесса. Предлагаются три опции. Можно просто использовать словарь по умолчанию (default dictionary), написав '1' и нажав enter. Ещё раз напишите 'y' и нажмите enter. Вы можете видеть попытки программы взломать хеш – они подсвечены зеленым шрифтом.

16. Спустя некоторое время я понимаю, что взлом этого хеша при помощи словаря был очень плохой идеей, поэтому я просто остановил процесс, нажав ctrl + c, в результате чего появилось сообщение no clear password found (пароль не обнаружен), и отобразился невзломанный хеш.

17. Попробуем взломать этот хеш, заручившись внешней поддержкой. Для этого откройте сайт www.md5decrypter.co.uk в вашем браузере и затем введите ваш хеш в поле MD5 Hashes field, введите проверочное слово и нажмите на Decrypt Hashes (расшифровать хеш).

18. По прошествии некоторого времени, мы взломали этот хеш, и как вы можете видеть, теперь у нас есть оригинальный пароль.

19. Теперь найдем страничку администратора нашего целевого url, используя kali linux или сторонние сайты, которые могут легко сделать это для вас. Подробнее на изображении…

20. Мы ищем страницу администратора целевого сайта, используя другой веб-сайт, и в конце концов находим её. Выделенная зеленым цветом страница и есть искомая страница администратора.

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

(i) Страница администратора целевого сайта

(ii) Имя пользователя администратора

(iii) Пароль администратора

Теперь нам нужно лишь войти на сайт, но мы упустили из виду один момент – наш IP-адрес. Да, нам нужно скрыть наш IP-адрес, чтобы наш противник не смог выследить нас. Используйте программу для скрытия вашего IP-адреса и проверьте ваши навыки работы с SQLMAP. Как вы можете видеть на этом изображении, мы успешно вошли в систему. Ощущая себя дьяволом, не совершайте ничего дьявольского. Будьте ангелом и сообщите собственнику сайта, что его система безопасности уязвима и на этом все. Не хвастайтесь вашими способностями, уважайте себя.

Другие статьи

Sqlmap - Инструменты Kali Linux

Описание sqlmap

sqlmap — это инструмент с открытым исходным кодом для тестирования на проникновение, который автоматизирует процесс выявления и эксплуатирования уязвимостей SQL-инъекций и захват серверов баз данных. Он поставляется с мощным движком выявления и многими нишевыми функциями для конечного тестера на проникновение и широким набором переключателей начиная от отпечатков баз данных по данным, полученным от этой БД, до доступа к файловой системе и выполнения команда на операционной системе посредством внеполосных подключений.

  • Полная поддержка для таких систем управления базами данных как MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB и HSQLDB.
  • Полная поддержка шести техник SQL-инхекций: слепая логическая (boolean-based blind), слепая, основанная на времени (time-based blind), основанная на ошибке (error-based), основанная на запросе UNION (UNION query-based), многоярусные запросы (stacked queries) и внеполосная (out-of-band).
  • Поддержка прямого подключения к базе данных без прохода через SQL инъекцию, посредством введения учётных данных СУБД, IP адреса, порта и имени БД.
  • Поддержка перечисления пользователей, хешей паролей, привилегий, ролей, БД, таблиц и колонок.
  • Автоматическое распознавание форматов хешей паролей и предложение их взлома с использованием атаки по словарю.
  • Поддержка сдампливания записей таблиц БД, диапазона записей или указанных колонок по пользовательскому выбору.
  • Пользователь также может выбрать сдампливать только диапазон символов из каждой записи колонки.
  • Поддержка поиска указанных имён БД, указанных таблиц по всем БД или указанным колонкам по всем таблицам БД. Это полезно, например, для идентификации таблиц, содержащих пользовательские учётные данные приложений, где колонки с соответствующими именами колонок содержат такие строки как имя и пароль.
  • Поддержка загрузки и выгрузки любого файла из файловой системы с сервера БД, когда ПО БД MySQL, PostgreSQL или Microsoft SQL Server.
  • Поддержка выполнения произвольных команд на ОС сервера БД и получение их стандартного вывода когда ПО MySQL, PostgreSQL или Microsoft SQL Server.
  • Поддержка установления внедиапазонного TCP подключения между атакующей машиной и лежащей в основе сервера базы данных операционной системой. Этот канал по выбору пользователя может быть интерактивным приглашением командной строки, сессией Meterpreter или сессией графического пользовательского интерфейса (VNC).
  • Поддержка повышения пользовательских привилегий процесса базы данных через команду Metasploit 'а - Meterpreter getsystem.

Автор: Bernardo Damele Assumpcao Guimaraes, Miroslav Stampar

Справка по sqlmap
Руководство по sqlmap

Страница man присутствует, но является устаревшей и не дополняет ничего нового к справке.

Примеры запуска sqlmap

Перечислить базы данных (--dbs) для сайта http://www.sqldummywebsite.name/rubrika.php?id=31 (-u http://www.sqldummywebsite.name/rubrika.php?id=31)

Построить список таблиц (--tables) для базы данных laminat (-D laminat) для сайта http://www.sqldummywebsite.name/rubrika.php?id=31 (-u http://www.sqldummywebsite.name/rubrika.php?id=31)

Показать колонки (--columns) для таблицы admin (-T admin) для базы данных laminat (-D laminat) для сайта http://www.sqldummywebsite.name/rubrika.php?id=31 (-u http://www.sqldummywebsite.name/rubrika.php?id=31)

Вывести дамп (--dump) для таблицы admin (-T admin) для базы данных laminat (-D laminat) для сайта http://www.sqldummywebsite.name/rubrika.php?id=31 (-u http://www.sqldummywebsite.name/rubrika.php?id=31)

Вывести содержимое (--dump) колонки login (-C login) для таблицы admin (-T admin) для базы данных laminat (-D laminat) для сайта http://www.sqldummywebsite.name/rubrika.php?id=31 (-u http://www.sqldummywebsite.name/rubrika.php?id=31)

Установка sqlmap

Программа предустановлена в Kali Linux.

Установка sqlmap в Linux
Установка sqlmap в Windows

Для запуска sqlmap под Windows, кроме sqlmap, нужен Python.

За sqlmap заходим на официальный сайт. или скачиваем по прямой ссылке zip-файл.

За Python'ом заходим на его официальный сайт в раздел загрузок. Там представлены две ветки 3.* и 2.*. В данном случае (для запуска sqlmap) нам нужна версия 2.*. На момент скачивания доступна Python 2.7.11.

Установка скаченного файла элементарна. Только запомните, в какой каталог вы его установили.

Так, теперь переходим в каталог с установленным Python. У меня это каталог C:\Python27\ (думаю, у вас также, если вы не меняли дефолтные значения).

Запустите командную строку (Win+x и в открывшемся окне выберите «Командная строка»). Теперь хватаете файл python.exe (который лежит в каталоге C:\Python27\) и перетаскиваете его в окно командной строки. В командной строке должен появится полный путь до файла. Дописываете к нему через пробел -v

И нажимаете Enter. Если видите много разной информации, в том числе и о версии, значит всё в порядке. Нажмите Ctrl+c, чтобы выйти.

Помните наш скаченный архив с sqlmap? Распакуйте его. Теперь в командную строку перетаскиваете файл python.exe, ставите пробел, перетаскиваете в эту же командную строку файл sqlmap.py (из архива с sqlmap) ставите ещё один пробел и пишите -h. У меня получилось так

Если появилась справка по sqlmap, значит всё работает как надо! Можно приступать к анализу сайтов.

Как использовать sqlmap на Windows

В командной строке на Windows sqlmap нужно запускать следующим образом:

Например, я хочу проверить сайт http://test4.hackware.biz/bad.php?t=2796

В этом случае полная команда будет

Скриншоты sqlmap

Инструкции по sqlmap

Пример эксплуатации инъекции с помощью SQLMap

Пример эксплуатации инъекции с помощью SQLMap

Итак, для начала нам понадобится сама ОС Back Track 5, ее мы можем легко скачать с офф сайта.
Качаем ISO файл и устанавливаем себе на виртуальную машину, ну или как вторую ось, кому как нравится.

Приступаем к поиску сайтов, которые вы хотите взломать или проверить на уязвимости.
Делать это можно несколькими способами: вручную и автоматом.

1. Вручную: для начала вам желательно найти дедик той страны, сайт которой вы хотите поиметь. Расскажу почему, потому что вы будете искать через поисковик, а они будут выдавать результаты по вашему местоположению, по-этому лучше с деда. Что же писать в строке поиска? Да что угодно. online shop, school, любые слова по выбранной тематике.

Дорки - это запрос к поисковику вида product_id= index.php?id= и т.д. после которого поисковик выдаст вам сайты в адресе которых встречается именно этот набор символов.
Для большинства поисковиков в таком виде можете дорки в адресную строку и вставлять, но не в google. там перед дорком нужно вставлять inurl. т.е. inurl: product_id= inurl:index.php?id=
Если вы хотите мало того, что отобрать по доркам, так еще и по набору слов, встречающихся на сайте, то пишите так inurl:"product_id=(или что-то другое)" & intext:"we accept the following credit cards(или что-то свое)"

Это популярные запросы к Гуглу.
Но давайте рассмотрим режим Автомата ибо упростить задачу

2. автоматом: тут вы можете использовать прогу DorkParser В ней не надо ни дедики, ни чего другого. Выбрали нужные вам дорки, потом страны, нажали старт и все, сидите ждете. Сначала прога просканирует все подходящие, а потом отберет только с уязвимостями.
P.s Чтобы заменить дорки в проги на свои дорки просто правим dork.txt Туда вставляем свои и юзаем
Скрин.
http://s017.radikal.ru/i414/1111/83/8986326aa2fb.jpg

Вот мы набрали базу уязвимых сайтов, теперь возвращаемся к virtualbox и нашей новой оси.

Итак, скачали ось, запустили на virtualbox.

Теперь нам понадобится утилита под названием SQLMap, ее мы находим тут: "Applications -> BackTrack -> Exploitations Tools -> Web Exploitations Tools -> SqlMap"

Выбираем. далее вводим такую строчку :

--dbs. при помощи этой команды мы получим все базы данных сайта. Нажимаем Enter и ждем пока сканер найдет все базы данных

Терерь нам надо найти строки! Если мы хотим найти строки всех баз, то пишем

если только одной, то пишем:

--tables. команда для поиска строк с выбранной базе данных. Опять Enter и опять ждем, пока просканится наша бд и найдутся все строки.

Теперь пора просканировать колонки.
Делается это так:

если нужна определенная БД и определенную строку, то так:

--columns. команда для поиска колонов из выбранной строки и базы данных

А теперь нам надо получить содержимое этих колонок. Итак пишем:

--dum команда для получения данных из колонок и строк определенной бд

--dum-all этой командой можно сделать полный бэкап бд
И так поступаем с каждой базой, строкой и колонкой, которые нас интересуют.

Статья исключительно для ознакомления.
Всем спасибо.

Ihack3r for hpc.name.

__________________
ALL-HACKING.IN = какая дрянь.

Sqlmap - средство автоматизации SQLi-атак и инструмент для пентестов

Sqlmap - средство автоматизации SQLi-атак и инструмент для пентестов

Sqlmap — свободно распространяемое программное обеспечение открытым исходным кодом (написан на pithon). Данная программа предназначена для автоматизированного сканирования уязвимостей SQL (и, к слову, их дальнейшего использования). Таким образом Sqlmap является средством двойного назначения - тестирование собственных ресурсов и взлом чужих. За последнее карают.

Актуальность SQLi пентестов

Ваш веб-ресурс может быть подвержен множеству уязвимостей. но уязвимость к SQLi-атаками, пусть и не самая распространенная, но именно путем ее эксплуатации совершено больше всего успешных атак. Со времен появления SQL-инъекций с их помощью было совершено порядка 83% успешных краж конфиденциальной информации, согласно отчетам Hacker Intelligence Initiative. Кстати, этот тип атак - основной инструмент использовавшийся небезызвестной хакерской группой LulzSec .

Использование Sqlmap для взлома и УК РФ

За использование данного ПО не для тестирования собственных ресурсов хакерам грозит:

  • по статье 272 УК РФ "Неправомерный доступ к компьютерной информации " до 200т. руб. штрафа и до 3 лет лишения свободы (до 300т. руб. и до 5 лет лишения, если в сговоре или с использованием служебного положения)
  • по статье Статья 273 УК РФ "Создание, использование и распространение вредоносных программ для ЭВМ " до 200т. руб. штрафа и до 7 лет лишения свободы
  • по статье 274 УК РФ "Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети " лишением права занимать определенные должности или заниматься определенной деятельностью на срок до пяти лет (в случае тяжких последствий до 4 лет лишения свободы)
Демонстрация работы Sqlmap Основные возможности (взято с хабра )
  • Поддержка MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase и SAP MaxDB.
  • Поддержка следующих типов инъекций: boolean-based blind, time-based blind, error-based, UNION query и stacked queries.
  • Возможность подключиться к БД напрямую, используя логин, пароль, ip, порт и имя базы.
  • Работа с конкретным url, со списком целей из Burp proxy или WebScarab proxy, с текстовым файлом, содержащим HTTP запрос или же прямо из поисковой системы Google.
  • Тестирование всех параметров, передаваемых методами GET и POST, через cookie, в заголовках User-agent и Referer и попытка их эксплуатирования. Так же вы можете задать какой-то один определенный параметр(ы) для проверки.
  • Опциональная многопоточность, которая позволяет сильно ускорить проведение слепых инъекций, или же наоборот, ограничить количество запросов на определенный промежуток времени. Множество вариантов оптимизации для ускорения.
  • Возможность передавать cookie, что позволяет проходить авторизацию на тестируемом приложении или же тестировать cookie на sql уязвимости.
  • Принимать и хранить в сессии cookie, которые были установлены самим приложением, а так же пытаться их эксплуатировать. При желании можно игнорировать заголовок set-cookie.
  • Аутентификация по протоколу HTTP basic, Digest, NTLM или с помощью сертификата.
  • Работа через прокси.
  • Возможность задать произвольные заголовки User-agent и Referer, или же выбрать User-agent случайно из текстового файла.
  • Возможность изменять уровень информативности выходных сообщений (всего 7 уровней).
  • Парсинг форм, находящихся по целевому адресу, с целью повторной отправки запроса на принимающий скрипт формы (action) и тестирование параметров формы.
  • Гибкость в настройки и использовании.
  • Расчетное время для каждого запроса, который обновляется в реальном времени и позволяет пентестеру знать, сколько времени потребуется для получения ответа.
  • Автоматически сохраняет сессии (запросы и ответы, даже частично полученные) в текстовом виде и в реальном времени. Это позволяет продолжить инъекцию или другое действие сразу же, после парсинга сессии и не повторять запросы на атакуемое приложение.
  • Возможность читать все параметры из текстового файла, а не вводить их в ручную каждый раз.
  • Поддержка репликации БД сервера на локальную БД sqlite3.
  • Обновление до актуальной версии из репозитория.
  • Парсинг ответов с целью найти и показать сообщения об ошибках БД.
  • Интеграция с другими инструментами для пентеста — Metasploit и w3af.
Возможности fingerprint (получения полезной информации о приложении и сервере):
  • Определение версии и наименования БД, а также операционной системы, на которой запущено приложение. Анализ основывается на сообщениях об ошибках, баннере сервиса, и способом сравнения. Вы можете задать имя используемой БД в ручную, если вы его знаете.
  • Программное обеспечение веб сервера и приложения.
  • Возможность получить баннер, получить информацию о текущей БД и ее пользователе, а также о привилегиях текущего пользователя.
  • Список пользователей БД, их привилегии, хэши паролей.
  • Автоматическое распознавание формата хэшей паролей и возможность прогнать их по словарю, который прилагается вместе с sqlmap.
  • Брут имен таблиц и столбцов. Это бывает полезным, когда у текущего пользователя нет доступа к системным таблицам или таких таблиц вообще нет.
  • Возможность сделать дамп таблиц целиком, определенных колонок. Возможно сделать дамп только определенный диапазон символов для каждого столбца.
  • Дамп всех БД целиком, с возможностью задать исключение.
  • Поиск конкретных таблиц или колонок во всех таблицах и баз данных. Это полезно для поиска таблиц с пользователями или паролями.
  • Возможность вызвать интерактивный sql клиент, который позволит вам выполнять произвольные запросы к БД вручную. Sqlmap сам побеспокоится о том, чтобы упаковать ваш запрос и выполнить его через найденную уязвимость.
Возможности расширения контроля над системой:
  • Возможность скачивать файлы с сервера, при условии, что в качестве бэкенда используется MySQL, PostgeSQL или Microsoft SQL Server. Разумеется, для этих операций пользователь БД должен иметь особые привилегии и права на запись/чтение нужного файла.
  • Выполнение произвольных команд на системе с получением их вывода, при условии, что используются MySQL, PostgeSQL или Microsoft SQL Server.
  • Создание tcp подключения к серверу с помощью интерактивной командной строки или VNC.
  • Доступ к реестру windows (Чтение, вставка, удаление).
Как работать с Sqlmap