Upload Bypass — инструмент для автоматизации поиска уязвимостей в формах загрузки файлов. Недавно автор внес значительные обновления в код. Теперь он практически полностью переписан, улучшен парсинг файлов и устранено большинство багов. Структура кода стала модульной, что облегчает добавление новых модулей. Давайте посмотрим, что умеет Upload Bypass.
Еще по теме: Сайты для поиска уязвимостей
Возможности Upload Bypass
Были добавлены три режима работы: обнаружение, эксплуатация и проверка на наличие антивирусного ПО. Также появилась функция сохранения состояния, позволяющая приостановить работу и продолжить с того места, где вы остановились.
Уязвимости в формах загрузки файлов возникают, когда веб-приложение позволяет загрузить вредоносный файл, который затем может быть выполнен на сервере. Это может привести к выполнению кода, компрометации системы или утечке данных. Часто такие уязвимости связаны с недостаточной проверкой типа файла или расширений.
Для быстрого развертывания был добавлен файл Docker. Кроме того, теперь есть режим отладки — если вы столкнетесь с ошибкой, можно сохранить трассировку стека и поделиться с автором для дальнейшего анализа.
- Режим обнаружения: загружает безвредные файлы и не пытается эксплуатировать цель. Если указана папка назначения для загруженных файлов, программа определит, отображается ли загруженный пример файла. Например, если вы выбрали PHP, тулза определит, успешно ли выполняется и отображается команда echo.
- Режим эксплуатации: используется для эксплуатации цели и загрузки веб-шелла (если указан каталог загрузки). Файл будет загружен со случайным UUID, что затруднит его обнаружение.
- Режим проверки антивирусного ПО: подходит для проверки наличия антивирусного ПО. Он загружает в систему файл Eicar (тестовый файл для антивирусов), и если пользователь указывает расположение загруженного файла, программа проверяет, успешно ли файл загружен и существует ли он в системе, чтобы определить наличие антивирусного ПО.
В файле config.py в директории lib можно добавить новые расширения, MIME-типы, магические байты, настроить использование протокола HTTP / HTTPS и многое другое.
Статья в образовательных целях, для обучения багхантеров. Несанкционированный взлом сайтов — это уголовное преступление. Ни редакция spy-soft.net, ни автор не несут ответственности за ваши действия.
Установка Upload Bypass
Для установки инструмента выполните:
1 |
git clone https://github.com/sAjibuu/Upload_Bypass.git |
Для установки зависимостей:
1 |
pip install -r requirements.txt |
Вы также можете использовать Docker. Вот команды для установки из Docker Hub:
1 |
sudo docker pull sajibuu/upload_bypass |
Или для сборки из локального Docker-файла:
1 |
sudo docker build -t sajibuu/upload_bypass . |
Использование Upload Bypass в Docker
Без прокси:
1 |
sudo docker run -v $(pwd)/request:/Upload_Bypass/{your_request_file} -it sajibuu/upload_bypass -r request -s 'file was uploaded successfully' -E php -e |
С прокси (убедитесь, что прослушиваете порт 8080 на всех интерфейсах):
1 |
sudo docker run -v $(pwd)/request:/Upload_Bypass/{your_request_file} -it sajibuu/upload_bypass -r request -s 'file was uploaded successfully' -E php -e -p http://{docker_interface_IP}:8080 |
Обратите внимание на некоторые ограничения:
- Инструмент не будет работать корректно, если на сайте реализована CAPTCHA.
- Если для каждого запроса требуется CSRF-токен.
- Если предоставлена папка назначения для загруженных файлов, но файлы сохраняются с GUID (глобально уникальным идентификатором) вместо их фактических имен.
Upload Bypass — многообещающий инструмент для автоматизации поиска уязвимостей в формах загрузки файлов. Однозначно стоит вашего внимания.
ПОЛЕЗНЫЕ ССЫЛКИ:
- Лучшие инструменты для поиска уязвимостей сайтов
- Взлом Tomcat эксплуатируя уязвимость загрузки файлов