ثغرة Fastjson الحرجة باتت هدفاً لهجمات فعلية على تطبيقات جافا، فيما لا يتوفر حتى الآن تحديث نهائي لإصدارات 1.x المتأثرة.
ما هي ثغرة Fastjson التي تضرب تطبيقات جافا؟
تواجه مكتبة Fastjson الشهيرة في بيئات Java خطراً أمنياً بالغاً، بعد تأكيد استغلال ثغرة تنفيذ أوامر عن بُعد دون الحاجة إلى تسجيل دخول أو مصادقة مسبقة. وتكمن الخطورة في أن المهاجم يستطيع إرسال طلب JSON خبيث لتشغيل شيفرة بصلاحيات عملية Java نفسها.
الثغرة مسجلة بالمعرف CVE-2026-16723 وحصلت على درجة خطورة 9.0 من 10، ما يضعها ضمن الفئة الحرجة. ووفق متابعة تيكبامين، فإن الاستهداف الحالي يركز على التطبيقات المبنية على Spring Boot عندما تتوافر ظروف تقنية محددة داخل بيئة التشغيل.
ما الإصدارات المتأثرة من Fastjson 1.x؟
الإصدارات المتأثرة تشمل Fastjson من 1.2.68 حتى 1.2.83، لكن الاستغلال لا ينجح في كل الحالات. نجاح الهجوم يرتبط بوجود تطبيق Spring Boot على هيئة fat-JAR قابل للوصول عبر الشبكة، مع مسار يستقبل بيانات JSON يتحكم بها المهاجم.
- الإصدارات المتأثرة: من 1.2.68 إلى 1.2.83
- البيئة الأكثر عرضة: Spring Boot executable fat-JAR
- الوصول المطلوب: نقطة شبكة تستقبل JSON من المستخدم
- الإعداد الخطير: SafeMode معطل، وهو الوضع الافتراضي
- معلومة مهمة: لا يشترط تفعيل AutoType لنجاح السلسلة
لماذا تختلف هذه الثغرة عن هجمات سابقة؟
اللافت هنا أن المهاجم لا يحتاج إلى ما يسمى gadget على classpath، وهي نقطة كانت عادةً تعقّد مثل هذه الهجمات. لذلك تبدو ثغرة Fastjson أكثر عملية في سيناريوهات حقيقية، خصوصاً داخل الخدمات التي تعتمد على التحليل المباشر لمدخلات JSON.
كيف يتم استغلال الثغرة داخل Spring Boot؟
التحليل التقني يشير إلى أن قيمة @type التي يتحكم بها المهاجم يمكن أن تُستغل للوصول إلى مسار تحميل موارد صنفية داخل التطبيق. وفي حال كان التطبيق مبنياً كـ fat-JAR متوافق، يمكن تمرير مسار JAR متداخل يجلب شيفرة خبيثة يسيطر عليها المهاجم.
بعد ذلك، قد تُستخدم annotation من نوع @JSONType كإشارة ثقة تسمح بتمرير فحوصات النوع وتحميل الصنف الخبيث. كما وُصفت آلية أخرى على الإصدارات الأحدث من JDK تعتمد على تنزيل JAR بعيد ثم الإشارة إليه عبر /proc/self/fd.
- الدوال المعرضة: JSON.parse
- الدوال المعرضة: JSON.parseObject(String)
- الدوال المعرضة: JSON.parseObject(String, Class)
- حتى الربط مع Class ثابت لا يكفي إذا احتوى الكائن على Object أو Map
ما الأنظمة أو أساليب النشر غير المتأثرة؟
ليست كل أساليب النشر معرضة للخطر. فالحالات غير المتأثرة تشمل ملفات JAR العادية غير المبنية كـ fat-JAR، وكذلك بعض صيغ uber-JAR العامة، إلى جانب تطبيقات WAR التي تعمل فوق Tomcat أو Jetty.
هذا التفصيل مهم لفرق التطوير وعمليات الأمن، لأنه يساعد على تضييق نطاق الفحص بسرعة. كما ذكر تيكبامين، فإن تقييم بنية النشر لا يقل أهمية عن مراجعة رقم الإصدار نفسه.
كيف تحمي تطبيقك من ثغرة Fastjson الآن؟
حتى تاريخ 25 يوليو 2026، لا يوجد إصدار مصحح نهائي من سلسلة Fastjson 1.x. ولهذا تُنصح المؤسسات التي لا تستطيع الانتقال فوراً إلى Fastjson2 بتفعيل SafeMode عبر الخيار -Dfastjson.parser.safeMode=true، أو استخدام الحزمة com.alibaba:fastjson:1.2.83_noneautotype كحل تخفيفي مؤقت.
- فعّل SafeMode فوراً على بيئات الإنتاج
- راجع جميع نقاط استقبال JSON المكشوفة للشبكة
- افحص التطبيقات المبنية بصيغة Spring Boot fat-JAR
- خطط للترحيل إلى Fastjson2 كحل طويل الأجل
الخلاصة أن ثغرة Fastjson ليست مجرد تحذير نظري، بل تهديد فعلي يتطلب استجابة عاجلة من فرق التطوير والأمن، خصوصاً مع رصد نشاط هجومي ضد قطاعات متعددة.