Как пользоваться Sqlmap kali linux

Обновлено: 21.11.2024

В этом руководстве мы узнаем, как установить sqlmap в Kali Linux.

Что такое sqlmap

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

Существует три способа установки sqlmap в Kali Linux. Мы можем использовать apt-get, apt и aptitude. В следующих разделах мы опишем каждый метод. Вы можете выбрать один из них.

Установка sqlmap с помощью apt-get

Обновите базу данных apt с помощью apt-get, используя следующую команду.

После обновления базы данных apt мы можем установить sqlmap с помощью apt-get, выполнив следующую команду:

Установить sqlmap с помощью apt

Обновите базу данных apt с помощью следующей команды.

После обновления базы данных apt мы можем установить sqlmap с помощью apt, выполнив следующую команду:

Установить sqlmap с помощью aptitude

Если вы хотите использовать этот метод, вам может потребоваться сначала установить aptitude, так как aptitude обычно не устанавливается по умолчанию в Kali Linux. Обновите базу данных apt с помощью aptitude с помощью следующей команды.

После обновления базы данных apt мы можем установить sqlmap с помощью aptitude, выполнив следующую команду:

Как удалить sqlmap в Kali Linux

Чтобы удалить только пакет sqlmap, мы можем использовать следующую команду:

Удалить sqlmap и его зависимости

Чтобы удалить sqlmap и его зависимости, которые больше не нужны Kali Linux, мы можем использовать следующую команду:

Удалить конфигурации и данные sqlmap

Чтобы удалить конфигурацию и данные sqlmap из Kali Linux, мы можем использовать следующую команду:

Удаление конфигурации, данных и всех зависимостей sqlmap

Мы можем использовать следующую команду для удаления конфигураций sqlmap, данных и всех их зависимостей, мы можем использовать следующую команду:

Ссылки

Обзор

В этом руководстве мы узнаем, как установить sqlmap с помощью различных инструментов управления пакетами, таких как apt, apt-get и aptitude.

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

Но, помимо простоты и возможностей, которые предлагает база данных, а также множества применений баз данных в мире информации и технологий, особенно при разработке веб-сайтов. Неустанно пентестеры и хакеры пытаются найти брешь в безопасности базы данных. Это подтверждается отчетом, выпущенным исследователями Positive Technologies, исследовательскими центрами информационной безопасности в Европе, во втором квартале 2017 года в топ-10 атак на веб-приложения преобладали межсайтовые скрипты 39,1% и SQL-инъекции 24,9%. По словам Positive Technologies, отчет за второй квартал не сильно отличается от отчета за первый квартал.

Это и интересно, и тревожно, потому что в базе данных есть много информации, такой как учетные записи (администратора и пользователя), сведения о финансовой информации (например, кредитные карты, банковские счета и т. д.) и т. д. Кроме того, для выполнения атак с помощью SQL-инъекций не всегда требуются экспертные навыки внедрения, в том смысле, что дети могут это сделать. Потому что существует множество бесплатных приложений, способных выполнять SQL-инъекции автоматически, например SQLMap. SQLMap — это приложение с открытым исходным кодом для тестирования на проникновение, которое направлено на автоматическое проведение атак SQL-инъекций в дыру в безопасности базы данных. Здесь я покажу вам, как сделать SQL-инъекцию с помощью SQLMap в Linux Kali. Никаких специальных возможностей не требуется, но они будут более полезными, если вы освоите язык сценариев или технологию баз данных SQL.

Это руководство рекомендуется тем, кто не знаком с внедрением SQL в Kali Linux, просто для развлечения или тем, кто хочет увидеть, как работает внедрение SQL. Не рекомендуется тем, кто уже является высококвалифицированным пентестером.

ВНЕДРЕНИЕ SQL С ИСПОЛЬЗОВАНИЕМ SQLMAP В KALI LINUX

