دو آسیب پذیری مهم در LibreOffice شناسایی شده است که به مهاجمان این امکان را میدهند که فایلهای دلخواه را بازنویسی کنند و مقادیر حساس سیستم را از طریق اسناد مخرب استخراج نمایند. این آسیب پذیریها که با شناسههای CVE-2024-12425 و CVE-2024-12426 دنبال میشوند، در نسخههای مختلف LibreOffice از جمله نسخههای دسکتاپ و سرور بدون رابط کاربری (Headless) وجود دارند و خطرات قابل توجهی را برای شرکتها و کاربرانی که به این مجموعه نرمافزاری متنباز وابسته هستند، ایجاد میکنند. هر دو آسیب پذیری بدون هیچگونه تعاملی با کاربری و صرفاً با بارگذاری اسناد مخرب، قابل اکسپلویت میباشند.
CVE-2024-12425: پیمایش مسیر از طریق فونتهای تعبیه شده
این آسیب پذیری ناشی از عدم بررسی (sanitize) مناسب نام فونتهای ارائه شده توسط کاربران در فایلهای OpenDocument XML میباشد. زمانی که LibreOffice فونتهای تعبیه شده را پردازش میکند، از مقادیر برسی نشده svg:font-family در متادیتاهای سند برای ساخت مسیرهای فایل tem استفاده میکند. مهاجمان میتوانند با تزریق دنبالههای مسیر به این مقادیر، فایلهای ttf. دلخواه را خارج از دایرکتوریهای tem بنویسند. این مشکل به طور خاص تهدیدی برای حملات سمت سرور میباشد، زیرا مهاجمان میتوانند فایلهای سروری حساس مانند اسکریپتهای پیکربندی وبسایتها را بازنویسی کنند.
برای مثال، یک فایل مخرب fodt. که شامل قطعه XML زیر است، فونتی را به passwd0.ttf مینویسد:
SGVsbG8gd29ybGQgaW5zaWRlIGEgZm9udCBmaWxlIQ==
اگرچه پسوند .ttf اجرای فوری کد را محدود میکند، اما این آسیب پذیری با بازنویسی فایلهای برنامههای وب یا اسکریپتهای پیکربندی. امکان حملات سمت سرور را فراهم میآورد.
CVE-2024-12426: گسترش متغیر و استخراج فایلهای INI
دومین آسیب پذیری از نحوه پردازش LibreOffice در مورد طرح URI vnd.sun.star.expand استفاده مینماید که از جایگزینی متغیرهای بازگشتی پشتیبانی میکند. مهاجمان میتوانند از این آسیب پذیری با استفاده از اسناد مخرب برای استخراج متغیرهای لوکال، فایلهای پیکربندی یا اطلاعات محرمانه سیستم از طریق URLهای دستکاری شده سوء استفاده کنند.
به عنوان مثال:
این طرح فایلهای INI را بهصورت ضعیف تجزیه و تحلیل میکند و امکان استخراج دادهها از فایلهایی غیر از INI، مانند bash_history. یا پایگاهداده SQLite فراهم میآورد. یک PoC نشان داد که میتوان توکنهای بازنشانی رمز عبور وردپرس را از ایمیلهای Thunderbird ربوده و کنترل حسابهای کاربری را به دست گرفت.
تأثیر آسیب پذیری
- کاربران دسکتاپ: اسناد مخرب میتوانند مسیرهای HOME$، تاریخچههای شل یا دادههای محرمانه برنامهها (به عنوان مصال دیتای احراز هویت AWS) را استخراج کنند.
- استقرارهای سروری: نمونههای LibreOffice بدون اینترفیس کاربری گرافیکی که برای تبدیل اسناد استفاده میشوند، در معرض حملات وبشل از طریق نوشتنهای دلخواه یا حملات SSRF قرار دارند.
- تهدیدات چند پلتفرمی: این آسیب پذیریها در نصبهای لینوکس، ویندوز و macOS ادامه دارند.
اقدامات امنیتی و پچها
LibreOffice پچهایی را در نسخههای 24.8.4 (Enterprise) و 7.6.5 (Community) منتشر کرده است.
مراحل کلیدی اصلاح عبارتند از:
- نصب پچها بر روی تمام نصبهای دسکتاپ و سرور.
- بررسی اسناد پردازش شده توسط LibreOffice در اپلیکیشنهای وب.
- محدود کردن دسترسی LibreOffice به دایرکتوریهای حساس با استفاده از SELinux/AppArmor.
چنانچه مطمئن نیستید که تحت تأثیر این آسیب پذیریها قرار دارید یا خیر، codeanlabs در گیت هاب خود PoCی را برای هر دو CVE همراه با دستورالعملهایی برای بررسی آسیب پذیری سیستم ارائه کرده است که میتوانید به از آنها استفاده کنید.
در حالی که ماهیت متنباز LibreOffice به تسریع اصلاح آسیب پذیریها کمک میکند، اما سازمانها نیز میبایست جریانهای بهروزرسانی و حفاظتهای زمان اجرا را در اولویت قرار دهند. سازمانها بایستی ادغام ابزارهای امنیتی مانند سیستمهای شناسایی نفوذ (IDS) برای نظارت بر عملیات فایلهای LibreOffice را به انجام رسانند. با تکامل حملات مبتنی بر اسناد، مکانیزمهای دفاعی پیشگیرانه همچنان حیاتی خواهند ماند.