سیستم مدیریت محتوای وردپرس (WordPress) اخیراً بهروزرسانیهایی را برای رفع ۱۱ آسیبپذیری منتشر کرد که یکی از بحرانیترین آنها، حفرهای است که میتواند منجر به اجرای کد از راه دور یا Remote Code Execution (RCE) شود. این آسیبپذیری که Click2Shell نام گرفته شده، در حال حاضر شناسه CVE ندارد اما پتانسیل تخریب بالایی را داراست.
مکانیزم حمله و تحلیل فنی
طبق گزارش تیم pwn.ai، این نقص امنیتی از طریق URLهای دستکاری شده (Specially Crafted URLs) فعال میشود. مهاجم میتواند کاربر مدیر (Administrator) را فریب دهد تا با کلیک بر روی یک لینک، تمهای غیرفعال را بهطور خودکار نصب و پیشنمایش کند. اگرچه در نگاه اول نصب یک تم غیرفعال بیخطر به نظر میرسد، اما تحلیلهای فنی نشان میدهد که این مسیر میتواند برای دستیابی به RCE مورد استفاده قرار گیرد.
ریشه این مشکل در تفاوت تفسیر یک مقدار در URL پیشنمایش تم بین Themes API و کدهای JavaScript است که در مرورگر مدیر اجرا میشود. در حالی که API مقدار را به یک Slug ساده تبدیل میکند، مرورگر علائم نگارشی اصلی را حفظ کرده و آن را درون یک jQuery selector قرار میدهد. این ناهماهنگی به مهاجم اجازه میدهد تا بدون نیاز به داشتن حساب کاربری در سایت هدف، تمهای منتخب خود را از کاتالوگ رسمی WordPress.org روی سایت قربانی نصب کند.
مسیر تبدیل به RCE
- مهاجم از تمهای شخص ثالث (Third-party themes) استفاده میکند که دارای نقصهای امنیتی در نصبکنندههای خود هستند.
- بیش از ۴۰ تم شناسایی شدهاند که حتی در حالت غیرفعال، اجازه اجرای کدهای PHP را میدهند.
- از آنجایی که وردپرس در هنگام پیشنمایش در Customizer، کدهای PHP تم را بارگذاری میکند، مهاجم میتواند از این طریق یک بسته پلاگین مخرب را اجرا کرده و کنترل کامل سرور را در سطح حساب کاربری وردپرس به دست بگیرد.
یکی از نکات نگرانکننده این است که مدیر سایت ممکن است متوجه هیچ رفتار غیرعادی نشود، زیرا تم اصلی سایت در طول اجرای اکسپلویت (Exploit) فعال باقی میماند.
راهکارهای مقابله و اصلاح
وردپرس این آسیبپذیری و ۱۰ مورد دیگر را در نسخه 7.1.1 برطرف کرده است. همچنین برای پشتیبانی از نسخههای قدیمیتر، اصلاحیههایی تا نسخه 4.7 ارائه شده است. به تمامی مدیران سیستم و مهندسان امنیت توصیه میشود در سریعترین زمان ممکن، هسته وردپرس خود را به آخرین نسخه بهروزرسانی کنند.