GiveWP، جو کہ لاکھوں فلاحی ویب سائٹس کو چلانے والا WordPress ڈونیشن پلگ ان ہے، اچانک ایک سنگین ریموٹ کوڈ ایگزیکیوشن (remote-code-execution) نقص کا شکار ہو گیا ہے۔ CVE-2026-82222 نے CVSS پر مکمل 10.0 اسکور حاصل کیا ہے اور یہ انٹرنیٹ پر موجود کسی بھی شخص کو کمزور سرور پر اپنی مرضی کے کمانڈز چلانے کی اجازت دیتا ہے۔ اس کا حل ورژن 4.16.7.2 میں دستیاب ہے۔

یہ بگ کیوں اہم ہے

GiveWP بے شمار فنڈ ریزنگ صفحات کے مرکز میں موجود ہے۔ ویب سائٹ کے مالکان ڈونر کا ڈیٹا سنبھالنے، ادائیگیوں کے عمل اور سیشن کی معلومات محفوظ کرنے کے لیے اس پر بھروسہ کرتے ہیں۔ ایک حملہ آور جو بنیادی سرور پر کوڈ چلا سکتا ہے، وہ کریڈنشلز چرا سکتا ہے، ویب سائٹ کو بگاڑ (deface) سکتا ہے، یا نیٹ ورک کے دیگر حصوں تک رسائی حاصل کر سکتا ہے۔ چونکہ یہ کمزوری بغیر کسی لاگ ان کے کام کرتی ہے، اس لیے پورا عوامی انٹرنیٹ حملے کے لیے ایک ہدف بن جاتا ہے۔

یہ ایکسپلائٹ (exploit) کیسے کام کرتا ہے

یہ نقص محض ایک کوڈنگ کی غلطی نہیں ہے؛ بلکہ یہ تین الگ الگ مسائل کی ایک زنجیر ہے جو مل کر ایک بیک ڈور (back door) کھول دیتی ہے۔

  1. غیر محفوظ deserialization – پلگ ان کا ہیلپر safeUnserialize سیریلائزڈ اشیاء (serialized objects) کو ختم کرنے کے بجائے انہیں پلیس ہولڈرز میں تبدیل کر دیتا ہے، جس سے اصل آبجیکٹ ڈیٹا برقرار رہتا ہے۔
  2. بلائنڈ re-deserialization – ڈیٹا بیس سے نکالا گیا ڈیٹا بغیر کسی تصدیق کے دوبارہ unserialize میں ڈال دیا جاتا ہے، جس سے تیار کردہ (crafted) آبجیکٹس کو دوبارہ زندہ کیا جا سکتا ہے۔
  3. TCPDF gadget chain – GiveWP میں TCPDF PDF-generation لائبریری شامل ہے، جس میں ایک کلاس چین موجود ہے جو کسی بھی نقصان دہ آبجیکٹ کے unserialize ہونے کے بعد سسٹم کمانڈز کو چلا سکتی ہے۔

ایک حملہ آور چار مراحل کے عمل پر عمل کرتا ہے جس کے لیے کسی پہلے سے موجود اکاؤنٹ کی ضرورت نہیں ہوتی:

  • رجسٹریشنuser_register ایکشن کا فائدہ اٹھاتے ہوئے، حملہ آور ویب سائٹ پر رجسٹریشن بند ہونے کے باوجود ایک WordPress صارف بنا لیتا ہے۔
  • پلانٹنگ (Planting) – حملہ آور نئے پروفائل کے last_name فیلڈ میں ایک سیریلائزڈ پے لوڈ (payload) محفوظ کر دیتا ہے۔
  • پائزننگ (Poisoning) – ڈونیشن جمع کروانے کا عمل پلگ ان کو مجبور کرتا ہے کہ وہ اس پے لوڈ کو wp_give_sessions ٹیبل میں لکھ دے۔
  • ایگزیکیوشن (Execution) – جب بعد میں کوئی بھی عوامی صفحہ سیشن کو پڑھتا ہے، تو نقصان دہ آبجیکٹ unserialize ہو جاتا ہے، TCPDF gadget chain متحرک ہو جاتی ہے، اور حملہ آور کی طرف سے فراہم کردہ کمانڈ سرور پر چل جاتی ہے۔