Прежде чем мы приступим к атаке путем внедрения, мы, конечно же, должны убедиться, что сервер или цель имеет дыру в безопасности базы данных. Чтобы найти дыры в безопасности базы данных, мы можем использовать несколько методов.Среди них Google dorking используется в основном хакерами и тестировщиками на проникновение. К счастью, есть инструмент, который может делать это автоматически. Но сначала мы должны установить его инструмент. Инструмент называется SQLiv (сканер уязвимостей SQL-инъекций).

ШАГ 1: УСТАНОВИТЕ SQLiv на KALI LINUX

Введите приведенные ниже команды в свой терминал, чтобы установить SQLiv:

После установки SQLiv в Kali Linux он сохраняется по пути /usr/bin/sqliv. Который вы можете вызвать прямо из терминала, набрав «sqliv». Теперь давайте взглянем на возможности SQLIv.

ШАГ 2. ПОИСК УЯЗВИМОСТЕЙ ДЛЯ ВНЕДРЕНИЯ SQL

Мы будем использовать Google Dorking для сканирования и поиска дыр SQL-инъекций в целевых объектах. Давайте возьмем простой дорк и позволим SQLiv сканировать каждую цель и искать уязвимость электронной коммерции по следующему шаблону URL «item.php?id=». Чтобы найти другие шаблоны, просто введите в Google «список придурков Google».

По умолчанию SQLiv будет сканировать первую страницу в поисковой системе, а в Google 10 сайтов на страницу. Таким образом, здесь мы определяем аргумент -p 100 для обхода 10 страниц (100 сайтов). На основе приведенного выше дурака мы получили результат уязвимых URL-адресов, который выглядит следующим образом:

Мы обнаружили восемь из сотен просканированных URL-адресов, которые считаются уязвимыми для атаки путем внедрения кода SQL. Сохраните URL-адреса в текстовом редакторе для дальнейших действий.

ШАГ 3: ВНЕДРЕНИЕ SQL С ИСПОЛЬЗОВАНИЕМ SQLMAP

Как только мы получили хотя бы одну уязвимую цель для SQL-инъекций, затем мы выполняем атаку с использованием SQLMap. Я беру один из них в качестве образца здесь. Во-первых, нам нужно раскрыть имя базы данных, внутри базы данных есть таблицы и столбцы, которые содержат данные.

А. ПЕРЕЧИСЛЕНИЕ ИМЯ БАЗЫ ДАННЫХ:

-u / --url : Целевой URL
--dbs : Перечислить имя базы данных/ов

Итак, скомпилированная команда будет выглядеть так:

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

Мы получили имя базы данных «acfurniture».

Б. ПЕРЕЧИСЛЕНИЕ ТАБЛИЦ ИМЯ

Итак, скомпилированная команда выглядит так:

Результат должен выглядеть следующим образом:

С. ПЕРЕЧИСЛИТЬ СТОЛБЦЫ

Итак, скомпилированная команда выглядит так:

Вывод должен выглядеть следующим образом:

Таблица настроек состоит из 6 столбцов, и на самом деле это учетная запись. Давайте выгрузим эти данные.

Д. СБРОС ДАННЫХ

Итак, скомпилированная команда выглядит так:

Или вы также можете сбросить все данные внутри таблицы, используя команду:

Вывод должен выглядеть следующим образом:

Электронная почта: [email protected]
Имя пользователя: Красивый
Пароль: 9HPKO2NKrHbGmywzIzxUi

Хорошо, мы закончили загружать данные в базу данных с помощью SQL-инъекции. Наши следующие задачи: найти дверь или панель администратора, страницу входа администратора на целевых сайтах. Прежде чем сделать это, убедитесь, что этот пароль (9HPKO2NKrHbGmywzIzxUi) зашифрован или нет, если да, то нам нужно сначала его расшифровать. Это уже другая тема, взлом и расшифровка.

