CVE-2022-24785: Path Traversal in Moment.js
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 34/100)
- Есть публичный код proof-of-concept (GitHub); записей об эксплуатации в реальных атаках нет.
- Вероятность эксплуатации в ближайшие 30 дней: 13,8% (FIRST EPSS); выше, чем у 96,5% записей.
- Может быть вызвана любым, у кого есть доступ через интернет. Учётная запись или пароль не требуются. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- По данным CISA атаку можно автоматизировать: цели находятся массовым сканированием.
- Исправленная версия: moment moment 2.29.2.
- Упоминается в национальных бюллетенях кибербезопасности Турции (siberguvenlik.gov.tr): 2.
Пока низкий приоритет. Обновитесь до moment moment 2.29.2 или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
Moment.js is a JavaScript date library for parsing, validating, manipulating, and formatting dates. A path traversal vulnerability impacts npm (server) users of Moment.js between versions 1.0.1 and 2.29.1, especially if a user-provided locale string is directly used to switch moment locale. This problem is patched in 2.29.2, and the patch can be applied to all affected versions. As a workaround, sanitize the user-provided locale name before passing it to Moment.js.
- Опубликовано
- 4 апр. 2022 г.
- Обновлено
- 17 июн. 2026 г.
- EPSS
- 13,8 % · 96-й процентиль
- CWE
- CWE-22
Инструменты для отчёта
Оценка срочности
34
Наблюдать
Пока низкий приоритет.
- CVSS
- 30 / 40 · 7.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 4 / 30 · 13,8 %
Решение CISA SSVC
- Эксплуатация
- нет
- Автоматизируемо
- да
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Оценка CNA и NVD
- NVD
- 7,5
- CNA · GitHub_M
- 7,5
- совпадают
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Есть PoC, боевого модуля нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| momentjs | moment | cpe:2.3:a:momentjs:moment |
| tenable | tenable.sc | cpe:2.3:a:tenable:tenable.sc |
| netapp | active iq | cpe:2.3:a:netapp:active_iq |
| fedoraproject | fedora | cpe:2.3:o:fedoraproject:fedora |
| debian | debian linux | cpe:2.3:o:debian:debian_linux |
Затрагивает ли уязвимость Moment.js на вашем сайте?
Бесплатная проверка JavaScript-библиотек читает версию Moment.js из файлов, которые загружает сайт, сопоставляет эту запись и другие известные уязвимости и называет безопасную версию в той же ветке. Если версию прочитать нельзя, так и пишет. Аккаунт не нужен.
Проверить JavaScript-библиотекиЗатронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- debian debian linux10.0
- fedoraproject fedora35
- fedoraproject fedora36
- momentjs moment1.0.1 и новее · до 2.29.2
- netapp active iqвсе версии
- tenable tenable.scдо 5.21.0
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (GitHub_M). Не зависят от анализа CPE в NVD и обычно опережают его.
moment moment
- >= 1.0.1, < 2.29.2затронута
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:10 | node-moment | до 2.24.0+ds-1+deb10u1 | 2.24.0+ds-1+deb10u1 |
| Debian:12 | node-moment | до 2.29.2+ds-1 | 2.29.2+ds-1 |
| npm | moment | до 2.29.2 | 2.29.2 |
| NuGet | Moment.js | до 2.29.2 | 2.29.2 |
| Red Hat:ceph_storage:5.3::el8 | ceph | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-base | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-base-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-common | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-common-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-debugsource | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-fuse | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-fuse-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-grafana-dashboards | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-immutable-object-cache | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-immutable-object-cache-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mds | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mds-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-cephadm | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-dashboard | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-debuginfo | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-diskprediction-local | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-k8sevents | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
| Red Hat:ceph_storage:5.3::el8 | ceph-mgr-modules-core | до 2:16.2.10-94.el8cp | 2:16.2.10-94.el8cp |
+96
Тот же продукт
momentjs: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2022-31129Inefficient Regular Expression Complexity in moment32Наблюдать
- CVE-2017-18214The moment module before 2.19.3 for Node.js is prone to a regular expression denial of service via a crafted date string, a different vulner31Наблюдать
- CVE-2016-4055The duration function in the moment package before 2.11.2 for Node.js allows remote attackers to cause a denial of service (CPU consumption)29Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| moment moment | 2.29.2 · description | Вендор (CNA) |
| debian:node-moment | 2.29.2+ds-1 · Debian:12 | Реестр пакетов (OSV) |
| npm:moment | 2.29.2 | Реестр пакетов (OSV) |
| NuGet:Moment.js | 2.29.2 | Реестр пакетов (OSV) |
| red hat:eap7-jackson-databind | 0:2.12.6.1-1.redhat_00003.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-all | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-buffer | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-dns | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-haproxy | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-http | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-http2 | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-memcache | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-mqtt | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
| red hat:eap7-netty-codec-redis | 0:4.1.72-4.Final_redhat_00001.1.el7eap · Red Hat:jboss_enterprise_application_platform:7.4::el7 | Реестр пакетов (OSV) |
Статус эксплойта
Есть proof of concept
Существует публичный PoC или сигнатура обнаружения. Знание об эксплойте доступно; не откладывайте установку исправлений.
Доказательство
- Репозиторий PoC на GitHub ×1
Noroxi не размещает код эксплойтов и не даёт на них ссылок. Показываются имена модулей Metasploit и идентификаторы шаблонов Nuclei (имена, не код); записи Exploit-DB и репозитории PoC даются только числом.
| Источник | Тип | Дата |
|---|---|---|
| Репозиторий PoC на GitHub | stars:1 | 2023-05-29 |
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
- Публикация
- Первый PoC+419 дн.
- Сегодня3 нояб. 2026 г.+1674 дн.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Вендор продукта присутствует в публичной программе. Сопоставление по имени; проверьте текст scope в программе.
Национальное уведомление (Управление кибербезопасности Турции / USOM)
Официальные уведомления, ссылающиеся на эту запись; рекомендации — на странице ведомства.
- TR-22-0594 · 7 сент. 2022 г.(IBM Güvenlik Zafiyeti)
- TR-22-0544 · 11 авг. 2022 г.(Ubuntu Güvenlik Güncellemesi)
Технические детали
Условия атаки
- Может быть вызвана любым, у кого есть доступ через интернет.
- Учётная запись или пароль не требуются.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- высокое · данные или конфигурация могут быть изменены
- Доступность
- нет
- Вектор атаки
- Сеть
- Сложность атаки
- Низкая
- Требуемые привилегии
- Не требуются
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Высокое
- Влияние на доступность
- Нет
Класс уязвимости (CWE)
CWE-22 · Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')Вектор CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
nvd-primary
Первопричина
Имя файла, переданное пользователем, объединяется с разрешённым каталогом, но не проверяется, остаётся ли результат внутри этого каталога.
Ошибка в коде
Весь класс CWE-22Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.
Уязвимый код
const file = path.join(ROOT, req.query.name);
res.sendFile(file);Исправленный код
const file = path.resolve(ROOT, req.query.name);
if (!file.startsWith(ROOT + path.sep)) {
return res.sendStatus(400);
}
res.sendFile(file);Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Шаблоны атак (CAPEC)
- Path TraversalCAPEC-126вероятность: High · Very High
- Using Slashes and URL Encoding Combined to Bypass Validation LogicCAPEC-64вероятность: High · High
- Manipulating Web Input to File System CallsCAPEC-76вероятность: High · Very High
- Using Escaped Slashes in Alternate EncodingCAPEC-78вероятность: High · High
- Using Slashes in Alternate EncodingCAPEC-79вероятность: High · High
Техники ATT&CK
—
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 7)Свернуть
- github.com/moment/moment/security/advisories/GHSA-8hfj-j24r-96c4
- lists.debian.org/debian-lts-announce/2023/01/msg00035.html
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/6QIO6YNLTK2T7SPKDS4JEL45FANLNC2Q/
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ORJX2LF6KMPIHP6B2P6KZIVKMLE3LVJ5/
- security.netapp.com/advisory/ntap-20220513-0006/
- www.tenable.com/security/tns-2022-09
- security.netapp.com/advisory/ntap-20241108-0002/
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.