
Воспроизведение CVE-2026-48204: инъекция заголовка gridfs.* в Apache Camel camel-mongodb-gridfs, переопределяющая операцию GridFS (перечисление/чтение/удаление файлов) из неаутентифицированного HTTP-запроса (исправлено в 4.14.8/4.18.3/4.21.0)
| Среда выполнения | Каталог | Стек |
|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (включает Camel 4.20.0) |
Обе версии затронуты уязвимостью (исправлено в 4.14.8 / 4.18.3 / 4.21.0), и обе демонстрируют один и тот же дефект: когда
в маршруте не задана операция operation для конечной точки mongodb-gridfs, GridFsProducer берёт операцию из
заголовка gridfs.operation. Этот заголовок (и gridfs.objectid) не находится в пространстве имён Camel*, поэтому
пограничный фильтр HTTP не удаляет его — неаутентифицированный клиент конечной точки загрузки файлов переключает операцию на
listAll (перечисление всех файлов, раскрытие ObjectId) или remove (удаление файла по идентификатору) — CWE-20 / CWE-284.
Каждый подкаталог представляет собой автономный проект (плюс контейнер MongoDB, запускаемый его docker-compose.yml) со
своим собственным Dockerfile и README. Вкратце, для любого из них:
cd camel-spring-boot # или: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
| Свойство | Значение |
|---|---|
| Компонент | camel-mongodb-gridfs |
| Затронутый класс | org.apache.camel.component.mongodb.gridfs.GridFsProducer (операция из gridfs.operation, когда операция operation конечной точки не задана) |
| CWE | CWE-20 (некорректная проверка входных данных) / CWE-284 (некорректный контроль доступа) |
| Воздействие | Переопределение операции GridFS через заголовки → перечисление / чтение / удаление файлов; NoSQL-инъекция через gridfs.metadata |
| Затронутые версии | С 4.0.0 до 4.14.8, с 4.15.0 до 4.18.3, с 4.19.0 до 4.21.0 |
| Исправленные версии | 4.14.8, 4.18.3, 4.21.0 |
| JIRA | CAMEL-23575 (PR apache/camel#23413) |
| Автор | Yu Bao (PayPal) |
Консультация: https://camel.apache.org/security/CVE-2026-48204.html
Эти репродукторы предоставлены только для исследований в области безопасности и авторизованного тестирования и касаются публично раскрытой и исправленной уязвимости. Не используйте их против систем без явного разрешения.