آسیب‌پذیری در SQLite که امکان حملات از راه دور به Chrome را از طریق WebSQL فراهم می‌کند

محققان امنیتی از شرکت چینی Tencent ارایه شده نوع آسیب پذیری جدید ماژلان (CVE-2019-13734)، که به شما امکان می دهد هنگام پردازش ساختارهای SQL که به روشی خاص در SQLite DBMS طراحی شده اند، به اجرای کد دست پیدا کنید. آسیب پذیری مشابهی وجود داشت منتشر شده توسط همین محققان یک سال پیش. این آسیب پذیری از این جهت قابل توجه است که به شخص اجازه می دهد از راه دور به مرورگر کروم حمله کند و هنگام باز کردن صفحات وب تحت کنترل مهاجم، کنترل سیستم کاربر را بدست آورد.

حمله به Chrome/Chromium از طریق WebSQL API انجام می شود که کنترل کننده آن بر اساس کد SQLite است. حمله به سایر برنامه‌ها تنها در صورتی امکان‌پذیر است که آنها اجازه انتقال ساختارهای SQL را که از خارج به SQLite می‌آیند، می‌دهند، برای مثال، از SQLite به عنوان قالبی برای تبادل داده استفاده می‌کنند. فایرفاکس آسیب پذیر نیست زیرا موزیلا رد از پیاده سازی WebSQL سود IndexedDB API.

گوگل در انتشار این مشکل را برطرف کرد کروم 79. مشکلی در پایگاه کد SQLite وجود داشت درست شد 17 نوامبر، و در پایگاه کد Chromium - 21 نوامبر.
مشکل در وجود دارد کد موتور جستجوی متن کامل FTS3 و از طریق دستکاری جداول سایه (نوع ویژه ای از جدول مجازی با قابلیت نوشتن) می تواند منجر به خرابی فهرست و سرریز بافر شود. اطلاعات دقیق در مورد تکنیک های عملیاتی پس از 90 روز منتشر خواهد شد.

نسخه جدید SQLite با رفع مشکل در حال حاضر تشکیل نشده است (انتظار می رود 31 دسامبر). به عنوان یک راه حل امنیتی، با شروع SQLite 3.26.0، می توان از حالت SQLITE_DBCONFIG_DEFENSIVE استفاده کرد که نوشتن در جدول های سایه را غیرفعال می کند و برای گنجاندن هنگام پردازش پرس و جوهای SQL خارجی در SQLite توصیه می شود. در کیت های توزیع، آسیب پذیری در کتابخانه SQLite ثابت باقی می ماند دبیان, اوبونتو, ریل, openSUSE / SUSE, قوس لینوکس, کلاه نمدی مردانه, FreeBSD. Chromium در همه توزیع‌ها قبلاً به‌روزرسانی شده است و تحت تأثیر این آسیب‌پذیری قرار نگرفته است، اما این مشکل ممکن است بر مرورگرها و برنامه‌های شخص ثالث مختلف که از موتور Chromium استفاده می‌کنند و همچنین برنامه‌های Android مبتنی بر Webview تأثیر بگذارد.

علاوه بر این، 4 مشکل کمتر خطرناک نیز در SQLite شناسایی شده است (CVE-2019-13750, CVE-2019-13751, CVE-2019-13752, CVE-2019-13753) که می تواند منجر به نشت اطلاعات و دور زدن محدودیت ها شود (می تواند به عنوان عوامل کمک کننده برای حمله به Chrome استفاده شود). این مشکلات در کد SQLite در 13 دسامبر برطرف شد. روی هم رفته، مشکلات به محققان اجازه می‌دهد تا یک اکسپلویت کاری آماده کنند که به کد اجازه می‌دهد در چارچوب فرآیند Chromium که مسئول رندر است، اجرا شود.

منبع: opennet.ru

اضافه کردن نظر