Мониторинг Карточка CVE
Открытые данные
К списку уязвимостей
Высокий
Патч
Опубликована

CVE-2026-13048

Data::MuForm::Localizer versions through 0.05 for Perl execute Perl from a message catalog header, reached at an arbitrary path because load_lexicon interpolates the language attribute into the catalog filename

Публикация: 13.08.2026·Обновлена: 04.11.2026, 18:33·Europe/Moscow

Что произошло

Автоперевод выключен · оригинальное описание

Data::MuForm::Localizer versions through 0.05 for Perl execute Perl from a message catalog header, reached at an arbitrary path because load_lexicon interpolates the language attribute into the catalog filename. load_lexicon builds the catalog path by appending `Messages/$lang.po` to the directory holding Localizer.pm, where $lang is the language attribute, with no check that it names a bare locale tag. A value holding `../` segments walks out of the message directory, so any readable path with a `.po` suffix is loaded. While parsing the catalog, extract_header_msgstr takes the `Plural-Forms:` header, prefixes `$` to the bare words nplurals, plural and n, and passes the rest verbatim into a string that is evaluated: the nplurals form evaluates the header expression immediately, and the plural_code form compiles it into a subroutine whose body runs when a plural message is localized. A header of `nplurals=2; plural=(system('...'),0);` therefore runs that command as the catalog loads. The evaluation inherits strict, so an expression that assigns to an undeclared variable fails to compile, while one built from calls alone does not. An application that sets the language attribute from request data, an Accept-Language header or a locale parameter, and an attacker who can place a file with a `.po` suffix and chosen contents at a readable path, together give code execution as the application user. The message expansion path is not affected: expand_named substitutes only the placeholder names the caller supplies, and _mangle_value returns the value unchanged.

Что это значит

В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.

Что делать

Редакционные пояснения, сведения источников и общие рекомендации помечены отдельно
Устранить в течение 7 дней

1. Проверьте, затронуты ли вы

Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.

Debian / Ubuntu
dpkg-query -W -f='${Package}	${Version}\n'
RHEL / AlmaLinux
rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'
Windows PowerShell
Get-HotFix | Select-Object HotFixID, InstalledOn
Общая рекомендация, не из бюллетеня вендора

2. Установите исправление

Сверьте точный продукт и версию с бюллетенем вендора. Установите указанное в нём исправление после резервного копирования и проверки совместимости. Подтверждённая целевая версия в источниках отсутствует.

Общая рекомендация, не из бюллетеня вендора

3. Временные меры

No fixed release is available, and the distribution has not been updated since 2018. Apply the patch, which requires the language attribute to be a bare locale tag and parses the Plural-Forms header against the gettext plural grammar before it is evaluated. Deployments that cannot patch should not set the language attribute from request data, and should map any request supplied locale through a fixed table of supported tags before passing it to a form or localizer.

4. Проверьте следы эксплуатации

Проверьте аномальные входы, новые учётные записи, ошибки и необычные дочерние процессы в затронутом сервисе. Публичные проверенные правила обнаружения не включены в запись; отсутствие сигналов не доказывает отсутствие компрометации.

Общая рекомендация, не из бюллетеня вендора

5. После исправления

  • Проверьте фактическую версию и результат установки по бюллетеню.
  • При необходимости перезапустите сервисы в согласованное окно.
  • Повторите проверку сканером и функциональные проверки.
  • Зафиксируйте результат, дату, владельца и оставшийся риск.

Продукты и затронутые версии

{
  "status": "affected",
  "version": "0",
  "versionType": "custom",
  "lessThanOrEqual": "0.05"
}

CVSS: оценки и векторы

CVSS 3.1 · cve8.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнизкое
I · Целостностьвысокое
A · Доступностьнет
CVSS 3.1 · 134c704f-9b21-4f2e-91b3-4a467353bcc08.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнизкое
I · Целостностьвысокое
A · Доступностьнет
CVSS 3.1 · ghsa8.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
AV · Вектор атакисеть
AC · Сложность атакинизкая
PR · Привилегиине нужны
UI · Участие пользователяне нужно
S · Область воздействияне меняется
C · Конфиденциальностьнизкое
I · Целостностьвысокое
A · Доступностьнет

Источники и ссылки

Происхождение полей
{
  "cwes": [
    "cve",
    "ghsa",
    "nvd"
  ],
  "epss": {
    "source": "epss",
    "received_at": "2026-11-05T21:12:53.737401+00:00"
  },
  "title": {
    "source": "cve",
    "received_at": "2026-11-04T14:47:55.933387+00:00"
  },
  "scores": [
    "cve",
    "ghsa",
    "nvd"
  ],
  "status": {
    "source": "cve",
    "received_at": "2026-11-04T14:47:55.933387+00:00"
  },
  "affected": [
    "cve"
  ],
  "published": {
    "source": "cve",
    "received_at": "2026-11-04T14:47:55.933387+00:00"
  },
  "solutions": [],
  "percentile": {
    "source": "epss",
    "received_at": "2026-11-05T21:12:53.737401+00:00"
  },
  "references": [
    "cve",
    "ghsa",
    "nvd"
  ],
  "description": {
    "source": "cve",
    "received_at": "2026-11-04T14:47:55.933387+00:00"
  },
  "workarounds": [
    "cve"
  ],
  "configurations": []
}

Хронология записи

  1. Данные обновлены06.11.2026, 00:12
  2. Данные обновлены05.11.2026, 00:15
  3. Данные обновлены04.11.2026, 18:45
  4. Данные обновлены04.11.2026, 18:22
  5. Данные обновлены04.11.2026, 17:47
  6. Данные обновлены04.11.2026, 00:12
  7. Данные обновлены03.11.2026, 00:11
  8. Данные обновлены02.11.2026, 00:10
  9. Данные обновлены31.10.2026, 11:57
  10. Данные обновлены30.10.2026, 17:41
  11. Данные обновлены29.10.2026, 11:29
  12. Появились сведения об исправлении28.10.2026, 23:47

Личная заметка и статус

CVE-2026-13048: Data::MuForm::Localizer versions through 0.05 for Perl execute Perl from a message catalog header, reached at an arbitrary path because load_lexicon interpolates the language attribute into the catalog filename · CVE Радар