Microsoft SQL Server Reporting Services Remote Code Execution Vulnerability — Microsoft SQL Server Reporting Services contains a deserialization vulnerability when handling page requests incorrectly. An authenticated attacker can exploit this vulnerability to execute code in the context of the Report Server service account.
CVE-2020-0618 is a critical remote code execution vulnerability in Microsoft SQL Server Reporting Services (SSRS) with a CVSS score of 9.0. An authenticated attacker can exploit a deserialization flaw in SSRS page request handling to execute arbitrary code under the Report Server service account context. A public exploit is available, significantly lowering the barrier for threat actors. Organizations running SSRS in enterprise environments must treat this as an urgent patching priority given the potential for lateral movement and data exfiltration.
IMMEDIATE ACTIONS:
1. Identify all SSRS instances across the environment using asset inventory tools or network scanning.
2. Isolate internet-facing SSRS instances immediately behind VPN or restrict access to trusted IP ranges only.
3. Audit SSRS service account privileges and apply least-privilege principles — ensure the service account does not have domain admin or excessive database rights.
PATCHING GUIDANCE:
4. Apply Microsoft Security Update KB4532097 (SQL Server 2012 SP4 GDR), KB4532098 (SQL Server 2014 SP2 CU18), KB4532095 (SQL Server 2014 SP3 CU4), KB4532096 (SQL Server 2016 SP2 CU11), KB4532097 (SQL Server 2017 CU19) as applicable to your version.
5. Verify patch installation via Windows Update or WSUS and confirm SSRS version post-patching.
COMPENSATING CONTROLS (if patching is delayed):
6. Restrict SSRS access to authenticated internal users only via network ACLs and firewall rules.
7. Enable enhanced logging on SSRS and forward logs to SIEM for anomaly detection.
8. Disable SSRS service temporarily if not business-critical.
9. Deploy a Web Application Firewall (WAF) in front of SSRS to detect and block deserialization attack patterns.
DETECTION RULES:
10. Monitor for unusual child processes spawned by ReportingServicesService.exe (e.g., cmd.exe, powershell.exe, wscript.exe).
11. Alert on SSRS service account performing network connections to external IPs or accessing sensitive directories.
12. Search SSRS logs for malformed or oversized page requests that may indicate exploitation attempts.
13. Deploy Sigma/YARA rules targeting deserialization payloads in HTTP POST requests to SSRS endpoints (/ReportServer).
الإجراءات الفورية:
1. تحديد جميع نسخ SSRS في البيئة باستخدام أدوات جرد الأصول أو فحص الشبكة.
2. عزل نسخ SSRS المكشوفة على الإنترنت فورًا خلف VPN أو تقييد الوصول إلى نطاقات IP موثوقة فقط.
3. مراجعة صلاحيات حساب خدمة SSRS وتطبيق مبدأ الحد الأدنى من الصلاحيات — التأكد من أن حساب الخدمة لا يمتلك صلاحيات مسؤول النطاق أو حقوق قاعدة البيانات المفرطة.
إرشادات التصحيح:
4. تطبيق تحديثات الأمان من Microsoft وفقًا لإصدار SQL Server المستخدم (KB4532097 أو KB4532098 أو KB4532095 أو KB4532096 حسب الإصدار).
5. التحقق من تثبيت التصحيح عبر Windows Update أو WSUS وتأكيد إصدار SSRS بعد التصحيح.
ضوابط التعويض (في حال تأخر التصحيح):
6. تقييد الوصول إلى SSRS للمستخدمين الداخليين المصادق عليهم فقط عبر قوائم التحكم بالوصول وقواعد جدار الحماية.
7. تفعيل التسجيل المحسّن على SSRS وإرسال السجلات إلى SIEM للكشف عن الشذوذات.
8. تعطيل خدمة SSRS مؤقتًا إذا لم تكن حيوية للأعمال.
9. نشر جدار حماية تطبيقات الويب (WAF) أمام SSRS للكشف عن أنماط هجمات إلغاء التسلسل وحجبها.
قواعد الكشف:
10. مراقبة العمليات الفرعية غير المعتادة التي تنشئها ReportingServicesService.exe مثل cmd.exe أو powershell.exe.
11. التنبيه عند قيام حساب خدمة SSRS بإجراء اتصالات شبكية بعناوين IP خارجية أو الوصول إلى مجلدات حساسة.
12. البحث في سجلات SSRS عن طلبات صفحات مشوهة أو كبيرة الحجم قد تشير إلى محاولات استغلال.
13. نشر قواعد Sigma/YARA التي تستهدف حمولات إلغاء التسلسل في طلبات HTTP POST إلى نقاط نهاية SSRS.