
Reolink Duo 2 WiFi v1.0.280 - ثغرة تعداد الحسابات
سبتمبر 2024
CVE: https://www.cve.org/CVERecord?id=CVE-2024-48644
NVD: https://nvd.nist.gov/vuln/detail/CVE-2024-48644
Tenable: https://www.tenable.com/cve/CVE-2024-48644
ثغرة تعداد الحسابات في مكون تسجيل الدخول لكاميرا Reolink Duo 2 WiFi (إصدار البرنامج الثابت v3.0.0.1889_23031701) تسمح للمهاجمين عن بُعد غير الموثَقين بتحديد حسابات المستخدمين الصالحة عبر محاولات تسجيل الدخول. يمكن أن يؤدي ذلك إلى تعداد حسابات المستخدمين وربما تسهيل هجمات أخرى، مثل تخمين كلمات المرور. تنشأ الثغرة من استجابة التطبيق بشكل مختلف لمحاولات تسجيل الدخول بأسماء مستخدمين صالحة وغير صالحة.
Reolink Duo Wifi v3.0.0.1889_23031701
Reolink Duo 2 WiFi - https://reolink.com/br/product/reolink-duo-wifi/
يمكن إعادة إنتاج هذه الثغرة من خلال محاولة تسجيل الدخول بأسماء مستخدمين افتراضية أو شائعة. تتيح الاستجابات المختلفة للتطبيق لأسماء المستخدمين الصالحة وغير الصالحة للمهاجمين المحتملين تمييز الحسابات الصالحة. على وجه التحديد، يستجيب التطبيق بـ password wrong عند تقديم اسم مستخدم صالح مع كلمة مرور غير صحيحة، و login failed عند تقديم اسم مستخدم غير صالح.
فيما يلي إثبات مفهوم من ثلاث خطوات لإعادة إنتاج وإظهار الثغرة:
عند الوصول إلى صفحة تسجيل الدخول، يُلاحظ أن حقل اسم المستخدم يُملأ تلقائياً بـ admin. يشير هذا إلى أن admin قد يكون اسم مستخدم افتراضي.

عند استخدام كلمة مرور غير صحيحة، يستجيب التطبيق بمصفوفة JSON تحتوي على كائن. داخل هذا الكائن، تتضمن الخاصية error كائناً آخر بخصائص: detail و rspCode. ترجع الخاصية detail تحديداً الرسالة password wrong.


عند استخدام اسم مستخدم غير صالح، يستجيب التطبيق بمصفوفة JSON تحتوي على كائن. يتضمن هذا الكائن خاصية error، والتي تحتوي بدورها على كائن بخصائص: detail و rspCode. في هذه الحالة، ترجع الخاصية detail الرسالة login failed، مما يشير إلى أن اسم المستخدم غير موجود.


للتخفيف من ثغرة تعداد الحسابات، يُوصى بتنفيذ رسالة خطأ عامة لجميع محاولات تسجيل الدخول الفاشلة، بغض النظر عن السبب. وهذا يعني أنه سواء كان اسم المستخدم صالحاً أم لا، أو كانت كلمة المرور صحيحة أم لا، يجب أن يعيد التطبيق دائماً رسالة عامة مثل Invalid username or password. يمنع هذا المهاجمين المحتملين من التمييز بين أسماء المستخدمين الصالحة وغير الصالحة بناءً على استجابات التطبيق.
CWE-200: تعريض المعلومات الحساسة لممثل غير مصرح له
OWASP - 04 اختبار تعداد الحسابات وحسابات المستخدمين القابلة للتخمين
اكتشفها Rosemberg Silva