هشدار امنیتی SafeNest
| CVE | CVE-2026-19658 |
| Vendor / Product | GiveWP / Give Tributes |
| Severity | Critical |
| CVSS v3.1 | 9.8 |
| CWE | CWE-502 – Deserialization of Untrusted Data |
| نسخههای آسیبپذیر | تا نسخه 2.3.1 |
| نیاز به احراز هویت | خیر |
| شرایط خاص | Allow Multiple Recipients فعال و eCard Custom Message غیرفعال |
| وضعیت Exploit | جزئیات عمومی منتشر شده؛ اجرای کد وابسته به وجود POP chain در مؤلفهای دیگر است |
خلاصه مدیریتی
CVE-2026-19658 یک آسیبپذیری بسیار مهم در افزونه Give Tributes برای WordPress است که به Deserialization داده غیرقابل اعتماد مربوط میشود. در شرایط خاص پیکربندی، مهاجم بدون نیاز به حساب کاربری میتواند داده سریالشده را به مسیری وارد کند که توسط PHP پردازش میشود. خود افزونه Give Tributes طبق گزارش منتشرشده POP chain قابل استفاده برای اجرای کد در اختیار مهاجم قرار نمیدهد، اما اگر افزونه یا قالب دیگری روی همان سایت شامل Gadget Chain مناسب باشد، دامنه اثر میتواند از افشای اطلاعات و حذف فایل تا اجرای کد روی سرور گسترش پیدا کند.
اهمیت این نقص از دو عامل ناشی میشود: نخست اینکه حمله از راه دور و بدون احراز هویت قابل آغاز است؛ دوم اینکه اکوسیستم WordPress معمولاً شامل چندین افزونه و قالب همزمان است. در چنین محیطی، آسیبپذیریهای Deserialization میتوانند با مؤلفههای دیگر ترکیب شوند و اثر نهایی بسیار شدیدتری ایجاد کنند.
شرح فنی آسیبپذیری
PHP Object Injection زمانی رخ میدهد که داده کنترلشده توسط کاربر بدون اعتبارسنجی کافی به یک تابع Deserialization برسد. در نتیجه، مهاجم میتواند ساختار یک شیء PHP را کنترل کند. خطر اصلی زمانی ایجاد میشود که کلاسهای موجود در برنامه دارای متدهای ویژهای مانند سازنده، مخرب یا متدهای Magic باشند که در جریان ایجاد یا نابودی شیء عملیات حساس انجام دهند.
در CVE-2026-19658 این مسیر فقط در یک پیکربندی خاص قابل دسترس است: قابلیت Allow Multiple Recipients باید فعال باشد و eCard Custom Message غیرفعال باشد. در این حالت، داده ورودی از مسیری عبور میکند که امکان رسیدن محتوای سریالشده به مرحله پردازش را فراهم میسازد. اگر Custom Message فعال باشد، اعتبارسنجی متفاوتی اعمال میشود و مسیر گزارششده مسدود میشود.
چرا این مورد مهم است؟
در محیط WordPress، وجود دهها افزونه و Theme رایج است. بنابراین حتی اگر افزونه آسیبپذیر به تنهایی Gadget Chain نداشته باشد، وجود یک افزونه دیگر میتواند زنجیره مورد نیاز را فراهم کند. این ویژگی باعث میشود تیم امنیت نتواند ریسک را فقط بر اساس یک Plugin ارزیابی کند؛ باید کل ترکیب افزونهها و قالبهای سایت در نظر گرفته شود.
اگر یک POP chain مناسب وجود داشته باشد، مهاجم ممکن است بتواند عملیات مخربی مانند حذف فایل، خواندن داده حساس یا اجرای کد را در سطح دسترسی PHP انجام دهد. چنین سطحی از دسترسی میتواند در نهایت به تصاحب کامل سایت منجر شود.
نسخههای تحت تأثیر
تمام نسخههای Give Tributes تا 2.3.1 تحت تأثیر گزارش شدهاند. مدیران باید نسخه نصبشده را بررسی و وضعیت Patch رسمی را از Vendor دنبال کنند. اگر نسخه اصلاحشده مشخص نیست، غیرفعالسازی موقت قابلیت آسیبپذیر یا خود افزونه میتواند گزینه محافظهکارانهتری باشد.
پیامدهای امنیتی احتمالی
- تزریق شیء PHP بدون احراز هویت
- افشای داده در صورت وجود Gadget Chain مناسب
- حذف فایل یا تغییر داده
- اجرای کد در شرایط خاص
- تصاحب کامل سایت در صورت زنجیره موفق
راهکار پیشنهادی
اگر Give Tributes در سایت استفاده میشود، نسخه و تنظیمات آن باید فوراً بررسی شود. تا زمان تأیید نسخه اصلاحشده، غیرفعال کردن Allow Multiple Recipients یا غیرفعال کردن افزونه میتواند سطح حمله را کاهش دهد. همچنین بررسی سایر افزونهها و قالبها برای Gadget Chainهای شناختهشده اهمیت دارد.
کنترلهای جبرانی
- محدود کردن یا غیرفعال کردن قابلیت Multiple Recipients
- بهروزرسانی تمام افزونهها و قالبها
- استفاده از WAF با قوانین WordPress
- پایش تغییرات فایل و رخدادهای غیرعادی PHP
- اجرای PHP با حداقل سطح دسترسی
اولویت اقدام
بسیار بالا. امتیاز 9.8، حمله بدون احراز هویت و امکان ترکیب با مؤلفههای دیگر این آسیبپذیری را برای سایتهای عمومی مهم میکند.

