21
آسیبپذیری Splunk Enterprise با شناسه CVE-2026-20253 یک ضعف بحرانی در نسخههای مشخص این پلتفرم محسوب میشود که میتواند به مهاجمان اجازه دهد بدون احراز هویت به اجرای کد از راه دور (RCE) دست یابند. این آسیبپذیری Splunk Enterprise با امتیاز 9.8 در CVSS ارزیابی شده و در صورت عدم اعمال پچ، میتواند ریسک جدی برای زیرساختهای سازمانی ایجاد کند.
جزئیات فنی آسیبپذیری Splunk Enterprise
شرکت Splunk که اکنون زیرمجموعه Cisco محسوب میشود، بهروزرسانیهای امنیتی لازم برای رفع این آسیبپذیری را منتشر کرده است. طبق هشدار رسمی این شرکت، در نسخههای پیش از 10.2.4 و 10.0.7، یک کاربر بدون احراز هویت میتواند از طریق endpoint سرویس PostgreSQL sidecar اقدام به ایجاد یا خالیسازی (truncate) فایلهای دلخواه کند. ریشه اصلی آسیبپذیری Splunk Enterprise در عدم وجود کنترلهای احراز روی این endpoint است؛ مسئلهای که به هر کاربر دارای دسترسی شبکهای اجازه میدهد بدون احراز هویت، فایلهای دلخواه را روی سیستم ایجاد یا دستکاری کند. نسخههای آسیبپذیر و نسخههای پچ شده Splunk Enterprise به شرح زیر هستند:- 0.0 تا 10.0.6: پچشده در نسخه 10.0.7
- 2.0 تا 10.2.3: پچشده در نسخه 10.2.4
- 4: تحت تأثیر این آسیبپذیری قرار ندارد.
مسیر سوءاستفاده از آسیبپذیری Splunk Enterprise
تیم تحقیقاتی watchTowr Labs با انتشار جزئیات فنی بیشتری از CVE-2026-20253 اعلام کرد که این ضعف امنیتی میتواند از طریق دو endpoint زیر، برای دستیابی به اجرای کد از راه دور پیش از احراز هویت روی سیستمهای آسیبپذیر مورد سوءاستفاده قرار گیرد:/v1/postgres/recovery/backup
/v1/postgres/recovery/restore
نحوه سوءاستفاده فنی از این ضعف در این سناریو بهصورت زیر قابل توضیح است:
- مهاجم به یک پایگاه داده تحت کنترل خود متصل میشود و با استفاده از /backup، محتوای آن را در یک فایل دلخواه ذخیره میکند.
- در ادامه، مهاجم با استفاده از /restore اقدام به بارگذاری دامپ (Dump) پایگاه داده تحت کنترل خود در نمونه لوکال PostgreSQL میکند. در این مرحله، پارامتر passfile نیز تعریف میشود که مسیر فایل .pgpass را مشخص میکند؛ فایلی که در مسیر /opt/splunk/var/packages/data/postgres/.pgpass قرار داشته و شامل رمز عبور کاربر postgres_admin است.
- در نتیجه، کوئریهای SQL موجود در دامپ توسط نمونه PostgreSQL در Splunk اجرا میشوند.
تحلیل فنی پژوهشگران watchTowr Labs از زنجیره حمله
پژوهشگران امنیتی Piotr Bazydlo و Yordan Ganchev از watchTowr Labs در تحلیل خود توضیح دادهاند که وقتی امکان بازیابی SQL تحت کنترل مهاجم در نمونه لوکال PostgreSQL فراهم شود، میتوان یک قالب دامپ پایگاه داده (Database Dump Template) ایجاد کرد که قابلیت نوشتن کنترلشده فایل را در اختیار مهاجم قرار میدهد. به گفته این پژوهشگران، پس از آنکه مهاجم بتواند از طریق این زنجیره با نمونه لوکال PostgreSQL تعامل داشته باشد و SQL دلخواه خود را در آن بازیابی کند، مسیر سوءاستفاده بهسرعت به سمت دستیابی به قابلیت نوشتن فایل دلخواه روی فایلسیستم Splunk پیش میرود. در این مرحله، مهاجم با در اختیار داشتن این قابلیت میتواند حمله را یک گام جلوتر ببرد و آن را به اجرای کد از راه دور تبدیل کند. یکی از سناریوهای مطرحشده، بازنویسی یک اسکریپت پایتون (Python) است که Splunk آن را بهطور مکرر اجرا میکند. مسیر زیر نمونهای از این اسکریپت است:/opt/splunk/etc/apps/splunk_secure_gateway/bin/ssg_enable_modular_input.py
در این حالت، مهاجم با تغییر محتوای این فایل و قرار دادن پیلود مخرب در آن، میتواند باعث شود در اجرای بعدی اسکریپت توسط Splunk، کد دلخواه او در محیط هدف اجرا شود.
زنجیره کامل حمله
مراحل کامل سوءاستفاده از آسیبپذیری Splunk Enterprise به شرح زیر است:- ایجاد یک پایگاه داده و پیکربندی آن بهگونهای که کاربر بتواند بدون رمز عبور احراز هویت شود و همچنین دسترسیهای لازم برای فراخوانی توابعی مانند lo_export را دریافت کند.
- استفاده از /backup برای استخراج پایگاه داده از راه دور و ذخیره آن روی فایلسیستم Splunk
- استفاده از /restore برای بارگذاری دامپ پایگاه داده آلوده، که در جریان فرآیند بازیابی منجر به اجرای تابع مخرب شده و در نهایت یک اسکریپت پایتون تحت کنترل مهاجم روی فایلسیستم Splunk نوشته میشود.