# Домашняя работа №2 (Устройство современных веб-приложений и сбор информации задачи на root-me и portswigger) ###### tags: `Домашние задания Web Application Penetration Testing` - Начнем с задач на root-me 1) Задача: Backup File Открываем запрос в BurpSuite. ![](https://i.imgur.com/HkEBC3T.png) Ничего интересного не видим. Пробуем добавить index.php. Аналогично. Попробуем передать запрос в intruder и перебрать файлы в директории с помощью Sniper (но помним про бан ip). Нужное нам расширение - php~. ![](https://i.imgur.com/A8IsdbY.png) Сдаем ключ. 2) Задача: HTTP - Directory indexing Открываем запрос в BurpSuite. ![](https://i.imgur.com/l01AVsB.png) В ответе есть подсказка, что искать нужно по пути admin/pass.html. Дописываем его. ![](https://i.imgur.com/2Bg68SX.png) Не находим ключа. Попробуем также пройти по пути admin. ![](https://i.imgur.com/D70xH15.png) Передем в браузере. ![](https://i.imgur.com/iDrwKLT.png) Сдаем ключ. 3) Задача: Install files Открываем запрос в BurpSuite. ![](https://i.imgur.com/y79UhaJ.png) Ничего интересного, кроме того что это папка. Поищем с помощью dirb подобных утилит. ![](https://i.imgur.com/mAzJUEH.png) Переходим по найденному пути. ![](https://i.imgur.com/8e5BfmJ.png) Сдаем ключ. 4) Задача: Insecure Code Management Открываем задачу. Судя по описанию это сервер с git. Проверяем есть ли git по пути .git. ![](https://i.imgur.com/QBQtbOl.png) Обнаруживаем различные директории. Скачиваем набор утилит для перебора gitа - https://github.com/internetwache/GitTools Для начала используем gitdumber, для загрузки всех возможных путей с нужного нам git. ![](https://i.imgur.com/zZ38XWJ.png) Затем из этого же пакета используем утилиту extractor для поиска коммитов в данном репозитории. ![](https://i.imgur.com/agxalfy.png) Первая папка это где лежит репозиторий, вторая куда положить коммиты. Получили 5 папок. Попробую поискать информацию в каждой из них по очереди. Подставляя каждый пароль из найденных выясняем что правильный в папке под номером 4. ![](https://i.imgur.com/ZO1eTYE.png) ____ Задачи с portswigger. ![](https://i.imgur.com/5zNrGvz.png) 1) Information disclosure in error messages Открываем страницу по задаче и смотрим её в burp. По названию задаче мы должны увидить какую то информацию о сервере в ошибке. Попробуем её создать, например если передем на любую страницу и добавим в индекс символ. ![](https://i.imgur.com/OWxV5x8.png) Видим версию apache сдаем ключ. 2) Information disclosure on debug page Открываем страницу по задаче и смотрим её в burp. На первый взгляд ничего не видно. Поищем debug страницу через SiteMap. Находим её. ![](https://i.imgur.com/097FsYD.png) Отправляем запрос через Repeater. ![](https://i.imgur.com/yeAfbbN.png) Попробуем сдать версию php как ключ. Не подходит. Поищем на странице ключ. ![](https://i.imgur.com/as65YXe.png) Успешно сдаем. 3) Source code disclosure via backup files В основной директории сайта не находим ничего интересного. Попробуем перебрать директории через burp. ![](https://i.imgur.com/63Xikcf.png) Находим путь backup. В ответе находим еще один путь. ![](https://i.imgur.com/Ceh5Qps.png) Проходим по нему. ![](https://i.imgur.com/kEOGA1b.png) Находим ключ. Сдаем. 4) Authentication bypass via information disclosure Судя по заданию, нам необходимо получить доступ в обход авторизации. Сразу переберем директории. ![](https://i.imgur.com/2UwiP77.png) Находим, что admin имеет нестандартный ответ, проверим её. Перебираем различные методы находим на метод trace интересный ответ. ![](https://i.imgur.com/iWHA8p3.png) Сервер отдает custom ip. Попробуем заменить добавить его в запрос. Результат получили только поменяв его на localhost адрес. ![](https://i.imgur.com/6PWlaup.png) Видим пользователей в списке. Из описания можно понять, что имеется возможность удалить пользователя если сделать такой запрос. Попробуем. ![](https://i.imgur.com/GGWOnMe.png) Запрос выполнился. Учетка удалена. ![](https://i.imgur.com/1ERuyKL.png) Задание пройдено. 5) Information disclosure in version control history Подобное задание мы уже делали на рут ми. Проверяме директорию git. ![](https://i.imgur.com/HJ9ApqC.png) Используем утилиту как и на рут ми. ![](https://i.imgur.com/gO4zqRI.png) Находим пароль админа. ![](https://i.imgur.com/wwJZNDr.png) Авторизуемся под ним. Попробуем удалить пользователя. ![](https://i.imgur.com/SOdOJR2.png) Успешно. ![](https://i.imgur.com/FsiDNPy.png) Задание пройдено.