После установки уязвимого веб-приложения DVWA, можно переходить к практике. Например, к атаке SQL-инъекция. В этой статье рассмотрим пример SQL-инъекции с помощью Burp Suite на уязвимой платформе DVWA.
Еще по теме: Обход авторизации с помощью SQL-инъекции
Пример SQL инъекции с помощью Burp Suite на DVWA
Для реализации SQL-инъекции с помощью Burp Suite, нам понадобиться:
- Kali Linux (см. Создание флешки Kali Linux).
- Burp Suite (установлен на Kali Linux).
- DVWA (см. первую ссылку).
Burp Suite — отличный инструмент, который позволяет искать уязвимости в веб-приложениях.
Damn Vulnerable Web Application (DVWA) — это намеренно уязвимое веб-приложение на PHP/MySQL. Цель проекта — помочь этичным хакерам, багхантерам и специалистам ИБ отточить свои навыки и протестировать инструменты.
Запуск и настройка Burp Suite на Kali Linux
Для запуска Burp Suite на Kali Linux, откройте терминал и выполните команду:
1 |
burpsuite |
Если впервые используете Burp Suite, тогда необходимо принять условия использования.
Не пугайтесь, если появится сообщение об ошибке Java Runtime Environment (JRE). Это известная ошибка при первом запуске Burp Suite версии Community. Она связана с версией JRE, установленной в вашей ОС. Просто пропустите сообщение об ошибке.
В бесплатной версии единственная доступная опция — выбрать Temporary Project (Временный проект). После выбора параметров по умолчанию, появится основное окно графического интерфейса (GUI) Burp Suite Community.
Перейдем к использованию Burp Suite и DVWA для тестирования веб-приложений на предмет атак путем внедрения SQL.
Уровни безопасности DVWA
Запустите DVWA (см. первую ссылку). Имейте в виду. Если перезапустить машину, нужно будет снова запустить службы, необходимые для DVWA, и перезапустить браузер:
1 2 |
sudo service apache2 start sudo service mysql start |
Одной из крутых фич DVWA является то, что можно настраивать сложность атаки (их называют уровнями безопасности). Вот краткое объяснение каждого из них:
- Low (Низкий) — компьютер максимально уязвим, и не использует средства безопасности.
- Medium (Средний) — предназначен для имитации веб-приложения без современных средств обеспечения безопасности.
- High (Высокий) — сложнее чем предыдущий уровень, но все еще можно найти уязвимость и взломать.
- Impossible (Охренеть какой сложный) — самый сложный уровень, использующий техники защиты. Для хардкорных тру хакеров.
В случае атак SQL-инъекция уровень Low отобразит на странице текстовое поле, в которое можно ввести SQL-инъекцию:
Итак, выберите уровень Medium. В этом случае вместо простого текстового поля будет доступно выпадающее меню. Так, для примера атаки SQL-инъекция, можно будет использовать Burp Suite.
SQL инъекция с помощью Burp Suite на DVWA
Переходим к примеру атаки SQL-инъекция.
Шаг 1: Откройте Burp Suite и создайте временный проект, используя настройки Burp по умолчанию.
Шаг 2: В главном верхнем меню выберите Proxy (Прокси), а в подменю, выберите Intercept (Перехват).
Шаг 3: Выберите Lunch Burp Browser.
Шаг 4: Используя браузер Burp, откройте DVWA, перейдите в левое меню и нажмите DVWA Security (Безопасность DVWA), затем в выпадающем списке выберите Medium (Средний) и нажмите Submit (Отправить):
Шаг 5: Теперь перейдите к SQL Injection в левом меню, и там вы должны увидеть выпадающее меню с кнопкой Submit (Отправить):
Шаг 6: Вернитесь в Burp Suite и включите перехват, нажав на Intercept is of (Перехват отключен):
Шаг 7: Вернитесь в DVWA и нажмите Submit (Отправить).
Шаг 8: Если вернуться в Burp Suite, вы увидите перехваченные данные:
Шаг 9: Как видите, значение, которое мы выбрали в выпадающем списке, было отправлено как id=1, поэтому давайте поэкспериментируем с этим числом, чтобы увидеть, насколько безопасно это веб-приложение.
Шаг 10: В Burp Suite измените значение id с 1 на 2, затем нажмем Forward, чтобы посмотреть, что произойдет.
Шаг 11: Вернитесь к DVWA. Как видите, в выпадающем списке по-прежнему отображается идентификатор пользователя 1; однако отображается информация об идентификаторе пользователя 2. Это означает, что Burp Suite смог успешно внедрить новое значение, даже не затрагивая веб-страницы:
Шаг 12: Это была проверка. Теперь, когда мы поняли, что можно внедрять данные, давайте попробуем сделать настоящую SQL-инъекцию. Изменим значение ID пользователя, чтобы увидеть, что это даст. Вернитесь в Burp Suite и убедитесь, что Intercept включен, а затем снова нажмем Submit на DVWA, чтобы снова получить данные в Burp Suite.
Шаг 13: Теперь Burp Suite должен отображать ту же информацию, что и на скрине выше. Перейдите к последней строке и снова измените значение ID с 1 на 1 ИЛИ 1=1# и нажмите Forward (Вперед).
Шаг 14: Как вы можете видеть на следующем скрине, страница в DVWA теперь одновременно отображает информацию от всех пяти пользователей. Это означает, что мы обнаружили уязвимость:
Шаг 15: Нажмите Submit (Отправить), чтобы снова обновить данные в Burp Suite. Затем снова измените значение ID на:
1 |
1 OR 1=1 UNION SELECT NULL,TABLE_NAME FROM INFORMATION_SCHEMA.TABLES# |
Шаг 16: Теперь, если вы вернетесь к DVWA, то увидите, что на этот раз мы получили гораздо больше информации, включая имена таблиц. Это очень серьезная уязвимость, поскольку злоумышленник может получить очень важные данные из веб-приложения.
Мы обнаружили более опасную уязвимость:
Шаг 17: С помощью полученной информации можно попробовать найти другие уязвимости веб-приложения:
1 |
1 OR 1=1 UNION SELECT USER,PASSWORD FROM users# |
Теперь перейдите на DVWA и вы увидите отображаемые хеши паролей:
На посошок, хочу рассмотреть решение распространенной ошибки, с которой можете столкнуться.
Исправление ошибки Burp Suite и DVWA
Если появится следующая ошибка (см. скрине ниже), не беспокойтесь — это легко исправить. Просто зайдите в Burp Suite, выберите Intercept is Off, затем обновите DVWA.
Кроме того, помните, что эти значения чувствительны к регистру, поэтому убедитесь, что вы используете правильный регистр:
На этом все. Вы научились использовать Burp Suite и с помощью него провели атаку SQL-инъекция. В следующей статье, будем использовать уязвимое веб-приложение для реализации атаки брутфорс.
ПОЛЕЗНЫЕ ССЫЛКИ:
- Автоматизация атак в Burp Suite
- Лучшие расширения для Burp Suite
- Перенаправление трафика Burp Suite через SOCKS-прокси