ProcessWire CMS version 3.0.255 and prior contain a server-side request forgery vulnerability in the admin panel's 'Add Module From URL' feature that allows authenticated administrators to supply arbitrary URLs to the module download parameter, causing the server to issue outbound HTTP requests to attacker-controlled internal or external hosts. Attackers can exploit differentiable error messages returned by the server to perform reliable internal network port scanning, host enumeration across RFC-1918 ranges, and potential access to cloud instance metadata endpoints.
ProcessWire CMS 3.0.255 and earlier contain a server-side request forgery (SSRF) vulnerability in the admin module download feature that allows authenticated administrators to scan internal networks and access metadata endpoints. While requiring admin authentication, the vulnerability enables reconnaissance of internal infrastructure, cloud metadata access, and potential lateral movement. No patch is currently available, making immediate compensating controls essential for Saudi organizations running ProcessWire.
Immediate Actions:
1. Audit all ProcessWire CMS installations in your environment and document versions
2. Restrict admin panel access to trusted IP ranges using firewall rules or WAF policies
3. Implement network segmentation to isolate ProcessWire servers from sensitive internal systems
4. Disable the 'Add Module From URL' feature if not actively used—modify admin permissions to prevent module installation
5. Monitor outbound HTTP/HTTPS connections from ProcessWire servers for suspicious destinations
Compensating Controls:
6. Implement egress filtering to block outbound connections to RFC-1918 ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) and 169.254.0.0/16 (metadata endpoints)
7. Deploy Web Application Firewall (WAF) rules to detect and block requests to internal IP ranges in module URLs
8. Enable detailed logging of all admin panel activities, particularly module installation attempts
9. Implement network-level monitoring for connections to cloud metadata endpoints (169.254.169.254, metadata.google.internal, etc.)
10. Review and restrict admin user accounts—remove unnecessary administrative privileges
Detection Rules:
- Alert on HTTP requests from ProcessWire to private IP ranges or 169.254.x.x
- Monitor for repeated failed connection attempts to different internal hosts
- Track admin panel access logs for 'Add Module From URL' feature usage
- Flag any module installation attempts with suspicious or internal URLs
الإجراءات الفورية:
1. قم بتدقيق جميع تثبيتات ProcessWire CMS في بيئتك وتوثيق الإصدارات
2. قيد الوصول إلى لوحة التحكم على نطاقات IP موثوقة باستخدام قواعد جدار الحماية أو سياسات WAF
3. تنفيذ تقسيم الشبكة لعزل خوادم ProcessWire عن الأنظمة الداخلية الحساسة
4. تعطيل ميزة 'إضافة وحدة من URL' إذا لم تكن قيد الاستخدام النشط—تعديل أذونات المسؤول لمنع تثبيت الوحدات
5. مراقبة الاتصالات الصادرة HTTP/HTTPS من خوادم ProcessWire للوجهات المريبة
الضوابط التعويضية:
6. تنفيذ تصفية الخروج لحظر الاتصالات الصادرة إلى نطاقات RFC-1918 (10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16) و169.254.0.0/16 (نقاط نهاية البيانات الوصفية)
7. نشر قواعد جدار تطبيقات الويب (WAF) للكشف عن حظر الطلبات إلى نطاقات IP الداخلية في عناوين URL للوحدات
8. تفعيل السجلات التفصيلية لجميع أنشطة لوحة التحكم، خاصة محاولات تثبيت الوحدات
9. تنفيذ المراقبة على مستوى الشبكة للاتصالات بنقاط نهاية البيانات الوصفية للسحابة (169.254.169.254، metadata.google.internal، وما إلى ذلك)
10. مراجعة وتقييد حسابات المستخدمين الإداريين—إزالة الامتيازات الإدارية غير الضرورية
قواعد الكشف:
- تنبيه على طلبات HTTP من ProcessWire إلى نطاقات IP خاصة أو 169.254.x.x
- مراقبة محاولات الاتصال الفاشلة المتكررة بأجهزة مضيفة داخلية مختلفة
- تتبع سجلات الوصول إلى لوحة التحكم لاستخدام ميزة 'إضافة وحدة من URL'
- وضع علامة على أي محاولات تثبيت وحدة بعناوين URL مريبة أو داخلية