OWASP Mutillidae II

Описание OWASP Mutillidae II

OWASP Mutillidae II — это бесплатное, с открытым исходным кодом, намеренно уязвимое веб-приложение, обеспечивающее цель для энтузиастов в веб-безопасности. Mutillidae может быть установлено на Linux и Windows используя LAMP, WAMP и XAMMP. Оно предустановлено в Web Security Dojo, SamuraiWTF и OWASP BWA. Существующая на этих платформах версия может быть обновлена. С десятками уязвимостей и подсказками пользователю, эта простая в использовании среда веб-хакинга создана для лабораторий, энтузиастов безопасности, аудиторий, CTF и оценки инструментов, нацеленных на уязвимости. Mutillidae использовалась в курсах безопасности аспирантов, корпоративных тренингах веб-безопасности, а также в качестве «оценки оценщика» для определения эффективности программного обеспечения по выявлению уязвимостей.

Особенности

  • Имеется более 40 уязвимостей и вызовов. Содержит по крайне мере по одной уязвимости для каждой OWASP Top Ten 2007, 2010 и 2013.
  • Действительно уязвимая (пользователей не просят ввести «волшебный» оператор).
  • Mutillidae может быть установлено на Linux, Windows XP и Windows 7+ используя XAMMP, что облегчает задачу пользователям, которые не ходят устанавливать или администрировать их собственный веб-сервер. Подтверждено, что Mutillidae работает на XAMPP, WAMP и LAMP.
  • Установка проста, закиньте файлы проекта в папку "htdocs" на XAMPP.
  • Попытается определить доступна ли для этого пользователя база данных MySQL.
  • Предустановлена на Rapid7 Metasploitable 2, Web Security Dojo, Samurai Web Testing Framework (WTF) и OWASP Broken Web Apps (BWA).
  • Содержит 2 уровня подсказок для начальной помощи пользователям.
  • Включает пузырьковые подсказки для помощи в указании уязвимых локаций.
  • Пузырьковые подсказки автоматически дают больше информации при увеличении уровня подсказок.
  • Система может быть восстановлена до исходного состояния одним кликом по кнопке "Setup".
  • Вы можете переключаться между безопасным и небезопасным режимами.
  • Безопасный и небезопасный исходный код для каждой страницы расположен в одном и том же PHP файле для простого сравнения.
  • Обеспечивает страницу захвата данных и сохранение захваченных данных в базе данных и файле.
  • Позволяет приводить в исполнение SSL для практики в избавлении от SSL.
  • Используется в различных курсах по безопасности и для анализа инструментов по тестированию программного обеспечения.
  • Mutillidae протестировалась/была атакована с Cenzic Hailstorm ARC, W3AF, SQLMAP, Samurai WTF, Backtrack, HP Web Inspect, Burp-Suite, NetSparker Community Edition и другими инструментами.
  • Обучающие видео: https://www.youtube.com/user/webpwnized
  • Часто обновляется.

Домашняя страница: https://sourceforge.net/projects/mutillidae/

Автор: Jeremy Druin

Лицензия: GPLv3

Справка и инструкция по использованию OWASP Mutillidae II

Mutillidae реализует уязвимости из OWASP Top 10 2013, 2010 и 2007 на PHP. На различные страницы были добавлены дополнительные уязвимости от SANS Top 25 Programming Errors и уязвимости раскрытия выбранной информации.

Верхнее меню

  • Home: Переход на домашнюю страницу
  • Login/Register: Переход на страницу входа
  • Toggle Hints: Показывает или прячет подсказки на уязвимых страницах
  • Show Popup Hints: Показывает или прячет всплывающие подсказки рядом с уязвимыми областями страниц
  • Toggle Security: Изменяет уровень безопасности между небезопасный, безопасность на стороне клиента и безопасный
  • Enforce SSL: При включении, Mutillidae автоматически перенаправляет все HTTP запросы на HTTPS
  • Reset DB: Стирает и заново создаёт все таблицы базы данных и сбрасывает проект
  • View Log: Переход к просмотру журнала
  • View Captured Data: Переход к просмотру захваченных данных

