vBulletin

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

vBulletin یک بسته نرم‌افزاری منحصربه‌فرد انجمن اینترنتی پراستفاده است که بر اساس PHP و سرور پایگاه داده MySQL است. این بسته بر روی بیش از ۱۰۰٫۰۰۰ وب‌سایت در اینترنت ازجمله Fortune 500 مورداستفاده قرار گرفته است.

این آسیب‌پذیری‌ها توسط یک محقق در یک شرکت امنیتی به نام TRUEL IT در ایتالیا کشف شدند و یک محقق امنیتی مستقل و ناشناخته جزئیات این آسیب‌پذیری‌ها را توسط برنامهBeyond Security’s SecuriTeam Secure Disclosure افشا کرد.

این آسیب‌پذیری‌ها بر روی نسخه ۵ از نرم‌افزار انجمن vBulletin تأثیر ‌می‌گذارد و در حال حاضر وصله نشده‌اند. Beyond Security ادعا می‌کند که از تاریخ ۲۱ نوامبر ۲۰۱۷ سعی داشته است با vBulletin تماس بگیرد اما هیچ پاسخی از سوی این شرکت دریافت نکرده است.

آسیب‌پذیری اجرای کد از راه دور vBulletin

CVE-2017-17672

اولین آسیب‌پذیری که در vBulletin کشف شده است[۱] یک مشکل گنجاندن(۱) فایل است که منجر به اجرای کد از راه دور می‌شود و به یک مهاجم از راه دور اجازه می‌دهد هر فایلی را بر روی سرور vBulletin قرار داده و کد PHP دلخواه خود را اجرا کند.

یک مهاجم غیرمجاز می‌تواند این آسیب‌پذیری گنجاندن فایل را با ارسال یک درخواست GET به index.php با پارامتر routestring= در درخواست ایجاد کند و درنهایت به مهاجم اجازه می‌دهد تا یک درخواست دستکاری‌شده را ساخته و به سرور vBulletin نصب‌شده در سیستم‌عامل ویندوز ارسال کند و هر فایلی را در وب سرور قرار دهد.

این محقق همچنین کد بهره‌بردار این ادعا را برای نشان دادن بهره‌برداری از این آسیب‌پذیری ارائه کرده است. عدد CVE(3) هنوز به این آسیب‌پذیری خاص اختصاص داده نشده است.

آسیب‌پذیری حذف محتویات فایل دلخواه از راه دور

آسیب‌پذیری دوم کشف‌شده در نسخه ۵ از نرم‌افزار انجمن vBulletin به نام CVE-2017-17672 نام‌گذاری شده است[۲] و به‌عنوان یک مشکل بی‌نظمی(۴) مطرح شده است که یک مهاجم غیرمجاز می‌تواند از آن برای حذف فایل‌های دلخواه بهره‌برداری کند و حتی در موارد خاص کدهای مخرب را اجرا کند.

این آسیب‌پذیری به علت استفاده ناامن از unserialize در PHP در ورودی ارائه‌شده توسط کاربر(۴) ایجاد شده است، که اجازه می‌دهد تا یک مهاجم غیرمجاز فایل‌های دلخواه را حذف کرده و احتمالاً کد دلخواه خود را بر روی فرآیند نصب vBulletin اجرا کند.

یک API افشاشده به‌صورت عمومی، که به نام تابع vB_Library_Template’s cacheTemplates() است، اجازه می‌دهد اطلاعات به مجموعه‌ای از قالب‌های(۵) پایگاه داده کشیده شود(۶) تا آن‌ها را در داخل یک متغیر cache ذخیره کند.

در گزارش منتشرشده دراین‌باره آمده است: “متغیر $ temnplaatlist، که به‌طور مستقیم از ورودی کاربر می‌آید، به‌طور مستقیم به unserialize () هدایت می‌شود، که به یک بی‌نظمی ابتدایی(۷) دلخواه منتج می‌شود.”

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

ما انتظار داریم که این شرکت برای رفع هر ۲ نقص امنیتی و قبل از شروع مهاجمان برای بهره‌برداری از آن‌ها و هدف قرار دادن vBulletin، وصله‌های موردنیاز را منتشر کند.

منابع

[۱] https://blogs.securiteam.com/index.php/archives/3569

[۲] https://blogs.securiteam.com/index.php/archives/3573

[۳] https://thehackernews.com/2017/12/vbulletin-forum-hacking.html


(۱) inclusion
(۲) Common Vulnerabilities and Exposures
(۳) deserialization
(۴) user-supplied
(۵) templates
(۶) fetching
(۷) deserialization primitive