پیچ (patch)

GiveWP کے ڈویلپرز نے ہر مرحلے پر اس زنجیر کو توڑنے کے لیے ورژن 4.16.7.2 جاری کیا ہے:

  • ایسی ڈونیشنز جن میں سیریلائزڈ ڈیٹا شامل ہو، انہیں فوری طور پر مسترد کر دیا جاتا ہے۔
  • ڈیٹا پڑھنے کے تمام فنکشنز اب سخت ٹائپ اور مواد کی جانچ (checks) کو نافذ کرتے ہیں۔
  • TCPDF gadget chain کو واضح طور پر بلاک کر دیا گیا ہے، تاکہ غیر مجاز میتھڈ کالز کو روکا جا سکے۔
  • میٹا فیلڈز، بشمول last_name کو اسٹور کرنے سے پہلے سینٹائز (sanitize) کیا جاتا ہے۔
  • موجودہ کسی بھی نقصان دہ پے لوڈ کو ختم کرنے کے لیے ڈیٹا بیس مائیگریشن خود بخود چلتی ہے۔

پلگ ان کو اپ ڈیٹ کرنا پہلا قدم ہے؛ آپ کو اس بات کی تصدیق کرنی چاہیے کہ ڈیٹا بیس میں پہلے سے موجود پے لوڈز کو ختم کرنے کے لیے سینٹائزیشن مائیگریشن (sanitization migration) مکمل ہو چکی ہے۔

کون خطرے میں ہے

کوئی بھی WordPress سائٹ جو GiveWP ورژن 4.16.7.1 یا اس سے پرانا ورژن چلا رہی ہے، وہ خطرے میں ہے، چاہے رجسٹریشن آن ہو یا نہیں۔ بڑی غیر منافع بخش تنظیمیں، چھوٹی فلاحی تنظیمیں، اور ذاتی فنڈ ریزنگ صفحات، سب متاثر ہو سکتے ہیں۔ یہ حملہ کسی مخصوص سرور کنفیگریشن پر منحصر نہیں ہے؛ کوئی بھی PHP ماحول جو اس میں شامل TCPDF لائبریری کو سپورٹ کرتا ہے، اس کا شکار ہو سکتا ہے۔

مخالف نقطہ نظر

کچھ ویب سائٹ مالکان کا استدلال ہے کہ اس ایکسپلائٹ کے لیے ڈونر کا ادائیگی جمع کروانا ضروری ہے، جسے وہ کم امکان والا واقعہ سمجھتے ہیں۔ یہ کمزوری اس تصور کو غلط ثابت کرتی ہے: نقصان دہ پے لوڈ ڈونیشن کے مرحلے کے دوران محفوظ ہوتا ہے، لیکن اس کا ایگزیکیوشن کسی بھی بعد کے پیج لوڈ پر ہو سکتا ہے، یہاں تک کہ ادائیگی مکمل ہونے کے بغیر بھی۔ اس کی غیر تصدیق شدہ (unauthenticated) نوعیت اور 10.0 کا CVSS اسکور خطرے کو اتنا زیادہ بنا دیتا ہے کہ اسے محض ایک نظریاتی مسئلہ سمجھ کر نظر انداز نہیں کیا جا سکتا۔

خلاصہ

GiveWP کا CVE-2026-82222 ظاہر کرتا ہے کہ کس طرح کوڈنگ کے بظاہر معصوم شارٹ کٹس مل کر ایک تباہ کن خلاف ورزی کا سبب بن سکتے ہیں۔ اس کا حل تیار ہے۔ ویب سائٹ آپریٹرز کو فوری طور پر 4.16.7.2 پر اپ گریڈ کرنا چاہیے، اس بات کی تصدیق کرنی چاہیے کہ مائیگریشن نے موجودہ پے لوڈز کو صاف کر دیا ہے، اور ایکسپلائٹ کے بعد کی سرگرمیوں کے نشانات کے لیے لاگز (logs) کی نگرانی کرنی چاہیے۔ پیچ کو نظر انداز کرنے سے کسی فلاحی تنظیم کی ویب موجودگی—اور اس کے ڈونرز کا ڈیٹا—سرور پر مکمل کنٹرول رکھنے والے کسی حملہ آور کے سامنے بے نقاب ہو سکتا ہے۔