در نسخههای v0.98.0 تا v0.143.0 پلتفرم SigNoz، یک نقص امنیتی شناسایی شده است که در صورتی که سیستم از opaque session tokenizer استفاده کند، منجر به باقی ماندن نشستهای (Sessions) فعال کاربران میشود.
جزئیات فنی آسیبپذیری
بررسیها نشان میدهد که در دو سناریوی زیر، توکنهای فعال کاربر به درستی ابطال نمیشوند:
- تغییر رمز عبور: زمانی که کاربر از طریق توکن بازنشانی رمز عبور (از طریق متد
POST /api/v2/factor_password/reset) رمز خود را تغییر میدهد. - حذف کاربر: زمانی که یک کاربر از سیستم حذف میشود (از طریق متد
DELETE /api/v2/users/{id}).
دلیل این مشکل این است که در مسیرهای کد مربوط به این دو عملیات، تابع DeleteTokensByUserID فراخوانی نمیشود. در نتیجه، حتی پس از تغییر رمز عبور یا حذف کامل حساب کاربری، نشستهای قبلی همچنان معتبر باقی مانده و مهاجم یا کاربر سابق میتواند تا زمان انقضای طبیعی توکن، به سیستم دسترسی داشته باشد.
راهکار رفع مشکل
این نقص در نسخههای جدیدتر (v0.143.0 و بالاتر) برطرف شده است. به کاربران توصیه میشود سریعاً سیستم خود را به آخرین نسخه بهروزرسانی کنند تا مکانیزم ابطال توکنها به درستی عمل کند.