Уязвимость внедрения команд оболочки через отсутствие экранирования в модуле mailcap в Python
Описание
В версиях Python (CPython) до 3.10.8 модуль mailcap
не добавляет экранирующие символы в команды, найденные в системном файле mailcap. Это может позволить злоумышленникам внедрять команды оболочки в приложения, которые вызывают mailcap.findmatch
с недоверенными данными (если отсутствует верификация предоставленных пользователем имён файлов или аргументов).
Затронутые версии ПО
- Все релизы Python (CPython) до 3.10.8
- Фикс также перенесен в версии 3.7, 3.8, 3.9
Тип уязвимости
Внедрение команд
Ссылки
- ExploitIssue TrackingVendor Advisory
- Issue TrackingThird Party Advisory
Уязвимые конфигурации
Одно из
Одно из
Одно из
EPSS
7.6 High
CVSS3
8 High
CVSS2
Дефекты
Связанные уязвимости
In Python (aka CPython) up to 3.10.8, the mailcap module does not add escape characters into commands discovered in the system mailcap file. This may allow attackers to inject shell commands into applications that call mailcap.findmatch with untrusted input (if they lack validation of user-provided filenames or arguments). The fix is also back-ported to 3.7, 3.8, 3.9
In Python (aka CPython) up to 3.10.8, the mailcap module does not add escape characters into commands discovered in the system mailcap file. This may allow attackers to inject shell commands into applications that call mailcap.findmatch with untrusted input (if they lack validation of user-provided filenames or arguments). The fix is also back-ported to 3.7, 3.8, 3.9
In Python (aka CPython) up to 3.10.8, the mailcap module does not add ...
EPSS
7.6 High
CVSS3
8 High
CVSS2