Podatność w bibliotece Feathers.js umożliwia przeprowadzenie ataku SQL injection na bazę danych back-endu, gdy używany jest pakiet feathers-sequelize. Ocena CVSS 10.0 oznacza maksymalne ryzyko — atakujący bez uwierzytelnienia może w pełni skompromitować system.
▸ Pokaż oryginał (EN)
Due to improper input validation in the Feathers js library, it is possible to perform a SQL injection attack on the back-end database, in case the feathers-sequelize package is used.
Biblioteka Feathers.js nie przeprowadza prawidłowej walidacji danych wejściowych dostarczanych przez użytkownika. Gdy aplikacja korzysta z pakietu feathers-sequelize jako warstwy dostępu do bazy danych, nieoczyszczone dane trafiają bezpośrednio do zapytań SQL. Atakujący może wstrzyknąć złośliwy kod SQL, który zostanie wykonany przez silnik bazy danych po stronie serwera.
Atakujący może uzyskać nieautoryzowany dostęp do danych, modyfikować lub usuwać zawartość bazy danych, a w określonych konfiguracjach przejąć pełną kontrolę nad systemem back-endowym. Wektor CVSS wskazuje na pełne naruszenie poufności, integralności i dostępności zasobów.
Należy zastosować patche dostępne u producenta zgodnie z referencjami (https://csirt.divd.nl/CVE-2022-2422 oraz https://csirt.divd.nl/DIVD-2022-00020). Dodatkowo zaleca się weryfikację i wzmocnienie walidacji danych wejściowych po stronie aplikacji oraz stosowanie parametryzowanych zapytań SQL.
Aplikacje wykorzystujące bibliotekę Feathers.js w połączeniu z pakietem feathers-sequelize; konkretne wersje wskazane w referencjach producenta (csirt.divd.nl/DIVD-2022-00020)
Podatność została zgłoszona i opublikowana przez DIVD CSIRT (Dutch Institute for Vulnerability Disclosure) w ramach projektu DIVD-2022-00020.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HFeathersjs Feathers Sequelize
APPFeathersjs6.0.0 – 6.3.4 (bez)
Powiązane podatności
SQL Injection w bibliotece Feathers-Sequelize przez nieprawidłowe filtrowanie parametrów
RCE w Feathers-Sequelize przez niebezpieczną rekurencję w cleanQuery
Feathers.js: pominięcie uwierzytelnienia OAuth umożliwia przejęcie konta
Feathers.js – wstrzyknięcie operatorów MongoDB przez Socket.IO (NoSQL Injection)
Feathersjs is a framework for creating web APIs and real-time applications with TypeScript or JavaScript. Vers...