free5GC UDR is the user data repository (UDR) for free5GC, an an open-source project for 5th generation (5G) mobile core networks. In versions up to and including 1.4.2, a fail-open request handling flaw in the UDR service causes the `/nudr-dr/v2/policy-data/subs-to-notify` POST handler to continue processing requests even after request body retrieval or deserialization errors. This may allow unintended creation of Policy Data notification subscriptions with invalid, empty, or partially processed input, depending on downstream processor behavior. As of time of publication, a patched version is not available.
free5GC UDR versions up to 1.4.2 contain a fail-open vulnerability in policy data notification subscription handling that allows invalid requests to be processed due to improper error handling. This could enable creation of malformed subscriptions that bypass intended validation, potentially disrupting 5G core network operations. While no public exploit exists, the vulnerability affects open-source 5G infrastructure commonly deployed in telecom environments.
Immediate Actions:
1. Identify all free5GC UDR deployments in your 5G infrastructure and document versions
2. Implement network segmentation to restrict access to the `/nudr-dr/v2/policy-data/subs-to-notify` endpoint
3. Enable comprehensive logging and monitoring of UDR API requests and responses
Patching Guidance:
1. Upgrade free5GC to the latest patched version (verify patch availability from free5GC project)
2. Test patches in non-production environments before deployment
3. Coordinate upgrades with telecom operations to minimize service impact
Compensating Controls (if patch unavailable):
1. Implement API gateway validation to reject malformed requests before reaching UDR
2. Deploy Web Application Firewall (WAF) rules to validate request body structure and content
3. Implement strict input validation at the application layer
4. Use rate limiting on the affected endpoint to prevent abuse
Detection Rules:
1. Monitor for POST requests to `/nudr-dr/v2/policy-data/subs-to-notify` with empty or malformed JSON bodies
2. Alert on successful HTTP 200/201 responses following request body parsing errors
3. Track subscription creation events with null, empty, or incomplete policy data fields
4. Monitor UDR logs for deserialization errors followed by continued processing
الإجراءات الفورية:
1. حدد جميع نشرات free5GC UDR في البنية التحتية 5G الخاصة بك وقم بتوثيق الإصدارات
2. طبق تقسيم الشبكة لتقييد الوصول إلى نقطة النهاية `/nudr-dr/v2/policy-data/subs-to-notify`
3. فعّل تسجيل المراقبة الشاملة لطلبات واستجابات API الخاصة بـ UDR
إرشادات التصحيح:
1. قم بترقية free5GC إلى أحدث إصدار مصحح (تحقق من توفر التصحيح من مشروع free5GC)
2. اختبر التصحيحات في بيئات غير الإنتاج قبل النشر
3. نسق الترقيات مع عمليات الاتصالات لتقليل تأثير الخدمة
الضوابط البديلة (إذا لم يكن التصحيح متاحاً):
1. طبق التحقق من بوابة API لرفض الطلبات المشوهة قبل وصولها إلى UDR
2. نشر قواعد جدار حماية تطبيقات الويب للتحقق من صحة هيكل ومحتوى نص الطلب
3. طبق التحقق الصارم من المدخلات على مستوى التطبيق
4. استخدم تحديد معدل على نقطة النهاية المتأثرة لمنع الإساءة
قواعد الكشف:
1. راقب طلبات POST إلى `/nudr-dr/v2/policy-data/subs-to-notify` مع أجسام JSON فارغة أو مشوهة
2. تنبيه على استجابات HTTP 200/201 الناجحة بعد أخطاء تحليل نص الطلب
3. تتبع أحداث إنشاء الاشتراك مع حقول بيانات السياسة الفارغة أو غير المكتملة أو الفارغة
4. راقب سجلات UDR لأخطاء إلغاء التسلسل متبوعة بمعالجة مستمرة