Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-60093 — Эксплойты-репроducers для уязвимости обхода пути (path traversal) в Apache Camel (CVE-2026-60093) в camel-azure-storage-datalake, демонстрирующие произвольную запись файлов через downloadToFile. | Kitploit
Инструменты/GitHubGitHub/oscerd/cve-2026-60093
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСтатьи и ИсследованияОбучение и Образование
GitHuboscerd/cve-2026-60093

CVE-2026-60093

Эксплойты-репроducers для уязвимости обхода пути (path traversal) в Apache Camel (CVE-2026-60093) в camel-azure-storage-datalake, демонстрирующие произвольную запись файлов через downloadToFile.

Репозиторий
9 ч 24 мин назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-60093 — camel-azure-storage-datalake downloadToFile: обход пути

Готовые к запуску proof-of-concept-репродукторы одной и той же уязвимости Apache Camel, по одному на каждую среду выполнения:

Скачать инструмент
Среда выполненияКаталогСтек
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-azure-storage-datalake 4.18.2
Camel Quarkuscamel-quarkus/Quarkus 3.36.0 + Camel Quarkus 3.36.0 (включает Camel 4.20.0)

Обе — затронутые версии (проблема исправлена в 4.14.9 / 4.18.4 / 4.22.0), и обе демонстрируют идентичный дефект: компонент camel-azure-storage-datalake может загрузить файл ADLS Gen2 в локальную файловую систему через операцию downloadToFile, записывая его в каталог, заданный опцией fileDir.

DataLakeFileOperations.downloadToFile формировал локальный путь назначения, объединяя fileDir с именем удалённого пути в том виде, в котором его передавал Azure SDK (new File(fileDir, fileClientWrapper.getFileName())), — без лексической нормализации и без проверки того, что итоговое расположение осталось внутри fileDir. Удалённое имя не контролируется маршрутом: потребитель перечисляет содержимое файловой системы (DataLakeConsumer.createBatchExchangesFromPath) и загружает каждую запись. Поэтому имя пути, содержащее сегменты ../, разрешается за пределами fileDir (CWE-22, обход пути → произвольная запись файла).

Примечание о тестовом стенде. API Azure Data Lake Gen2 не реализован ни одним доступным локальным эмулятором: Azurite возвращает HTTP 400 для Gen2-операций listPaths и файловых операций. Поэтому данные репродукторы запускают точно тот же уязвимый код (DataLakeFileOperations.downloadToFile → new File(fileDir, fileClientWrapper.getFileName())) напрямую, передавая обёртку клиента Data Lake, чей getFileName() возвращает удалённое имя, — в точности так, как потребитель передаёт имя, прочитанное из PathItem.getName(). Родственный компонент camel-azure-storage-blob закрыт тем же исправлением (CVE-2026-66906), и там идентичный дефект воспроизводится сквозным образом против работающего эмулятора Azurite.

root@kitploit:~
cd camel-spring-boot   # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

Ожидаемый вывод на затронутой сборке (оба варианта):

root@kitploit:~
2) Download of a file named '../../../../../../tmp/pwned-60093.txt':
     resolved local target: /app/downloads/../../../../../../tmp/pwned-60093.txt
File written OUTSIDE it, at /tmp/pwned-60093.txt: true
    content: PWNED via path traversal — CVE-2026-60093
>>> PROVEN: DataLakeFileOperations.downloadToFile built the local target as new File(fileDir, fileName) ... : true

Сводка уязвимости

СвойствоЗначение
Компонентcamel-azure-storage-datalake (Spring Boot: camel-azure-storage-datalake-starter; Quarkus: camel-quarkus-azure-storage-datalake)
CWECWE-22 (Некорректное ограничение имени пути заданным каталогом — обход пути)
Вектор атакиФайл Gen2, имя пути которого содержит сегменты ../, загружаемый потребителем с заданной опцией fileDir
ВоздействиеПроизвольная запись файла за пределами настроенного каталога fileDir
Затронутые версииС 4.0.0 до 4.14.9, с 4.15.0 до 4.18.4, с 4.19.0 до 4.22.0
Исправленные версии4.14.9, 4.18.4, 4.22.0
JIRACAMEL-23942
Авторn0mi1k; Hiep Nguyen

Уведомление: https://camel.apache.org/security/CVE-2026-60093.html

Исправление

Теперь потребитель вычисляет путь назначения загрузки и ограничивает его настроенным каталогом fileDir (через AzureFileNameHelper.resolveWithinDirectory), отклоняя имена путей, ведущие за его пределы, — то же исправление, которое охватывает camel-azure-storage-blob (CVE-2026-66906).

Отказ от ответственности

Этот репозиторий опубликован в образовательных и защитных целях: помочь пользователям Apache Camel понять уязвимость, проверить, затронуты ли они, и убедиться, что обновление устраняет проблему. Записываемый файл — безвредная метка в каталоге /tmp. Не используйте этот материал против систем, которыми вы не владеете и которые не эксплуатируете.