آسیبپذیری جدیدی در کتابخانه qs کشف شده است که میتواند منجر به تزریق پارامترهای غیرمجاز در رشتههای پرسوجو (Query String) شود. این نقص زمانی رخ میدهد که تنظیمات allowEmptyArrays روی مقدار true قرار داشته باشد.
در این حالت، کلیدهای مربوط به آرایههای خالی بدون انجام فرآیند کدگذاری (Encoding) در خروجی نوشته میشوند. اگر یک مهاجم بتواند نام کلیدی را کنترل کند که حاوی کاراکترهای کنترلی مانند &، = یا # باشد، این کاراکترها به جای داده، به عنوان دستورالعملهای ساختاری (Syntax) در Query String تفسیر خواهند شد. این امر به مهاجم اجازه میدهد تا پارامترهای جدیدی را به درخواست اضافه کرده یا ساختار پارامترهای موجود را تغییر دهد.
بررسیهای فنی نشان میدهد که این مشکل در فایل lib/stringify.js و در بخش مدیریت آرایههای خالی رخ میدهد؛ جایی که تابع پیش از طی کردن مراحل استاندارد کدگذاری، مقدار را بازمیگرداند.