Даже здесь мы на самом деле не взламываем целевой сайт, по крайней мере, мы многое узнали о SQL-инъекциях с помощью SQLMap в Kali Linux и легко сбрасываем учетную запись учетных данных. Этот метод в основном используется кардером (хакером, который ищет учетную запись кредитной карты на сайтах электронной коммерции), который нацелен на финансовые, банковские сайты, магазины или сайты электронной коммерции, на которых хранится информация о кредитной карте их пользователя.

Sqlmap — это инструмент на основе Python, что означает, что он обычно работает в любой системе с Python. Тем не менее, нам нравится Linux и, в частности, Ubuntu, он просто упрощает работу. Python уже установлен в Ubuntu. Это тот же инструмент, который мы используем на нашем онлайн-сайте для тестирования SQL-инъекций.

Чтобы начать работу с sqlmap, необходимо загрузить инструмент, распаковать его и запустить команду с необходимыми параметрами. Поскольку среди вас могут быть пользователи Windows, я сначала начну с того, как установить и запустить Ubuntu. Легко начать работу с системой Ubuntu Linux, даже если мысль о Linux вызывает дрожь от страха. Кто знает, может быть, вам это даже понравится.

Установить SQLmap

Шаг 1. Получите операционную систему на базе Linux

Если вы собираетесь запускать SQLmap в Windows с помощью Python, убедитесь, что у вас установлен Python, и перейдите к следующему шагу. В противном случае запустите свою систему Linux.Либо установите виртуальную машину Linux (рекомендуется Ubuntu или Kali) в Windows (Virtualbox / VMware / Parallels), либо загрузите рабочий стол Linux.

Если вы используете Microsoft Windows в качестве основной операционной системы, удобно и просто запустить установку Ubuntu Linux (или Kali Linux) на виртуальной машине. Затем вы сможете поиграть с sqlmap, nmap, nikto и openvas, а также с сотней других мощных инструментов безопасности с открытым исходным кодом.

Шаг 2. Установка SQLmap

Python предустановлен в Ubuntu, поэтому все, что вам нужно сделать, это клонировать последний репозиторий из git и начать тестирование.

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

Если вы не видите что-то вроде приведенного выше вывода, убедитесь, что python работает, попробуйте python -V, чтобы проверить версию, и вы окажетесь в нужном месте. Теперь давайте двигаться дальше, это была самая простая часть.

Чтобы получить полный список доступных параметров, запустите python sqlmap.py -h .
Чтобы отобразить расширенную справку и доступные параметры, запустите python sqlmap.py -hh

Запуск SQLmap

В результатах мы видим различные методы, используемые для параметра.

Блокировка брандмауэром веб-приложений — WAF

Попробуйте использовать другой пользовательский агент, а не sqlmap по умолчанию с параметром --randomagent.

Получить таблицы базы данных

SQLmap можно использовать для тестирования и использования внедрения SQL-кода, например, для извлечения данных из баз данных, обновления таблиц и даже для запуска оболочек на удаленных хостах, если все утки в порядке.

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

Чтобы получить данные, мы просто добавляем параметр к предыдущей команде. Добавив --tables, мы можем попытаться получить все таблицы.

Дамп данных

Чтобы получить данные, мы просто расширяем нашу команду. Добавление -T пользователей сосредоточится на таблице пользователей, где мы могли бы получить некоторые учетные данные. Добавление --dump сообщит SQLmap, что необходимо получить все данные из таблицы пользователей, сначала будут перечислены столбцы, а затем данные будут выгружены из столбцов.

Советы по использованию SQLmap. Станьте настоящим ниндзя в тестировании SQL-инъекций

Подробный вывод

При тестировании на наличие SQL-инъекций часто необходимо вручную изучить запросы, чтобы определить проблемы с тестом или подтвердить или даже использовать обнаруженную инъекцию. Возможность увеличить уровень детализации выходных данных SQLmap поможет в этом тестировании.

Получили учетные данные базы данных?

