Openfire

بر اساس گزارش جدید[۱] VulnCheck، هزاران سرور [۲]Openfire XMPP در برابر یک نقص با شدت بالا که اخیراً فاش شده است، وصله نشده‌اند و در معرض یک بهره‌برداری جدید هستند.

این آسیب‌پذیری که به‌عنوان CVE-2023-32315 شناسایی می‌شود[۳] (امتیاز ۵/۷ در مقیاس CVSS)، به یک آسیب‌پذیری پیمایش مسیر در کنسول اداری Openfire مربوط می‌شود که می‌تواند به یک مهاجم احراز هویت نشده اجازه دهد تا به صفحاتی که در غیر این صورت محدود شده‌اند، برای کاربران ممتاز دسترسی پیدا کند.

این آسیب‌پذیری که همه نسخه‌های نرم‌افزار منتشر شده از آوریل ۲۰۱۵، از نسخه ۳٫۱۰٫۰ را تحت‌تأثیر قرار می‌دهد در اوایل ماه مه توسط توسعه‌دهنده آن، Ignite Realtime، با انتشار نسخه‌های ۴٫۶٫۸، ۴٫۷٫۵ و ۴٫۸٫۰ اصلاح شد.

توسعه‌دهندگان در یک گزارش در این باره گفتند[۴]: «حفاظت‌های پیمایش مسیر قبلاً برای محافظت در برابر این نوع حمله وجود داشت، اما در برابر کدهای URL غیراستاندارد خاص برای کاراکترهای UTF-16 که توسط وب سرور تعبیه‌شده که در آن زمان استفاده می‌شد، دفاع نمی‌کردند.»

“ارتقای بعدی وب سرور جاسازی شده شامل پشتیبانی از رمزگذاری URL غیراستاندارد کاراکترهای UTF-16 بود. حفاظت‌های پیمایش مسیر موجود در Openfire به‌روزرسانی نشدند تا در برابر این رمزگذاری جدید محافظت شوند.”

در نتیجه، یک عامل تهدید می‌تواند از این ضعف برای دورزدن الزامات احراز هویت برای صفحات کنسول مدیریت سوءاستفاده کند. این آسیب‌پذیری از آن زمان تحت بهره‌برداری فعال[۵] در سطح اینترنت[۶]، از جمله توسط مهاجمان مرتبط با بدافزار بات‌نت کریپتو Kinsing (با نام مستعار Money Libra) قرار گرفت[۷].

اسکن Shodan انجام شده توسط شرکت امنیت سایبری نشان می‌دهد که از بیش از ۶۳۰۰ سرور Openfire که از طریق اینترنت قابل‌دسترسی هستند، تقریباً ۵۰ درصد از آن‌ها نسخه‌های آسیب‌دیده راه‌حل منبع‌باز XMPP را اجرا می‌کنند.

Openfire

درحالی‌که اکسپلویت‌های عمومی[۸] از این آسیب‌پذیری برای ایجاد یک کاربر مدیریتی، ورود به سیستم و سپس آپلود یک افزونه برای دستیابی به اجرای کد استفاده کرده‌اند، VulnCheck گفت که انجام این کار بدون نیاز به ایجاد یک حساب کاربری امکان‌پذیر است، و این امر برای عوامل تهدید مخفی‌تر و جذاب‌تر می‌شود.

Jacob Baines، محقق امنیتی، با تشریح شیوه‌های عملکرد اکسپلویت‌های موجود، گفت که آنها شامل «ایجاد یک کاربر مدیر برای دسترسی به رابط Openfire Plugins» هستند.

“سیستم پلاگین به مدیران اجازه می‌دهد تا از طریق جاوا JARهای آپلود شده، کم‌وبیش، عملکرد دلخواه خود را به Openfire اضافه کنند. واضح است که این مکانی برای انتقال از دورزدن احراز هویت به اجرای کد از راه دور است.”

از سوی دیگر، روش بهبودیافته و ابداع شده توسط VulnCheck، از یک رویکرد بدون کاربر استفاده می‌کند که رمز JSESSIONID و CSRF را با دسترسی به صفحه‌ای به نام “plugin-admin.jsp” استخراج می‌کند و سپس افزونه JAR را از طریق یک درخواست POST آپلود می‌کند.

Baines گفت: “بدون احراز هویت، این افزونه پذیرفته و نصب می‌شود. سپس می‌توان به پوسته وب، بدون احراز هویت، با استفاده از پیمایش دسترسی داشت.”

این رویکرد تلاش‌های ورود به سیستم را خارج از گزارش ممیزی امنیتی نگه می‌دارد و از ثبت اعلان “افزونه آپلود شده” جلوگیری می‌کند.

به گفته این شرکت، تنها نشانه‌هایی که نشان می‌دهد چیزی مخرب در حال وقوع است، گزارش‌های ثبت شده در فایل openfire.log است که دشمن می‌تواند با استفاده از CVE-2023-32315 آنها را حذف کند.

باتوجه‌به اینکه این آسیب‌پذیری در حال حاضر در حملات دنیای واقعی مورد بهره‌برداری قرار گرفته است، توصیه می‌شود که کاربران به‌سرعت به آخرین نسخه‌ها به‌روزرسانی شوند تا در برابر تهدیدات احتمالی ایمن شوند.

منابع

[۱] https://vulncheck.com/blog/openfire-cve-2023-32315

[۲] https://en.wikipedia.org/wiki/Openfire

[۳] https://nvd.nist.gov/vuln/detail/CVE-2023-32315

[۴] https://github.com/igniterealtime/Openfire/security/advisories/GHSA-gw42-f939-fhvm

[۵] https://www.surevine.com/openfire-cve-2023-32315-what-we-know

[۶] https://discourse.igniterealtime.org/t/cve-2023-32315-openfire-administration-console-authentication-bypass/92869/15

[۷] https://thehackernews.com/2023/05/cybercriminals-targeting-apache-nifi.html

[۸] https://github.com/tangxiaofeng7/CVE-2023-32315-Openfire-Bypass

[۹] https://thehackernews.com/2023/08/thousands-of-unpatched-openfire-xmpp.html