Elasticsearch Remote Code Execution Vulnerability — Elasticsearch enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code.
Elasticsearch versions prior to 1.2.0 contain a critical remote code execution vulnerability through dynamic scripting functionality. Attackers can exploit enabled MVEL scripting to execute arbitrary Java code remotely without authentication. Active exploits exist in the wild targeting this decade-old but still prevalent vulnerability.
تسمح هذه الثغرة الأمنية الحرجة للمهاجمين بتنفيذ تعليمات برمجية تعسفية على خوادم Elasticsearch من خلال استغلال ميزة البرمجة الديناميكية MVEL الممكّنة افتراضياً في الإصدارات القديمة. يمكن للمهاجم إرسال استعلامات خبيثة تحتوي على تعبيرات MVEL لتنفيذ أوامر نظام التشغيل والوصول الكامل للخادم. تشكل هذه الثغرة خطراً كبيراً على المؤسسات التي تستخدم إصدارات قديمة من Elasticsearch خاصة في بيئات البيانات الضخمة وأنظمة البحث والتحليل. العديد من الأنظمة القديمة في المملكة لا تزال عرضة لهذا الاستغلال بسبب عدم التحديث المنتظم.
تحتوي إصدارات Elasticsearch الأقدم من 1.2.0 على ثغرة حرجة لتنفيذ التعليمات البرمجية عن بعد من خلال وظيفة البرمجة الديناميكية. يمكن للمهاجمين استغلال برمجة MVEL الممكّنة لتنفيذ تعليمات Java البرمجية التعسفية عن بعد دون مصادقة. توجد استغلالات نشطة تستهدف هذه الثغرة القديمة ولكن لا تزال منتشرة.
1. Immediately upgrade all Elasticsearch instances to version 1.2.0 or later, preferably the latest stable release with security patches applied.
2. Disable dynamic scripting in elasticsearch.yml configuration file by setting 'script.disable_dynamic: true' if upgrade is not immediately possible, and implement network segmentation to restrict access to Elasticsearch ports (9200, 9300) from trusted sources only.
3. Conduct comprehensive security audit of all Elasticsearch deployments, review access logs for suspicious MVEL script execution attempts, implement authentication mechanisms, and establish continuous vulnerability scanning and patch management procedures.
1. الترقية الفورية لجميع نسخ Elasticsearch إلى الإصدار 1.2.0 أو أحدث، ويفضل أحدث إصدار مستقر مع تطبيق التحديثات الأمنية.
2. تعطيل البرمجة الديناميكية في ملف التكوين elasticsearch.yml عبر تعيين 'script.disable_dynamic: true' إذا لم تكن الترقية ممكنة فوراً، وتطبيق تجزئة الشبكة لتقييد الوصول إلى منافذ Elasticsearch (9200، 9300) من مصادر موثوقة فقط.
3. إجراء تدقيق أمني شامل لجميع نسخ Elasticsearch المنشورة، ومراجعة سجلات الوصول للكشف عن محاولات تنفيذ برمجيات MVEL المشبوهة، وتطبيق آليات المصادقة، وإنشاء إجراءات مستمرة لفحص الثغرات وإدارة التحديثات.