Левое меню

Меню слева организовано по категориям затем по уязвимостям. Некоторые уязвимости могут быть более чем в одной категории, поскольку частично перекрываются между категориями. В Mutillidae каждая страница выставляет несколько категорий. Некоторые страницы имеют с полдюжины и/или несколько критических уязвимостей на одной странице. Страница будет появляться в меню каждой уязвимости.

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

Видео

Видео на YouTube канале Webpwnized вероятно чем-то смогут помочь. Видео охватывают установку, использование инструментов вроде Burp-Suite и эксплуатирование различных уязвимостей.

Подсказки на страницах

Кроме меню, это будет самой важной функцией для новичков. Для включения подсказок используйте кнопку переключения (в верхнем меню) "Show Hints". Раздел подсказок будет появляться ЕСЛИ эта страница содержит уязвимости. Подсказки «умные», показывают только те из них, которые помогут на конкретной странице.

Режимы безопасности

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

В безопасном режиме Mutillidae пытается защитить страницы скриптами на стороне сервера. Также отключены подсказки.

Режим может быть изменён кнопкой "Toggle Security" в верхней панели.

Кнопка "Help Me"

Кнопка "Help Me" предоставляет базовое описание уязвимостей на странице, для которой пользователь должен пробовать эксплойты. Используйте эту кнопку для быстрого списка проблем. Используйте Hints (подсказки) для просмотра дополнительных деталей.

Пузырьковые подсказки

Если "Bubble Hints" включены (вернее меню), некоторые локации уязвимостей будут иметь всплывающие подсказки, когда пользователь наводит мышь на уязвимое поле или область.

Просто дайте мне эксплойт

Подсказки обычно предоставляют некоторые эксплойты. Известные эксплойты, используемые в тестировании Mutillidae размещены в /documentation/Mutillidae-Test-Scripts.txt. Также имеется некоторая документация для каждого эксплойта, которая объяснят использование и размещение.

Будьте осторожны

Mutillidae является «живой» системой. Уязвимости реальны, а не эмулированы. Это устроняет разочарование от необходимости «знать, что хотел автор». Из-за этого возможны недокументированные уязвимости. Кроме того, этот проект ставит под угрозу любую машину, на которой запущен. Лучшей практикой будет запустить Mutillidae в изолированной от сети виртуальной машине, которая загружается только во время использования Mutillidae. Все усилия были предприняты чтобы Mutillidae работать совершенно оффлайн.

Установка OWASP Mutillidae II

OWASP Mutillidae II может быть установлен на любую систему, имеющую веб-сервер, систему управления базами данных (MySQL) и интерпретатор PHP. Установка в современные системы может быть затруднена, поскольку Mutillidae требует PHP 5, а на современных дистрибутивах версией по умолчанию является PHP 7. Поэтому рекомендуется воспользоваться виртуальными машинами, которые уже имеют предустановленную и правильно настроенную Mutillidae. Среди этих систем можно выделить Web Security Dojo, SamuraiWTF и OWASP BWA.

Обновление OWASP Mutillidae II до последней версии в Samurai Web Testing Framework

Создайте файл upd_mutillidae.sh со следующим содержимым:

#!/bin/bash  
 
cd /tmp
temp="$(curl -sL -A 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36' https://sourceforge.net/projects/mutillidae/files/mutillidae-project/)"
if [ $? -ne '0' ]; then
    exit 1
fi
 
wget -O "mutillidae.zip" `echo "${temp}" | grep -o -E 'https://[A-Za-z0-9./-]{7,}[.]zip/download' | head -n 1`
unzip mutillidae.zip

