Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-88cv-mj24-8w3q

Опубликовано: 21 сент. 2022
Источник: github
Github: Прошло ревью
CVSS3: 7

Описание

arr-pm vulnerable to arbitrary shell execution when extracting or listing files contained in a malicious rpm.

Impact

Arbitrary shell execution is possible when using RPM::File#files and RPM::File#extract if the RPM contains a malicious "payload compressor" field.

This vulnerability impacts the extract and files methods of the RPM::File class in the affected versions of this library.

Patches

Version 0.0.12 is available with a fix for these issues.

Workarounds

When using an affected version of this library (arr-pm), ensure any RPMs being processed contain valid/known payload compressor values. Such values include: gzip, bzip2, xz, zstd, and lzma.

You can check the payload compressor field in an rpm by using the rpm command line tool. For example:

% rpm -qp example-1.0-1.x86_64.rpm --qf "%{PAYLOADCOMPRESSOR}\n" gzip

Impact on known dependent projects

This library is used by fpm. The vulnerability may impact fpm only when using the flag -s rpm or --input-type rpm to convert a malicious rpm to another format. It does not impact creating rpms.

References

Credit

Thanks to @joernchen for reporting this problem and contributing to the resolution :)

For more information

If you have any questions or comments about this advisory:

Пакеты

Наименование

arr-pm

rubygems
Затронутые версииВерсия исправления

< 0.0.12

0.0.12

EPSS

Процентиль: 50%
0.00266
Низкий

7 High

CVSS3

Дефекты

CWE-78

Связанные уязвимости

CVSS3: 7
nvd
больше 3 лет назад

Arr-pm is an RPM reader/writer library written in Ruby. Versions prior to 0.0.12 are subject to OS command injection resulting in shell execution if the RPM contains a malicious "payload compressor" field. This vulnerability impacts the `extract` and `files` methods of the `RPM::File` class of this library. Version 0.0.12 patches these issues. A workaround for this issue is to ensure any RPMs being processed contain valid/known payload compressor values such as gzip, bzip2, xz, zstd, and lzma. The payload compressor field in an rpm can be checked by using the rpm command line tool.

CVSS3: 7
fstec
больше 3 лет назад

Уязвимость библиотеки Arr-pm для записи/чтения RPM-пакетов интерпретатора языка программирования Ruby, позволяющая нарушителю выполнить произвольные команды

EPSS

Процентиль: 50%
0.00266
Низкий

7 High

CVSS3

Дефекты

CWE-78