BadStore: Интернет для тестирования на пентест

{title}

BadStore - это веб-приложение, смонтированное в дистрибутиве Linux (Trinux) . Распределение позволяет имитировать сервер со всеми активными службами и установленным книжным магазином, который содержит несколько недостатков безопасности, для выполнения тестов на взлом и проникновение.

BadStore весит всего 10 Мб и может использоваться из виртуальной коробки для имитации сервера и выполнения атак с другого компьютера или с него.

{title}

Веб-платформа BadStore работает с Perl, Apache и MySQL.

Преимущества BadStore :

  • Легко настроить
  • Он может быть запущен с виртуальной машины.
  • Мы можем получить доступ к виртуальной машине, настроив IP, как если бы это был VPS.

Мы можем скачать ISO с официального сайта BadStore.

Далее мы будем использовать ISO BadStore на виртуальной машине, такой как Virtualbox. Нам понадобится установить VirtualBox, его установка очень проста, как объясняется в руководствах Создание сервера VPS на домашнем компьютере и Linux - Установка Ubuntu.

Затем мы запускаем Virtualbox и создадим виртуальную машину для размещения BadStore. Мы должны выбрать 32-битную версию для Linux.

{title}

Затем мы нажимаем Next и мы должны выделить память для виртуальной машины, в этом случае мы выделяем 1, 7 гигабайта ОЗУ более чем достаточно для этой версии Trinux.

{title}

Мы нажимаем Next и создадим виртуальный диск для установки нашей виртуальной машины .

{title}

Далее мы нажимаем Далее, и мы должны назначить тип виртуального диска. Наиболее используемые форматы, предлагаемые Virtualbox:

  • VDI: это формат Virtualbox по умолчанию.
  • VMDK: это формат с открытым исходным кодом, этот тип файла виртуального диска может работать на других платформах виртуализации, таких как VMWare.

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

{title}

Теперь мы нажимаем Next и должны назначить имя папки, которая будет работать как виртуальный жесткий диск. Мы также должны определить размер виртуального жесткого диска. BadStore занимает только 11 МБ, но мы выделяем от 4 ГБ до 50 ГБ на случай, если захотим установить средства безопасности или тестирования.

{title}

Далее мы нажимаем Next и мы должны искать ISO, чтобы указать, какой из них будет установлен.

{title}

Далее мы запустим BadStore и посмотрим, как подключиться к этому VPS.

{title}

Система запустится в консольном режиме, и мы введем Enter, чтобы активировать командную строку, в этом случае у нас нет домена, поэтому мы будем использовать IP-адрес VPS для выполнения наших атак, и мы должны выяснить, что это IP-адрес VPS. Для этого мы будем использовать команду:

 bash # ifconfig 
Таким образом мы получаем конфигурацию сети Ethernet с IP 192.168.0.15, затем из браузера на компьютере, вне виртуальной машины, ставим IP.

{title}

Мы заходим в Интернет и можем приступить к анализу уязвимостей и тестам на пентест или хакерство, которые мы увидим дальше.

$config[ads_text5] not found

{title}

А) Ошибка поиска


У магазина есть поисковая система в левой колонке, мы вводим любое значение, которое будет искать книгу, и сделаем так, чтобы оно не сработало, в результате он покажет нам запрос SQL.

{title}

Это происходит, не проверяя введенные данные и возникающие ошибки.

B) Уязвимость с помощью межсайтовых сценариев (XSS)


Мы оставим комментарий в гостевой книге Гостевой книги, но мы поместим код Javascript в поля формы.

{title}

$config[ads_text6] not found

Мы добавили комментарий, используя функцию оповещения Javascript для отображения сообщения, этот код будет сохранен в базе данных, а затем будет выполняться каждый раз при загрузке веб-сайта гостевой книги. Эта уязвимость позволяет нам вводить любой код Javascript, мы можем даже перенаправлять на другой веб-сайт каждый раз, когда кто-то получает доступ к гостевой книге, например

{title}

 location.href = "mihackdominio.coml"; 
С этим мы перенаправим его.

C) Используйте Scan Tools


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

Например:

Nmap: с помощью инструмента Nmap мы можем сканировать порты, чтобы определить, какие из них открыты:

 Nmap 192.168.0.15 

{title}

Мы видим, что служба mysql активна, поэтому может существовать база данных, работающая с сетью.

D) Атака сервера MySQL с помощью SQLMAP


Чтобы протестировать эту уязвимость, мы будем использовать SQLMAP, как мы видели в предыдущем руководстве:

SQLMAP SQL Injection инструмент и Этические базы данных взлома.

Мы должны найти URL, куда отправляются параметры, для этого нет ничего лучше, чем поисковая система. Если мы поместим код книги, например, 1000, мы получим ссылку в браузере. Далее мы используем команду sqlmap, чтобы выяснить, какой механизм базы данных использует веб.

Я проверяю, что ядро ​​базы данных использует сеть, и если она является присоединяемой, и мы ищем базу данных, используя следующую команду:

 ./sqlmap.py -u "http://192.168.0.21/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --current-db 

{title}

Мы видим, что сервером является Apache, а ядром базы данных является Mysql 5.0 .

Далее мы рассмотрим сканирование и перечислим таблицы найденной базы данных, для этого используем следующую команду:

 ./sqlmap.py -u "http://192.168.0.15/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --tables 

{title}

E) Получение доступа администратора


Одной из уязвимостей является использование параметров URL для изменения разделов или страниц в Интернете. BadStore имеет эту уязвимость, например, //192.168.0.15/...ction=myaccount, если в параметре action, который мы передаем как раздел, мы перейдем к нему, поэтому мы можем попробовать использовать admin, панель или другое слово, которое обозначает панель control, пример //192.168.0.15/...i?action=admin, эффективно позволяет нам видеть панель управления, но ничего не изменять.

Распространенной ошибкой является то, что когда пользователь регистрируется, мы отправляем скрытые параметры, чтобы отличить пользователя от другого, например, клиента от поставщика или администратора. Чтобы увидеть, произойдет ли это, мы установим плагин для браузера под названием Tamper Data, который показывает параметры, отправленные из формы, чтобы мы могли видеть, есть ли скрытые параметры.

{title}

Затем мы активируем плагин из меню Firefox Tools> Tamper Data, это позволит собирать данные, которые отправляются через форму, если мы перейдем к форме регистрации и затем нажмем на опцию продажи данных Tamper Начать модификацию, чтобы Отправить захватывает данные.

$config[ads_text5] not found

{title}

Мы можем видеть, что есть скрытое поле, называемое ролью, и именно оно определяет роль, поэтому U будет пользователем и администратором. Если мы изменим параметр, мы зарегистрируемся как администратор и получим полный контроль над панелью управления.

Теперь мы можем получить доступ к панели администрирования, потому что при регистрации мы уже вошли в систему. Мы также можем получить доступ ко всем спискам панели администрирования.

{title}

BadStore помогает нам выполнять всевозможные тесты на уязвимости и предлагает практический подход к поиску и использованию сетевых уязвимостей. Это форма обучения, чтобы узнать, как надежно защитить свои сайты.

$config[ads_text6] not found

Мы можем использовать программное обеспечение для обнаружения уязвимостей, которые мы видели в учебнике, как:

Сканирование уязвимости сайта с помощью ZAP

Nessus - анализ проблем безопасности сети на веб-сайтах.

{title}

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

  • 0