Apache Solr VelocityResponseWriter Plug-In Remote Code Execution Vulnerability — The Apache Solr VelocityResponseWriter plug-in contains an unspecified vulnerability which can allow for remote code execution.
CVE-2019-17558 is a critical remote code execution vulnerability in Apache Solr's VelocityResponseWriter plugin, scoring 9.0 on the CVSS scale. An unauthenticated or low-privileged attacker can exploit this flaw to execute arbitrary code on the underlying server hosting Apache Solr. Active exploits are publicly available, making this a high-priority threat requiring immediate remediation. Organizations running Apache Solr in search, analytics, or data indexing capacities are at significant risk of full system compromise.
IMMEDIATE ACTIONS:
1. Identify all Apache Solr instances in your environment using asset discovery tools.
2. Disable the VelocityResponseWriter plugin immediately if not required by setting 'params.resource.loader.enabled' to false in solrconfig.xml.
3. Block external access to Solr admin interfaces (default port 8983) via firewall rules — Solr should never be exposed directly to the internet.
PATCHING GUIDANCE:
4. Upgrade Apache Solr to version 8.1.1 or later which addresses this vulnerability.
5. If immediate upgrade is not possible, apply vendor-recommended configuration hardening as a compensating control.
COMPENSATING CONTROLS:
6. Implement network segmentation to isolate Solr instances behind application-layer firewalls.
7. Enable authentication and authorization using Solr's built-in security plugins (BasicAuthPlugin or KerberosPlugin).
8. Deploy a Web Application Firewall (WAF) with rules targeting Solr-specific exploit patterns.
9. Restrict Solr API access to trusted internal IP ranges only.
DETECTION RULES:
10. Monitor for HTTP requests containing 'wt=velocity' or 'v.template' parameters in Solr query logs.
11. Alert on unusual process spawning from the Solr JVM process (e.g., bash, cmd, powershell as child processes).
12. Deploy SIEM rules to detect POST requests to /solr/*/select or /solr/*/query endpoints with velocity template parameters.
13. Check for indicators of compromise: unexpected outbound connections from Solr servers, new user accounts, or modified configuration files.
الإجراءات الفورية:
1. تحديد جميع نسخ Apache Solr في بيئتك باستخدام أدوات اكتشاف الأصول.
2. تعطيل مكوّن VelocityResponseWriter فوراً إذا لم يكن مطلوباً عبر ضبط 'params.resource.loader.enabled' على false في ملف solrconfig.xml.
3. حظر الوصول الخارجي إلى واجهات إدارة Solr (المنفذ الافتراضي 8983) عبر قواعد جدار الحماية — يجب عدم تعريض Solr مباشرة للإنترنت.
إرشادات التصحيح:
4. الترقية إلى Apache Solr الإصدار 8.1.1 أو أحدث الذي يعالج هذه الثغرة.
5. في حال تعذّر الترقية الفورية، تطبيق تصليب الإعدادات الموصى به من المورّد كإجراء تعويضي.
ضوابط التعويض:
6. تطبيق تجزئة الشبكة لعزل نسخ Solr خلف جدران حماية على مستوى طبقة التطبيقات.
7. تفعيل المصادقة والتفويض باستخدام مكوّنات الأمان المدمجة في Solr.
8. نشر جدار حماية تطبيقات الويب (WAF) مع قواعد تستهدف أنماط استغلال Solr.
9. تقييد الوصول إلى Solr API على نطاقات IP الداخلية الموثوقة فقط.
قواعد الكشف:
10. مراقبة طلبات HTTP التي تحتوي على معاملات 'wt=velocity' أو 'v.template' في سجلات استعلامات Solr.
11. التنبيه على عمليات غير معتادة تنبثق من عملية Solr JVM.
12. نشر قواعد SIEM للكشف عن طلبات POST إلى نقاط نهاية Solr مع معاملات قوالب velocity.
13. التحقق من مؤشرات الاختراق: الاتصالات الصادرة غير المتوقعة من خوادم Solr أو الحسابات الجديدة أو ملفات الإعداد المعدّلة.