Weblate is a web based localization tool. Prior to version 5.16.1, the REST API's `AddonViewSet` (`weblate/api/views.py`, line 2831) uses `queryset = Addon.objects.all()` without overriding `get_queryset()` to scope results by user permissions. This allows any authenticated user (or anonymous users if `REQUIRE_LOGIN` is not set) to list and retrieve ALL addons across all projects and components via `GET /api/addons/` and `GET /api/addons/{id}/`. Version 5.16.1 fixes the issue.
Weblate REST API prior to version 5.16.1 exposes all addons across projects without proper permission checks, allowing any authenticated user to enumerate and access addon information. The vulnerability affects the AddonViewSet which fails to implement proper queryset filtering based on user permissions.
تحتوي واجهة REST API في Weblate على ثغرة في AddonViewSet حيث لا يتم تطبيق فحوصات الأذونات بشكل صحيح. يسمح هذا لأي مستخدم مصرح به بالوصول إلى قائمة كاملة بجميع الإضافات عبر جميع المشاريع والمكونات. تم إصلاح المشكلة في الإصدار 5.16.1.
Weblate REST API prior to version 5.16.1 exposes all addons across projects without proper permission checks, allowing any authenticated user to enumerate and access addon information. The vulnerability affects the AddonViewSet which fails to implement proper queryset filtering based on user permissions.
Upgrade Weblate to version 5.16.1 or later immediately. Implement network-level access controls to restrict API endpoint access. Enable REQUIRE_LOGIN setting to prevent anonymous access. Review and audit all addon access logs for unauthorized enumeration.
قم بترقية Weblate إلى الإصدار 5.16.1 أو أحدث فوراً. طبق عناصر تحكم في الوصول على مستوى الشبكة لتقييد الوصول إلى نقاط نهاية API. فعّل إعداد REQUIRE_LOGIN لمنع الوصول المجهول. راجع وتدقيق جميع سجلات الوصول إلى الإضافات للتحقق من الوصول غير المصرح به.