اگر از Metabase استفاده میکنید، بهخصوص اگر آن را بهصورت Self-hosted اجرا میکنید، این هشدار امنیتی را جدی بگیرید.
اخیراً یک آسیبپذیری ناشناخته (0-day) در نسخههای Metabase 1.58 و بالاتر مورد سوءاستفاده قرار گرفته است. این آسیبپذیری میتواند به مهاجم اجازه دهد SQL دلخواه روی دیتابیس داخلی Metabase اجرا کند و در نهایت به دسترسی Administrator برسد.
در صورت موفقیت حمله، مهاجم میتواند:
تنظیمات Metabase را تغییر دهد
credentialهای ذخیرهشده دیتابیسها را سرقت کند
به دادههای قابل دسترس از طریق connectionها دسترسی پیدا کند
دادهها را Export کند
☁️ کاربران Metabase Cloud:
Instanceهای Cloud توسط Metabase بهروزرسانی و Patch شدهاند.
🖥 کاربران Self-hosted:
اگر نسخه شما آسیبپذیر باشد، فوراً به آخرین Point Release نسخه فعلی خود Upgrade کنید.
🔍 نشانه احتمالی حمله
در لاگها به دنبال این الگو بگردید:
POST /api/session/reset_password → HTTP 400
GET /api/user/current → HTTP 200
اگر این الگو را در Application Log یا Server Ingress Log مشاهده کردید، احتمال دارد Instance شما Compromised شده باشد.
⚠️ بعد از Upgrade این موارد را بررسی کنید
اگر endpoint زیر از اینترنت قابل دسترسی بوده:
/api/session/reset_password
پس از Upgrade:
تمام Sessionهای فعال کاربران را با حذف رکوردهای جدول
core_session باطل کنید.API Keyها را بررسی و موارد ناشناس را حذف کنید.
حسابهای Administrator را برای تغییرات غیرمنتظره بررسی کنید.
Credentialهای تمام دیتابیسهای متصل به Metabase را Rotate کنید.
Logهای Data Warehouse را برای دسترسی غیرمجاز بررسی کنید.
Activity و Query History متabase را برای فعالیت غیرعادی بررسی کنید.
📌 نکته مهم درباره نسخهها
صرفاً Upgrade به یک نسخه بالاتر کافی نیست؛ باید به آخرین Point Release همان شاخه بروید.
برای مثال:
0.58.6 ❌ آسیبپذیر
0.58.24 ✅ یا بالاتر
نسخه فعلی Metabase را میتوانید از بخش:
About Metabase
مشاهده کنید.
طبق اطلاعیه، نسخههای قبل از 0.58 تحت تأثیر این آسیبپذیری نیستند.
🔗 جزئیات فنی و لیست کامل نسخههای امن:
https://github.com/metabase/metabase/security/advisories/GHSA-vwf4-m7j8-wcjf
@code2_ir
