Windmill versions 1.56.0 through 1.614.0 contain a missing authorization vulnerability that allows users with the Operator role to perform prohibited entity creation and modification actions via the backend API. Although Operators are documented and priced as unable to create or modify entities, the API does not enforce the Operator restriction on workspace endpoints, allowing an Operator to create and update scripts, flows, apps, and raw_apps. Since Operators can also execute scripts via the jobs API, this allows direct privilege escalation to remote code execution within the Windmill deployment. This vulnerability has existed since the introduction of the Operator role in version 1.56.0.
Windmill versions 1.56.0-1.614.0 contain a critical authorization bypass allowing Operator-role users to create and modify entities (scripts, flows, apps) they should not have access to, leading to privilege escalation and remote code execution. This vulnerability has persisted since the Operator role's introduction and affects all deployments using these versions. No patch is currently available, requiring immediate compensating controls.
IMMEDIATE ACTIONS:
1. Audit all Windmill deployments to identify versions 1.56.0-1.614.0
2. Review audit logs for Operator role API calls to workspace endpoints (script creation, flow creation, app creation, raw_app endpoints)
3. Identify and disable all Operator accounts not requiring active use
4. Implement network segmentation to restrict Windmill API access
COMPENSATING CONTROLS (until patch available):
1. Deploy API gateway/WAF rules to block Operator role requests to: /api/w/*/scripts, /api/w/*/flows, /api/w/*/apps, /api/w/*/raw_apps endpoints
2. Implement role-based API access controls at reverse proxy level
3. Enable comprehensive API logging and alerting for all workspace entity creation/modification attempts
4. Restrict job execution API access to authenticated Admin roles only
5. Monitor for suspicious script/flow creation patterns
DETECTION RULES:
- Alert on Operator role API calls to workspace entity creation endpoints
- Monitor for script execution by Operator-created entities
- Track privilege escalation attempts via jobs API
- Flag rapid entity creation/modification by Operator accounts
PATCHING:
- Await vendor patch release; do not upgrade to unverified versions
- When patch available, test in isolated environment before production deployment
الإجراءات الفورية:
1. تدقيق جميع نشرات Windmill لتحديد الإصدارات 1.56.0-1.614.0
2. مراجعة سجلات التدقيق لاستدعاءات API لدور المشغل إلى نقاط نهاية مساحة العمل
3. تحديد وتعطيل جميع حسابات المشغل التي لا تتطلب استخدام نشط
4. تنفيذ تقسيم الشبكة لتقييد وصول API في Windmill
الضوابط التعويضية (حتى توفر التصحيح):
1. نشر قواعد بوابة API/WAF لحظر طلبات دور المشغل إلى نقاط النهاية
2. تنفيذ ضوابط وصول API قائمة على الأدوار على مستوى الوكيل العكسي
3. تفعيل تسجيل التنبيهات الشاملة لجميع محاولات إنشاء/تعديل كيانات مساحة العمل
4. تقييد وصول API تنفيذ الوظائف إلى أدوار المسؤول المصرح بها فقط
5. مراقبة أنماط إنشاء/تعديل البرامج النصية المريبة
قواعد الكشف:
- تنبيه على استدعاءات API لدور المشغل إلى نقاط نهاية إنشاء كيانات مساحة العمل
- مراقبة تنفيذ البرامج النصية بواسطة الكيانات التي أنشأها المشغل
- تتبع محاولات تصعيد الامتيازات عبر API الوظائف
- وضع علامة على الإنشاء/التعديل السريع للكيانات بواسطة حسابات المشغل
التصحيح:
- انتظر إصدار تصحيح البائع؛ لا تقم بالترقية إلى إصدارات غير تم التحقق منها
- عند توفر التصحيح، اختبر في بيئة معزولة قبل نشر الإنتاج