خانه » CVE-2024-52046

CVE-2024-52046

آسیب پذیری unbounded Deserialization در Apache MINA

توسط Vulnerbyte_Alerts

چکیده

CVE-2024-52046  ، یک آسیب پذیری Unbounded Deserialization با شدت بالاست که برروی Apache MINA  نسخه های 2.0.26/ 2.1.9/ 2.2.3 و نسخه های قدیمی تر آن اثر می گذارد. این آسیب پذیری کد کامپوننت ObjectSerializationDecoder را تحت تاثیر قرار می دهد. این حمله می تواند از راه دور راه اندازی شود. همچنین توصیه می شود به منظور جلوگیری از این آسیب پذیری کامپوننت آسیب پذیر را ارتقا دهید.

توضیحات

ObjectSerializationDecoder در Apache MINA از پروتکل نیتیو deserialization  جاوا برای پردازش داده های ورودی   serialize شده استفاده می کند که فاقد پروسه های امنیتی و دفاعی لازم است. آسیب پذیری CVE-2024-52046 زمینه را برای مهاجمان فراهم می کند تا با ارسال داده های serialized  دستکاری شده از فرآیند Deserialization   سو استفاده کنند. همین امر منجر به حمله اجرای کد از راه دور یا Remote Code Execution (RCE) خواهد شد.

توجه به این مساله حائز اهمیت است که برنامه ای که  از MINA core  استفاده می کند تنها زمانی در معرض این آسیب پذیری قرار دارد که متد IoBuffer#getObjecy() در آن فراخوانی شود و این متد معمولا زمانی که یک نمونه از ProtocolCodeFilter  با استفاده از کلاس  ObjectSerializationCodeFactory  به زنجیره فیلتر اضافه شود، فراخوانی می شود.

CVSS

Score Severity Version Vector String
10.0 CRITICAL 4.0 CVSS:4.0/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

لیست محصولات آسیب پذیر

در زمان انتشار این اعلامیه، نسخه های زیر در معرض این آسیب پذیری قرار دارند:

  • Apache MINA 2.1 – 2.1.9
  • Apache MINA 2.2 – 2.2.3
  • Apache MINA 2.0 – 2.0.26

لیست محصولات بروز شده

اگر برنامه شما از این کلاس ها استفاده می کند، می بایست آن را به آخرین نسخه کتابخانه MINA core   ارتقا دهید. این مشکل در نسخه های 2.0.27 ، 2.1.10   و 2.2.4 برطرف شده است.

علاوه بر این، ارتقای کتابخانه به تنهایی کافی نیست. دیکدر به شکل پیش فرض کلیه کلاس های موجود داده های ورودی را رد خواهد کرد. شما باید به شکل مشخص کلاس هایی که دیکدر در نمونه ObjectSerializationDecoder  قبول خواهد کرد را با یکی از سه متد زیر مشخص کنید:

  • نام کلاس هایی که ClassNameMatcher برای deserialization  در لیست خود دارد را قبول کند در غیر این صورت آن کلاس رد خواهد شد.

public void accept(ClassNameMatcher classNameMatcher)

  • نام کلاس هایی که با الگوهای تهیه شده برای deserialization منطبق هستند را قبول کند در غیر این صورت آن کلاس رد خواهد شد.

public void accept(Pattern pattern)

  • کلاس های با وایلدکارد مشخص برای deserialization را قبول کند و باقی را رد کند.

{@…k org.apache.commons.io.FilenameUtils#wildcardMatch(String, String) FilenameUtils.wildcardMatch}    public void accept(String… patterns)

نتیجه گیری

آسیب پذیری فوق در دسته آسیب پذیری های  بحرانی (Critical ) دسته بندی می شود.  توصیه می شود نسخه آسیب پذیر را با نسخه های بالاتر جایگزین کنید.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2024-52046
  2. https://www.cvedetails.com/cve/CVE-2024-52046/
  3. https://lists.apache.org/thread/4wxktgjpggdbto15d515wdctohb0qmv8
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2024-52046
  5. https://vuldb.com/?id.289275
  6. https://www.openwall.com/lists/oss-security/2024/12/25/1
  7. https://www.bleepingcomputer.com/news/security/apache-warns-of-critical-flaws-in-mina-hugegraph-traffic-control/
  8. https://cwe.mitre.org/data/definitions/94.html

همچنین ممکن است دوست داشته باشید

پیام بگذارید