Категория: Инструкции
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 — это инструмент с открытым исходным кодом для тестирования на проникновение, который автоматизирует процесс выявления и эксплуатирования уязвимостей SQL-инъекций и захват серверов баз данных. Он поставляется с мощным движком выявления и многими нишевыми функциями для конечного тестера на проникновение и широким набором переключателей начиная от отпечатков баз данных по данным, полученным от этой БД, до доступа к файловой системе и выполнения команда на операционной системе посредством внеполосных подключений.
Автор: Bernardo Damele Assumpcao Guimaraes, Miroslav Stampar
Справка по 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, нужен 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
Итак, для начала нам понадобится сама ОС 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 — свободно распространяемое программное обеспечение открытым исходным кодом (написан на pithon). Данная программа предназначена для автоматизированного сканирования уязвимостей SQL (и, к слову, их дальнейшего использования). Таким образом Sqlmap является средством двойного назначения - тестирование собственных ресурсов и взлом чужих. За последнее карают.
Актуальность SQLi пентестовВаш веб-ресурс может быть подвержен множеству уязвимостей. но уязвимость к SQLi-атаками, пусть и не самая распространенная, но именно путем ее эксплуатации совершено больше всего успешных атак. Со времен появления SQL-инъекций с их помощью было совершено порядка 83% успешных краж конфиденциальной информации, согласно отчетам Hacker Intelligence Initiative. Кстати, этот тип атак - основной инструмент использовавшийся небезызвестной хакерской группой LulzSec .
Использование Sqlmap для взлома и УК РФЗа использование данного ПО не для тестирования собственных ресурсов хакерам грозит: