یک آسیبپذیری امنیتی در نرمافزار changedetection.io (نسخههای تا 0.60.7) شناسایی شده است که به دلیل نقص در پیادهسازی تابع check_authentication در فایل flask_app.py، امکان دور زدن مکانیزمهای احراز هویت را فراهم میکند.
تحلیل فنی آسیبپذیری
این نقص از نوع Timing Side-Channel است. در این مدل حمله، مهاجم با تحلیل تفاوتهای بسیار جزئی در زمان پاسخدهی سرور (Response-time differences) هنگام بررسی رمز عبور، میتواند به صورت تدریجی و با استفاده از تحلیلهای آماری، رمز عبور اپلیکیشن را بازیابی کند.
ارزیابی ریسک و پیچیدگی
با وجود اینکه این حمله به صورت Remote و بدون نیاز به احراز هویت (Unauthenticated) قابل اجرا است، اما پیچیدگی عملیاتی آن بالا (High Complexity) ارزیابی شده است. دلایل این موضوع عبارتند از:
- نیاز به حجم بالای درخواستها: مهاجم باید تعداد زیادی Request ارسال کرده و نتایج را به صورت آماری تحلیل کند.
- تاثیر تأخیر شبکه: نوسانات Network Latency میتواند دقت تحلیل زمان را کاهش داده و موفقیت حمله را مختل کند.
- محدودیت دسترسی: در صورت موفقیت، تنها رمز عبور اپلیکیشن بازیابی میشود و تأثیر آن بر روی محرمانگی و یکپارچگی دادهها در سطح محدودی (Bounded) است.
در حال حاضر یک Proof-of-Concept (PoC) برای این آسیبپذیری منتشر شده است. لازم به ذکر است که طبق گزارشها، سازنده نرمافزار تا این لحظه پاسخی به گزارشهای مربوط به این نقص امنیتی نداده است.