Libcommons-compress-java
Уязвимости
11
Эксплуатируемые
0
Макс. CVSS
7.5
Макс. EPSS
0.16157
Распределение по критичности
Критический
0
Высокий
6
Средний
4
Низкий
1
Также сопоставлено как (исходные строки): libcommons-compress-java
Топ уязвимостей
CVE-2021-36090При чтении специально созданного ZIP-архива можно заставить Compress выделить большие объемы памяти, что в конечном итоге приводит к ошибке нехватки памяти даже для очень маленьких входных данных. Это можно использовать для организации DoS-атаки на службы, использующие zip-пакет Compress.
CVE-2021-35517При чтении специально созданного архива TAR можно заставить Compress выделить большой объем памяти, что в конечном итоге приводит к ошибке нехватки памяти даже для очень маленьких входных данных. Это можно использовать для организации атаки типа "отказ в обслуживании" на сервисы, использующие пакет tar Compress.
CVE-2021-35516При чтении специально созданного архива 7Z можно заставить Compress выделить большой объем памяти, что в конечном итоге приводит к ошибке нехватки памяти даже для очень маленьких входных данных. Это можно использовать для организации атаки типа "отказ в обслуживании" на сервисы, использующие пакет sevenz Compress.
CVE-2021-35515При чтении специально созданного архива 7Z создание списка кодеков, которые распаковывают запись, может привести к бесконечному циклу. Это можно использовать для организации атаки типа "отказ в обслуживании" на сервисы, использующие пакет sevenz Compress.
CVE-2019-12402Алгоритм кодирования имен файлов, используемый внутри Apache Commons Compress 1.15 - 1.18, может войти в бесконечный цикл при столкновении со специально созданными входными данными. Это может привести к атаке типа "отказ в обслуживании", если злоумышленник может выбирать имена файлов внутри архива, созданного Compress.
CVE-2018-1324Специально созданный ZIP-архив может быть использован для вызова бесконечного цикла внутри парсера дополнительных полей Apache Commons Compress, используемого классами ZipFile и ZipArchiveInputStream в версиях 1.11 - 1.15. Это может быть использовано для организации атаки типа "отказ в обслуживании" против служб, использующих пакет zip Compress.
CVE-2024-26308Уязвимость распределения ресурсов без ограничений или ограничения в Apache Commons Compress. Эта проблема затрагивает Apache Commons Compress: с 1.21 до 1.26.
Пользователям рекомендуется обновиться до версии 1.26, которая исправляет эту проблему.
CVE-2024-25710Цикл с недостижимым выходным условием ('Бесконечный цикл') в Apache Commons Compress. Эта проблема затрагивает Apache Commons Compress: с 1.3 по 1.25.0.
Пользователям рекомендуется обновиться до версии 1.26.0, которая исправляет проблему.
CVE-2023-42503Уязвимость неправильной проверки входных данных, неконтролируемое потребление ресурсов в Apache Commons Compress при парсинге TAR. Эта проблема затрагивает Apache Commons Compress: с 1.22 до 1.24.0.
Пользователям рекомендуется обновиться до версии 1.24.0, которая исправляет эту проблему.
Третье лицо может создать искаженный TAR-файл, манипулируя заголовками времени изменения файлов, которые, когда они парсятся с помощью Apache Commons Compress, вызовут отказ в обслуживании через потребление ЦП.
В версии 1.22 Apache Commons Compress была добавлена поддержка времён изменения файлов с высокой точностью (проблема # COMPRESS-612 [1]). Формат для расширенных заголовков PAX, содержащих эти данные, состоит из двух чисел, разделенных точкой [2], указывающих на секунды и субсекундную точность (например, “1647221103.5998539”). Затрагиваемые поля — “atime”, “ctime”, “mtime” и “LIBARCHIVE.creationtime”. Никакая проверка входных данных не выполняется перед разбором значений заголовка.
Парсинг этих чисел использует класс BigDecimal [3] из JDK, который имеет общеизвестную проблему алгоритмической сложности при выполнении операций с большими числами, что приводит к отказу в обслуживании (см. проблему # JDK-6560193 [4]). Третье лицо может манипулировать заголовками времени изменения файла в TAR-файле, помещая число с очень длинной дробной частью (300,000 цифр) или число с экспоненциальной нотацией (например, “9e9999999”) в заголовок времени изменения файла, и парсинг файлов с этими заголовками займет часы вместо секунд, что приведет к отказу в обслуживании через исчерпание ресурсов ЦП. Эта проблема схожа с CVE-2012-2098 [5].
[1]: https://issues.apache.org/jira/browse/COMPRESS-612
[2]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/pax.html#tag_20_92_13_05
[3]: https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.html
[4]: https://bugs.openjdk.org/browse/JDK-6560193
[5]: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-2098
Только приложения, использующие класс CompressorStreamFactory (с автоматическим определением типов файлов), TarArchiveInputStream и TarFile для парсинга TAR-файлов, подвержены риску. Так как этот код был внедрен в версии 1.22, только эта версия и более поздние версии подвержены риску.
CVE-2018-11771При чтении специально созданного ZIP-архива метод чтения ZipArchiveInputStream Apache Commons Compress 1.7 - 1.17 может не вернуть правильный индикатор EOF после достижения конца потока. В сочетании с java.io.InputStreamReader это может привести к бесконечному потоку, который можно использовать для организации атаки типа «отказ в обслуживании» против служб, использующих пакет zip Compress.
CVE-2012-2098Уязвимость, связанная с алгоритмической сложностью в алгоритмах сортировки в потоке сжатия bzip2 (BZip2CompressorOutputStream) в Apache Commons Compress до версии 1.4.1, позволяет удаленным злоумышленникам вызывать отказ в обслуживании (потребление ЦП) через файл с множеством повторяющихся входных данных.