آسیب‌پذیری deserialization در نرم‌افزار Oracle WebLogic Server با شناسه ‌آسیب‌پذیری CVE-2020-2555 اعلام شده بود ولی در حال حاضر یک متخصص امنیتی گزارشی مبنی بر دورزدن راهکار رفع باگ را به باگ بانتی ZDI ارایه نموده است و به صورت فعال اکسپلویت آسیب‌پذیری صورت می‌گیرد.

شناسه آسیب‌پذیر:

CVE-2020-2883

درجه آسیب‌پذیری:

CVE-2020-2883:

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Base Score: 9.8 Critical

سیستم‌ها آسیب‌پذیر:

CVE-2020-2883:

Server product of Oracle Fusion Middleware (component: Core) versions that are affected are 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0 and 12.2.1.4

نیازمند تعامل کاربری: خیر

سال شناسایی: ۲۰۲۰

توضیحات:

باگدشت در این صفحه به بررسی باگ امنیتی deserialization پرداخته است. امیدواریم برای شما مفید باشد.
در اکسپلویت آسیب‌پذیری CVE-2020-2555 که توسط یک متخصص امنیتی به ZDI ارایه شده بود، کتابخانه Coherence  دارای ضعف امنیتی می‌باشد. حمله موفق و اکسپلویت آسیب‌پذیری سرور Oracle Coherence را در اختیار می‌گیرید. آسیب‌پذیری deserialization غیرامن یک هدف رایج برای هکرها و متخصصان امنیت در محصولات نرم‌افزارها تحت وب جاوا شده است. این آسیب‌پذیری اغلب باعث RCE می‌شود و به سختی می‌تواند این باگ را رفع کرد. آسیب‌پذیری CVE-2020-2883 باعث دور زدن به‌روز رسانی امنیتی برای آسیب‌پذیری CVE-2020-2555 می‌شود و این باگ توسط محقق امنیتی Quynh Le  از گروه VNPT ISC به ZDI گزارش شد.

دورزدن وصله به‌روز رسانی:

در وصله امنیتی برای آسیب‌پذیری CVE-2020-2555 بررسی راهکار برای زنجیره زیر پوشش داده نشده است:

BadAttributeValueExpException.readObject()
	com.tangosol.util.filter.LimitFilter.toString() //<--- CVE-2020-2555 patched here
		com.tangosol.util.extractor.ChainedExtractor.extract()
			com.tangosol.util.extractor.ReflectionExtractor().extract()
				Method.invoke()
				//...
				com.tangosol.util.extractor.ReflectionExtractor().extract()
				Method.invoke()
				Runtime.exec()

فعال کردن ()chainedExtractor.extract باعث اجرای RCE می‌شود. در گزارش متخصص امنیتی Quynh Le  نشان می‌دهد هنوز امکان در دسترس بودن ()chainedExtractor.extract از طریق کلاس‌های ExtractorComparator و AbstractExtractor وجود دارد. این آسیب پذیری در کتابخانه  Coherence وجود دارد و هر تابعی که از این کتابخانه استفاده نماید، آسیب‌پذیر است.

Serialization به فرآیند تبدیل object ها به فرمت داده‌ای که بتواند ذخیره سازی شود گفته می‌شود. این راهکار برای ذخیره و یا انتقال داده‌ها استفاده می‌شود. Deserialization به فرآیند معکوس آن گفته شده که ساختار داده‌ای را به object تبدیل می‌نماید، معروفترین ساختار برای این فرآیند JSON و XML است. مشکل امنیتی در این فرآیند در پردازش داده‌های غیرمطمئن توسط سرور می‌باشد که منجربه حملات DoS، دسترسی و یا RCE می‌شود. برای مطالعه بیشتر جزئیات آسیب‌پذیری deserialization در جاوا می‌توانید به white paper از Moritz Bechler مراجعه کنید. اوراکل اشاره به گستردگی اکسپلویت آسیب‌پذیری نکرده است ولی توصیه به‌روز رسانی را الزامی نموده است. همچنین راهنمایی برای محدود کردن ترافیک پرتکل T3/T3S برای Oracle WebLogic Server ارائه کرده‌اند. به‌روز رسانی بعدی اوراکل در ۱۴ ژولای ۲۰۲۰ منتشر می‌شود و باید دید چند آسیب‌پذیری deserialization باقی خواهد ماند.

باگدشت در این صفحه به بررسی باگ امنیتی deserialization پرداخته است. امیدواریم برای شما مفید باشد.

منابع:

  1. NVD
  2. ZDI