CVE-2016-10556

Yüksək

Təsvir

sequelize Obyekt-relyasiyalı xəritələmə (ORM) və ya Postgres, MySQL, MariaDB, SQLite və Microsoft SQL Server məlumatlarını NodeJS üçün istifadə edilə bilən verilənlərə çevirən bir vasitəçidir. Postgres, SQLite və Microsoft SQL Server-də massivlərin sətirlər kimi qəbul edildiyi və yanlış şəkildə escape edildiyi bir problem mövcuddur. Bu, sequelize 3.19.3 və daha əvvəlki versiyalarda potensial SQL inyeksiyasına səbəb olur; burada bədniyyətli istifadəçi `database.query('SELECT * FROM TestTable WHERE Name IN (:names)', { replacements: { names: directCopyOfUserInput } });` daxilinə `["test", "'); DELETE TestTable WHERE Id = 1 --')"]` yerləşdirərək SQL ifadəsinin `SELECT Id FROM Table WHERE Name IN ('test', '\'); DELETE TestTable WHERE Id = 1 --')` şəklində olmasına səbəb ola bilər. Postgres, MSSQL və SQLite-da geri slash (\) simvolunun xüsusi mənası yoxdur. Bu isə ifadənin TestTable cədvəlində Id dəyəri 1 olan hər hansı bir qeydi silməsinə səbəb olur.

CiddilikYüksək
CVSS7.5
İstismar ehtimalı—
MəhsulSequelize
Dərc29 may 2018
İlk görülmə29 may 2018
Zəiflik növüCWE-89SQL inyeksiyası

Necə düzəltmək olar

Yeniləyin
  • sequelize3.20.0 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
sequelizejs sequelizev ≤ 3.19.3—
sequelizenpmv < 3.20.03.20.0

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.

CVE-2016-10556 · Sequelize · Dark Radar