Этот полезный совет позволяет напрямую подключаться к базе данных и создавать дамп таких данных, как пользователи, базы данных или таблицы. Хорошая вещь в этом заключается в том, что вам не нужно запоминать синтаксис SQL для базы данных или устанавливать клиент. SQLmap выполнит тяжелую работу, действуя как клиент базы данных для дампа данных.

Строки подключения к БД:

MySQL, Oracle, Microsoft SQL Server, PostgreSQL
SQLite, Microsoft Access

Выталкивание ракушек и многое другое

Внедрение кода SQL по-прежнему остается излюбленной целью злоумышленников.

Используйте наш сканер SQL-инъекций для проверки вводимых параметров в веб-URI.

Инструмент Sql Injection для обнаружения уязвимостей на вашем сайте

Давайте поговорим о тестировании на проникновение с использованием одного из инструментов KALI linux под названием SQLMAP.

Что такое SQLMAP?

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

Он предустановлен в операционной системе KALI LINUX.
Давайте посмотрим, как установить этот инструмент на ваш компьютер с Ubuntu и запустить тест, чтобы взломать базу данных любых веб-сайтов, уязвимых для SQL-инъекций.

Сначала загрузите SQLMAP на свой компьютер с помощью приведенной ниже команды.

Эта команда загрузит последний пакет sqlmap из github в ваш текущий каталог.

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

Если все сделано успешно, перейдите в каталог sqlmap и выполните приведенную ниже команду, чтобы протестировать sqlmap в Ubuntu.

А теперь приступим к взлому.

Следующее из результатов поиска открывает веб-сайт, URL которого похож на этот..

Теперь проверьте, является ли URL-адрес достоверным, добавив ‘ и нажмите Enter, если страница выдает ошибку sql, что означает, что вам повезло, данный URL-адрес готов для взлома.

Перейдите в каталог sqlmap и выполните эту команду, чтобы проверить запрет sql.
Где
-u :- означает URL-адрес, который мы собираемся взломать
–dbs :- команда покажет список доступных для взлома баз данных.

УБУНТУ

КАЛИ ЛИНУКС

Откройте терминал и выполните приведенную ниже команду. Нет необходимости устанавливать sqlmap в KALI LINUX

На изображении ниже вы видите взломанную базу данных

Теперь взломайте таблицы взломанной базы данных.
Где
-D :- означает имя базы данных, которую вы собираетесь взломать
–tables :- команда покажет все таблицы взломанной базы данных.

УБУНТУ

КАЛИ ЛИНУКС

Вы можете увидеть список таблиц взломанной базы данных.

Следующая задача — получить столбец любой таблицы.
Где
-T :- означает имя таблицы, которую вы собираетесь взломать
–columns :- команда покажет все столбцы таблицы.

УБУНТУ

КАЛИ ЛИНУКС

Ниже вы можете увидеть список столбцов взломанной таблицы.

Теперь это ваша последняя задача — получить реальные данные из таблиц.
Где
-C :- означает имя столбца таблицы.
–dump :- команда покажет все данные заданных столбцов.

УБУНТУ

КАЛИ ЛИНУКС

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

ПЕРЕЗАПИСАННЫЕ URL

Также можно протестировать уязвимости SQL-инъекций с помощью sqlmap с URL-адресом, использующим перезаписи модов

Вы должны использовать * в своем URI, создавая точки внедрения URI. Поэтому вместо использования:

Дополнительные варианты использования см. на вики-сайте sqlmap. С этой страницы:

Точка внедрения URI

В особых случаях точка внедрения находится внутри самого URI. sqlmap не выполняет никакой автоматической проверки путей URI, если это не указано вручную. Вы должны указать эти точки внедрения в командной строке, добавив звездочку ( * ) после каждой точки URI, которую вы хотите, чтобы sqlmap тестировал и использовал внедрение SQL.

Это особенно полезно, когда, например , используется модуль mod_rewrite веб-сервера Apache или другие подобные технологии.

Пример допустимой командной строки:

Читайте также: