OpenSTAManager is an open source management software for technical assistance and invoicing. Prior to version 2.10.2, the oauth2.php file in OpenSTAManager is an unauthenticated endpoint ($skip_permissions = true). It loads a record from the zz_oauth2 table using the attacker-controlled GET parameter state, and during the OAuth2 configuration flow calls unserialize() on the access_token field without any class restriction. This issue has been patched in version 2.10.2.
CVE-2026-29782 is a critical PHP object injection vulnerability in OpenSTAManager's unauthenticated OAuth2 endpoint that allows remote code execution through unsafe deserialization. The vulnerability affects all versions prior to 2.10.2 and is actively exploitable without authentication. Organizations using OpenSTAManager for technical assistance and invoicing management face immediate risk of system compromise.
IMMEDIATE ACTIONS:
1. Identify all OpenSTAManager instances in your environment and document their versions
2. Immediately isolate or restrict network access to oauth2.php endpoint if patching cannot be done immediately
3. Review access logs for suspicious requests to /oauth2.php with unusual 'state' parameters
4. Check for signs of exploitation: unexpected PHP processes, new user accounts, modified files in web root
PATCHING:
1. Upgrade OpenSTAManager to version 2.10.2 or later immediately
2. Test patches in non-production environment first
3. Verify oauth2.php functionality post-patch
COMPENSATING CONTROLS (if immediate patching not possible):
1. Implement Web Application Firewall (WAF) rules to block requests to oauth2.php containing serialized PHP objects (detect 'O:' patterns in GET parameters)
2. Restrict network access to oauth2.php to known OAuth2 providers only
3. Implement rate limiting on oauth2.php endpoint
4. Disable PHP error reporting to prevent information disclosure
DETECTION:
1. Monitor for HTTP requests to oauth2.php with GET parameter 'state' containing base64-encoded serialized objects
2. Alert on any POST requests to oauth2.php
3. Monitor for PHP execution from web-accessible directories
4. Track failed and successful OAuth2 authentication attempts
5. Search logs for patterns: 'O:' in URL parameters, 'unserialize' in error logs
الإجراءات الفورية:
1. حدد جميع مثيلات OpenSTAManager في بيئتك وقثق إصداراتها
2. قم بعزل أو تقييد الوصول إلى نقطة نهاية oauth2.php فوراً إذا لم يكن بالإمكان تطبيق التصحيح
3. راجع سجلات الوصول للطلبات المريبة إلى /oauth2.php مع معاملات 'state' غير عادية
4. تحقق من علامات الاستغلال: عمليات PHP غير متوقعة، حسابات مستخدمين جديدة، ملفات معدلة في جذر الويب
التصحيح:
1. قم بترقية OpenSTAManager إلى الإصدار 2.10.2 أو أحدث فوراً
2. اختبر التصحيحات في بيئة غير الإنتاج أولاً
3. تحقق من وظيفة oauth2.php بعد التصحيح
الضوابط البديلة (إذا لم يكن التصحيح الفوري ممكناً):
1. طبق قواعد جدار حماية تطبيقات الويب (WAF) لحظر الطلبات إلى oauth2.php التي تحتوي على كائنات PHP مسلسلة
2. قيد الوصول إلى oauth2.php إلى موفري OAuth2 المعروفين فقط
3. طبق تحديد معدل على نقطة نهاية oauth2.php
4. عطل تقارير أخطاء PHP لمنع الكشف عن المعلومات
الكشف:
1. راقب طلبات HTTP إلى oauth2.php مع معامل GET 'state' يحتوي على كائنات PHP مسلسلة مشفرة بـ base64
2. أصدر تنبيهات لأي طلبات POST إلى oauth2.php
3. راقب تنفيذ PHP من الدلائل التي يمكن الوصول إليها عبر الويب
4. تتبع محاولات المصادقة الفاشلة والناجحة في OAuth2
5. ابحث في السجلات عن الأنماط: 'O:' في معاملات URL، 'unserialize' في سجلات الأخطاء