CVE-2024-32962
Обход проверки XML-подписи из-за некорректной проверки подписи / подделка подписи
- Опубликовано
- 2 мая 2024 г.
- Обновлено
- 13 февр. 2025 г.
- Назначение CNA
- GitHub_M
- Наблюдены доказательства
- 8 авг. 2026 г.
Первичный CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:NНизкий · следующие 30 дней
- Процентиль
- 55,7 %
- Дата модели
- 21 сент. 2026 г.
EPSS – это статистическая оценка, а не достоверность или мера воздействия. Объедините это с CVSS, статусом KEV, воздействием и вашей средой.
Резюме
xml-crypto — это библиотека цифровой подписи и шифрования XML для Node.js. В затронутых версиях конфигурация по умолчанию не проверяет авторизацию подписанта, а лишь проверяет действительность подписи в соответствии с разделом 3.2.2 спецификации w3 xmldsig-core-20080610. В связи с этим без дополнительных шагов проверки конфигурация по умолчанию позволяет злоумышленнику переподписать XML-документ, поместить сертификат в элемент `<KeyInfo />` и пройти проверки `xml-crypto` по умолчанию. В результате `xml-crypto` по умолчанию доверяет любому сертификату, предоставленному через элемент `<KeyInfo />` XML-документа с цифровой подписью. `xml-crypto` предпочитает использовать любой сертификат, предоставленный через элемент `<KeyInfo />` XML-документа с цифровой подписью, даже если библиотека была настроена на использование конкретного сертификата (`publicCert`) для целей проверки подписи. Злоумышленник может подделать проверку подписи, изменив XML-документ, заменив существующую подпись подписью, сгенерированной с помощью вредоносного закрытого ключа (созданного злоумышленником), и прикрепив сертификат этого закрытого ключа к элементу `<KeyInfo />`. Данная уязвимость представляет собой комбинацию изменений, внесённых в `4.0.0` в рамках pull request 301 / коммита `c2b83f98`, и была устранена в версии 6.0.0 с помощью pull request 445 / коммита `21201723d`. Пользователям рекомендуется обновиться. Пользователи, которые не могут обновиться, могут либо проверить сертификат, извлечённый с помощью `getCertFromKeyInfo`, на соответствие доверенным сертификатам перед принятием результатов проверки, либо установить `getCertFromKeyInfo` в `xml-crypto` как `() => undefined`, что заставит `xml-crypto` использовать явно настроенный `publicCert` или `privateKey` для проверки подписи.
Источники
1Симулирует атаку, эксплуатирующую CVE-2024-32962 для подделки SAML-сообщений и получения несанкционированных разрешений, демонстрируя влияние уязвимости.
Ответственное использование
Используйте информацию об уязвимостях только в тех системах, которыми вы владеете или имеете право тестировать. Kitploit ссылается на метаданные общедоступных исследований и не хранит код эксплойта или вредоносные полезные данные.