آسیبپذیری در EnterpriseDB Postgres Advanced Server (EPAS)
یک آسیبپذیری با شناسه CVE-2023-41117 و شدت بالا 8.8 شناساییی شده است که امکان سرقت توابع و رویههای SECURITY DEFINER از طریق حملات search_path را برای مهاجم فراهم میآورد. این سرقت اطلاعات شامل بستهها، بستههای مستقل (standalone packages) و توابعی است که SECURITY DEFINER را اجرا میکنند. این آسیبپذیری امکان دور زدن مجوز (UTL_FILE) و دسترسی به توابع پیادهسازی اساسی را برای مهاجم فراهم میآورد. هنگامی که یک superuser (ابرکاربر) مکانهای فایل را با استفاده از CREATE DIRECTORY پیکربندی میکند، این توابع به کاربران اجازه میدهد تا طیف گستردهای از اقدامات از جمله خواندن، نوشتن، کپی، تغییر نام و حذف را انجام دهند.
نقص امنیتی مذکور امکان اجرای کوئریهای دلخواه SQL بهعنوان یک superuser از طریق تابع کمکی dbms_aq را برای مهاجم فراهم میآورد. این امر شامل تابع _dbms_aq_move_to_exception_queue است که جهت ارتقاء سطح دسترسی کاربر به superuser استفاده میشود. این تابع OID یک جدول را میپذیرد و سپس با استفاده از دستورات SELECT وDML به آن جدول بهعنوان superuser دسترسی پیدا میکند.
محصولات تحت تأثیر
این آسیبپذیری محصول EnterpriseDB Postgres Advanced Server (EPAS) نسخههای قبل از 11.21.32، 12.x قبل از 12.16.20، 13.x قبل از 13.12.16، 14.x قبل از 14.9.0 و 15.x قبل از 15.4.0را تحت تأثیر قرار میدهد.
توصیههای امنیتی
توصیه میشود کاربران در اسرع وقت نسبت به ارتقاء EnterpriseDB Postgres Advanced Server (EPAS) به نسخههای وصله شده اقدام نمایند. سپس کلاسترهای نمونه پایگاهداده (database instance clusters) موجود با استفاده از edb_sqlpatch وصله شود.
• تمامی نسخههای قبل از 11.21.32 حداقل به نسخه 11.21.32 ارتقاء داده شوند و clusterهای موجود وصله شوند.
• تمامی نسخههای قبل از 12.16.20 حداقل به نسخه 12.16.20 ارتقاء داده شوند و clusterهای موجود وصله شوند.
• تمامی نسخههای قبل از 13.12.17 حداقل به نسخه 13.12.17 ارتقاء داده شوند و clusterهای موجود وصله شوند.
• تمامی نسخههای قبل از 14.9.0 حداقل به نسخه 14.9.0 ارتقاء داده شوند و clusterهای موجود وصله شوند.
• تمامی نسخههای قبل از 15.4.0 حداقل به نسخه 15.4.0 ارتقاء داده شوند و clusterهای موجود وصله شوند.