شهدت سجلات Maven Central، وهي من أبرز مستودعات تطوير جافا، عملية تسلل لحملة برمجيات خبيثة جديدة، حيث تمكن المهاجمون من انتحال صفة امتداد لمكتبة Jackson JSON الشرعية. هذا التطور يمثل إحدى أوائل الحالات التي يتم فيها اكتشاف برمجيات خبيثة متطورة في Maven Central عبر هجوم “typosquatting”، وهو ما يثير قلق مطوري البرمجيات حول العالم.
تم نشر الحزمة الضارة تحت مساحة اسم org.fasterxml.jackson.core/jackson-databind، مسببة ارتباكاً بذكاء مع المكتبة الأصلية التي تعمل تحت com.fasterxml.jackson.core. هذا التشابه الطفيف في مساحات الأسماء يسهل على المطورين تضمين الحزمة الضارة في مشاريعهم دون قصد.
استراتيجيات تسلل المهاجمين في Maven Central
أظهرت هذه الحملة الخبيثة تخطيطاً وتنفيذاً دقيقين. قام المهاجمون بإنشاء نطاق وهمي، fasterxml.org، ليعكس النطاق الشرعي fasterxml.com، مستخدمين نفس استراتيجية استبدال .com بـ .org التي ظهرت في مساحة اسم الحزمة.
تم تسجيل النطاق الوهمي في 17 ديسمبر 2025، قبل ثمانية أيام فقط من اكتشاف الباحثين في Aikido للتهديد. هذه الفترة القصيرة بين تسجيل النطاق ونشر البرمجية الخبيثة هي نمط شائع في عمليات البرمجيات الخبيثة، بهدف تقليل فرص الكشف المبكر والحظر.
تم الإبلاغ عن الحزمة إلى Maven Central وتمت إزالتها في غضون 1.5 ساعة من الاكتشاف، إلا أنها كانت كافية لتهديد أنظمة المطورين المحتملة. ومع ذلك، فإن إجراءات الأمان المستمرة ضرورية للحماية من التهديدات المستقبلية.
طبقات الإخفاء وآليات العمل
وظفت البرمجية الخبيثة طبقات متعددة من الإخفاء لإخفاء غرضها الحقيقي. بدت الشيفرة داخل ملف jar مشوشة للغاية، مع محاولات لإرباك حتى أدوات التحليل المستندة إلى التعلم الآلي باستخدام تقنيات “prompt injection”.
عند فتح الشيفرة في محررات لا تقوم بمعالجة أحرف Unicode بشكل صحيح، تظهر ضوضاء كبيرة تجعل الفحص اليدوي صعباً. ومع ذلك، بعد فحص دقيق، تمكن فريق البحث بنجاح من فك تشفير الشيفرة الضارة، وكشف وظيفتها الحقيقية كبرمجية تنزيل “trojan downloader” تتواصل مع خادم قيادة وسيطرة وتنفذ حمولات ضارة على الأنظمة المصابة.
آلية العدوى وتسليم الحمولات
تعمل البرمجية الخبيثة من خلال عملية عدوى من سبع مراحل تبدأ عندما يضيف المطور الوصف التبعي الضار إلى ملف pom.xml الخاص به. بمجرد تضمينه، يتم تنفيذ الحزمة تلقائياً عند بدء تشغيل تطبيق Spring Boot، حيث يقوم Spring بفحص فئات @Configuration ويكتشف JacksonSpringAutoConfiguration.
تتحقق البرمجية الخبيثة من وجود ApplicationRunner.class، والذي يكون دائماً موجوداً في بيئات Spring Boot، مما يضمن تشغيل الشيفرة الضارة دون الحاجة إلى استدعاءات صريحة من المطور، مما يعزز فعاليتها.
ميزات استمرارية الكشف عن النظام
تتضمن آلية العدوى فحصاً للاستمرارية، حيث تبحث البرمجية الخبيثة عن ملف باسم .idea.pid في الدليل الحالي. يمزج اسم الملف هذا بذكاء مع ملفات مشروع IntelliJ IDEA، مما يجعله أقل إثارة للريبة للمطورين الذين قد يلاحظون ملفات غير عادية في بنية مشروعهم.
بعد ذلك، تقوم البرمجية الخبيثة ببصمة بيئية عن طريق التحقق من System.getProperty("os.name") لتحديد ما إذا كان النظام يعمل بنظام Windows أو macOS أو Linux. تُستخدم هذه المعلومات لتنزيل الحزمة المناسبة لنظام التشغيل المكتشف. تشير هذه القدرة إلى تصميم مدروس لزيادة فرص النجاح.
يتم الاتصال بخادم القيادة والسيطرة عبر "http[:]//m[.]fasterxml[.]org:51211/config[.]txt، والذي يوفر بيانات تكوين مشفرة بنظام AES. تستخدم البرمجية الخبيثة مفتاح AES-ECB ثابت (9237527890923496) لفك تشفير عناوين URL للحمولات لكل منصة مدعومة.
بعد تنزيل الملف التنفيذي باسم payload.bin إلى دليل النظام المؤقت، تقوم البرمجية الخبيثة بتنفيذه مع إعادة توجيه الإخراج إلى /dev/null في أنظمة Unix أو NUL في أنظمة Windows لقمع أي نشاط مرئي. تتعمد حمولة Windows استخدام اسم svchosts.exe، وهو اسم مشابه لعملية svchost.exe الشرعية، لتجنب الكشف. يؤكد تحليل الحمولات التي تم تنزيلها عبر VirusTotal أن ملفات Linux و macOS هي “Cobalt Strike beacons”، وهي أداة اختبار اختراق قوية غالباً ما يستخدمها مشغلو برامج الفدية ومجموعات التهديدات المتقدمة المستمرة للوصول عن بعد وسرقة بيانات الاعتماد والحركة الجانبية عبر الشبكات.