sudo rm -rf /usr/share/mutillidae.original.backup
sudo mv /usr/share/mutillidae /usr/share/mutillidae.original.backup
sudo mkdir /usr/share/mutillidae
sudo mv mutillidae*/* /usr/share/mutillidae/
sudo mv /usr/share/mutillidae.original.backup/ssl.crt /usr/share/mutillidae/ssl.crt

sudo chown -R www-data:www-data /usr/share/mutillidae/

sudo rm -rf mutillidae*

cd

Запустите скрипт

sudo bash upd_mutillidae.sh

В браузере перейдите по ссылке http://mutillidae/set-up-database.php для перестроения базы данных.

Обновление OWASP Mutillidae II до последней версии в Web Security Dojo

Создайте файл upd_mutillidae.sh со следующим содержимым:

#!/bin/bash  
 
cd /tmp
temp="$(curl -sL -A 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36' https://sourceforge.net/projects/mutillidae/files/mutillidae-project/)"
if [ $? -ne '0' ]; then
    exit 1
fi
 
wget -O "mutillidae.zip" `echo "${temp}" | grep -o -E 'https://[A-Za-z0-9./-]{7,}[.]zip/download' | head -n 1`
unzip mutillidae.zip

sudo rm -rf /var/www/mutillidae.original.backup
sudo mv /var/www/mutillidae /var/www/mutillidae.original.backup
sudo mkdir /var/www/mutillidae
sudo mv mutillidae*/* /var/www/mutillidae/

sudo sed -i 's/static public $mMySQLDatabaseHost = "localhost";/static public $mMySQLDatabaseHost = "127.0.0.1";/' /var/www/mutillidae/classes/MySQLHandler.php
sudo sed -i 's/static public $mMySQLDatabasePassword = "";/static public $mMySQLDatabasePassword = "dojo";/' /var/www/mutillidae/classes/MySQLHandler.php

sudo chown -R www-data:www-data /var/www/mutillidae/

sudo rm -rf mutillidae*

cd

Запустите скрипт

sudo bash upd_mutillidae.sh

В браузере перейдите по ссылке http://localhost/mutillidae/set-up-database.php для перестроения базы данных.

Установка OWASP Mutillidae II в Kali Linux

Создайте файл upd_mutillidae.sh и скопируйте в него:

#!/bin/bash  
 
sudo apt-get update
sudo apt-get install php7.0-xml php7.0-fpm libapache2-mod-php php-mysql php-xml php-gd php-imap php-mysql php-gettext php-curl -y
sudo a2enmod proxy_fcgi setenvif
sudo systemctl restart apache2
sudo a2enconf php7.0-fpm
sudo systemctl reload apache2
sudo service php7.0-fpm restart
sudo systemctl restart mysql
 
cd /tmp
temp="$(curl -sL -A 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36' https://sourceforge.net/projects/mutillidae/files/mutillidae-project/)"
if [ $? -ne '0' ]; then
    exit 1
fi
   
wget -O "mutillidae.zip" `echo "${temp}" | grep -o -E 'https://[A-Za-z0-9./-]{7,}[.]zip/download' | head -n 1`
unzip mutillidae.zip
 
if [ -d "/var/www/html/mutillidae.backup" ]; then
    sudo rm -rf /var/www/html/mutillidae.backup
fi
 
if [ -d "/var/www/html/mutillidae" ]; then
    sudo mv /var/www/html/mutillidae /var/www/html/mutillidae.backup
fi
 
sudo mkdir /var/www/html/mutillidae
sudo mv mutillidae*/* /var/www/html/mutillidae/
  
sudo chown -R www-data:www-data /var/www/html/mutillidae/
  
sudo rm -rf mutillidae*
  
cd

Запустите файл:

sudo bash upd_mutillidae.sh

После завершения установки OWASP Mutillidae II будет доступен по ссылке http://localhost/mutillidae/. 

При первом запуске скрипт предложит создать базу данных. Нажмите «setup/reset the DB» и дождитесь создания базы данных. Затем во всплывающем окне просто нажмите ОК.

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

В скрипте прописан запуск служб, но поскольку в Kali Linux по умолчанию службы веб-сервера и СУБД не добавлены в автозагрузку, то при перезапуске системы перед тем, как попасть в Mutillidae, вам нужно запустить службы:

sudo systemctl start php7.0-fpm.service
sudo systemctl start apache2.service
sudo systemctl start mysql

Скриншоты OWASP Mutillidae II

06

07

Инструкции по OWASP Mutillidae II