WordSec – Malware Scanner & Removal, Web Application Firewall (WAF), and 2FA
WordSec is a complete WordPress security plugin. Eight modules cover the firewall, malware scanner, login security, live traffic, IP and country blocking, supply-chain intelligence, audit log and alerts, so you block attacks and harden your site from one dashboard instead of installing eight plugins.
If your site gets hacked you do not just lose the site. You lose customer trust, your search rankings, and days of work restoring backups. WordSec is built to stop that before it happens, and to help you recover if it already has: the scanner finds the malware, quarantine takes it out of the way, and modified core, plugin and theme files are repaired from their original copies.
Free, and no license key to enter. WAF firewall rules, malware and file-integrity scanning, brute force protection, two factor authentication, IP and country blocking, the audit log and one-click hardening all run locally on your own server.
Web Application Firewall (WAF)
- Custom rule builder with regex and wildcard matching
- Built-in rules for SQL injection, XSS, path traversal, PHP and command injection
- Learning and active modes, bot blocking, security headers, rate limiting
- 25+ hardening toggles for wp-config access, author enumeration and REST API
- Optional Extended Protection: pre-WordPress request inspection (opt-in, fully reversible)
Malware Scanner and Removal
- Malware detection rules across files, the database and scheduled tasks
- Core, plugin and theme file-integrity verification via the WordPress.org API
- Scheduled scans, one-click quarantine and restore
- Malware removal on a hacked site: quarantine a finding, or repair a modified core, plugin or theme file from its original copy
Login Security, Two-Factor Authentication (2FA) and Brute Force Protection
- Role-based two-factor authentication (RFC 6238 TOTP)
- reCAPTCHA, hCaptcha and Cloudflare Turnstile, plus a built-in math CAPTCHA
- Brute-force protection with progressive lockout, honeypot and login URL rename
- Leaked-password checking, session management, custom login page
حركة المرور المباشرة
- Real-time request logging with bot detection and CSV export
- Exclusion filtering by role, IP, country or URI
IP and Country Blocking
- قوائم سماح أو حظر للدول والقارات
- IP and CIDR blocking, temporary or permanent, with allow-list support
Supply Chain and Threat Intelligence
- Reputation scoring and abandoned-plugin detection
- Known-vulnerability alerts for core, plugins, themes and PHP
- Update-integrity verification with backups and an SBOM inventory
سجل التدقيق
- Activity tracking across 11 object types and 14 actions
Alarms
- 36 alert event types delivered by Email, Telegram or Slack
Every feature runs locally with no license key. Optionally, the WordSec service at wordsec.net supplies threat-intelligence data that cannot be produced locally: managed WAF rule sets, the malware signature feed, IP-reputation lists, the GeoIP database and vulnerability records. Connecting is optional and every external service is documented in “External services” below.
الخدمات الخارجية
صُمِّم WordSec للعمل محلياً، وبدون مفتاح ترخيص فإنه لا يُجري أي طلبات صادرة إلى خدمة WordSec. تعمل تصفية الطلبات الأساسية وفحص الملفات على خادمك. لا يُتَّصَل بالخدمات المذكورة أدناه إلا للميزات المُحدَّدة الموصوفة، ومعظمها فقط عند تفعيلك تلك الميزة صراحةً (أو، بالنسبة لـ WordSec API، فقط بعد تفعيلك مفتاح ترخيص). يوثِّق هذا القسم كل خدمة طرف ثالث يمكن للإضافة الاتصال بها والبيانات التي تتلقاها كل منها.
WordSec API (api.wordsec.net)
يعمل WordSec مجاناً بدون ترخيص، وفي هذه الحالة لا يتصل بهذه الخدمة على الإطلاق. يتوفر ترخيص مجاني للجميع؛ وبمجرد تفعيلك مفتاحاً تتواصل الإضافة مع خدمة WordSec لغرضين متمايزين:
- استدعاءات الخدمة المطلوبة (فقط أثناء نشاط مفتاح ترخيص): تفعيل الترخيص والتحقق منه، وتحديثات بيانات التهديدات (قواعد جدار الحماية، توقيعات البرمجيات الخبيثة، قوائم سمعة IP، بيانات GeoIP، قائمة نطاقات البريد الإلكتروني المؤقت وبيانات الثغرات الأمنية المعروفة). تُفعِّل هذه الميزات المدعومة سحابياً ولا يمكن تنفيذها محلياً؛ وبدون مفتاح، لا يُجرى أي من هذه الاستدعاءات. أما كود الإنفاذ المحلي لهذه الميزات (محرّك WAF، وفاحص البرمجيات الخبيثة، ومرشِّحات حظر IP، ومرشِّح تقييد التسجيل) فهو حاضر ونشط دائماً؛ لكن دون موجز مُحدَّث لا يملك ببساطة أي بيانات استخبارات تهديدات ليفحص الطلبات مقابلها.
* متى: عند التفعيل/التحقق وعند فحوصات تحديث بيانات التهديدات المجدولة. * البيانات المُرسَلة: عنوان URL لموقعك ومفتاح الترخيص (يُستخدمان لمصادقتك وربط الترخيص بهذا الموقع)، وبالنسبة لفحوصات التحديث، الإصدارات الحالية لموجزات بيانات التهديدات المُثبَّتة لديك.
- قياس اختياري لبيانات الاستخدام/البيئة (اشتراك اختياري، مُعطَّل افتراضياً): لقطة مجهولة المصدر مرة واحدة يومياً تُستخدَم لتحسين WordSec. لا تُرسَل إلا بعد تفعيلك صراحةً “مشاركة بيانات الاستخدام والبيئة” (عند تفعيل الترخيص أو في الإعدادات ← متقدم ← بيانات الاستخدام) ويمكن إيقافها مرة أخرى في أي وقت.
* متى: مرة واحدة يومياً، فقط أثناء تفعيل الاشتراك. * البيانات المُرسَلة: لقطة غير شخصية عن بيئة الموقع (إصدارات الخادم وWordPress وPHP وقاعدة البيانات، وقائمة الإضافات والقوالب النشطة) وإحصاءات مُجمَّعة عن استخدام ميزات WordSec والأمان. لا تُرسَل أبداً أي كلمات مرور أو بيانات اعتماد قاعدة البيانات أو مفاتيح سرية أو عناوين بريد إلكتروني.
- شروط الخدمة: https://wordsec.net/terms
- سياسة الخصوصية: https://wordsec.net/privacy
Have I Been Pwned (api.pwnedpasswords.com)
يُستخدَم من قِبل فحص كلمات المرور المُسرَّبة الاختياري لاكتشاف ما إذا كانت كلمة مرور تظهر في اختراقات بيانات معروفة، باستخدام k-anonymity. * متى: عند تعيين مستخدم لكلمة مرور أو إرسالها وكون فحص كلمات المرور المُسرَّبة مُفعَّلاً. * البيانات المُرسَلة: فقط أول 5 أحرف من تجزئة SHA-1 لكلمة المرور. أما كلمة المرور نفسها وتجزئتها الكاملة فلا تغادران موقعك أبداً. * الشروط والخصوصية: https://haveibeenpwned.com/Privacy
WordPress.org API (api.wordpress.org, downloads.wordpress.org, wordpress.org, core.svn.wordpress.org, plugins.svn.wordpress.org, themes.svn.wordpress.org)
يُستخدم للتحقق من سلامة ملفات نواة WordPress والإضافات والقوالب، وللاستعلام عن المعلومات العامة للإضافات/القوالب (plugins_api/themes_api) من أجل درجات سمعة سلسلة التوريد وفحوصات سلامة التحديثات، ولتنزيل حزمة لغة ترجمة WordSec نفسها من translate.wordpress.org عندما تختار لغة عرض غير مثبتة بعد (الآلية نفسها التي يستخدمها WordPress عند تغيير لغة الموقع)، وكذلك (فقط عند نقرك على “إصلاح” في إحدى نتائج الفاحص) لتنزيل النسخة الأصلية من ملف نواة/إضافة/قالب معدَّل حتى يمكن استعادته. تجلب تنزيلات الإصلاح ملفات أصلية مفردة من plugins.svn.wordpress.org / themes.svn.wordpress.org / core.svn.wordpress.org، مع الرجوع عند الحاجة إلى الحزم الكاملة من downloads.wordpress.org (ملفات zip للإضافات/القوالب) و wordpress.org (ملفات zip لإصدارات النواة). * متى: أثناء فحوصات البرمجيات الخبيثة/السلامة وفحوصات سمعة سلسلة التوريد، وعند تنفيذ إجراء إصلاح صريح، وعند حفظ لغة عرض لم تُثبَّت ترجمتها بعد. * البيانات المُرسَلة: إصدار نواة WordPress، ولغة الموقع، ومعرّفات/إصدارات الإضافات والقوالب التي يجري فحصها؛ وعند تنزيل لغة، معرّف/إصدار الإضافة واللغة المختارة. * الشروط والخصوصية: https://wordpress.org/about/privacy/
RDAP (rdap.org)
يُستخدَم من قِبل أداة بحث WHOIS/RDAP في صفحة الأدوات لعرض معلومات الملكية لعنوان IP أو نطاق تفحصه. * متى: فقط عند تشغيلك أداة بحث WHOIS/RDAP. * البيانات المُرسَلة: عنوان IP أو النطاق الذي اخترت البحث عنه. * الشروط والخصوصية: https://about.rdap.org/
ipify (api.ipify.org)
يُستخدَم من قِبل مُدقِّق القائمة السوداء في صفحة الأدوات وأداة معلومات الخادم لتحديد عنوان IP العام الخاص بخادمك. * متى: فقط عند تشغيلك أداة “فحص القائمة السوداء” أو “عناوين IP للخادم”. * البيانات المُرسَلة: طلب بسيط من خادمك؛ لا تُضمَّن أي بيانات للموقع (تكتفي الخدمة بإرجاع عنوان IP الطالِب). * الشروط والخصوصية: https://www.ipify.org/
مزوّدو قوائم حظر DNS (أداة فحص القائمة السوداء)
يستعلم اختبار “فحص القائمة السوداء” في صفحة الأدوات من قوائم الحظر المعتمدة على DNS (DNSBLs) ليخبرك بما إذا كان عنوان IPv4 العام لخادمك مُدرَجاً. يتلقى كل مزوّد استعلام DNS قياسياً يحتوي على عنوان IP الخاص بخادمك بصيغة معكوسة. يُستعلَم من خمسة مزوّدين: * Spamhaus ZEN (zen.spamhaus.org) – https://www.spamhaus.org/privacy-notice/ * SpamCop (bl.spamcop.net)، تُشغّلها Cisco – https://www.cisco.com/c/en/us/about/legal/privacy-full.html * Barracuda Reputation Block List (b.barracudacentral.org) – https://www.barracuda.com/company/legal/privacy-policy * UCEPROTECT Level 1 (dnsbl-1.uceprotect.net) – https://www.uceprotect.net/en/index.php * PSBL (psbl.surriel.com) – https://psbl.org/ التفاصيل: * متى: فقط عند نقرك على “فحص القائمة السوداء” في صفحة الأدوات. * البيانات المُرسَلة: عنوان IPv4 العام لخادمك، مُضمَّناً في كل استعلام لقائمة حظر DNS.
Telegram Bot API (api.telegram.org)
قناة تسليم تنبيهات اختيارية. تعمل فقط عند إعدادك رمز bot الخاص بـ Telegram ومُعرِّف الدردشة (chat ID) الخاصين بك. * متى: عند إطلاق تنبيه أمني فعّلته وكون تسليم Telegram مُعدّاً. * البيانات المُرسَلة: نص رسالة التنبيه (نوع الحدث، اسم الموقع، سياق IP/المستخدم ذي الصلة) إلى الـ bot/الدردشة التي أعددتها. * شروط الخدمة: https://telegram.org/tos * سياسة الخصوصية: https://telegram.org/privacy
Slack Incoming Webhooks (hooks.slack.com)
قناة تسليم تنبيهات اختيارية. تعمل فقط عند إعدادك عنوان URL لـ incoming-webhook الخاص بـ Slack. * متى: عند إطلاق تنبيه أمني فعّلته وكون تسليم Slack مُعدّاً. * البيانات المُرسَلة: نص رسالة التنبيه (نوع الحدث، اسم الموقع، سياق IP/المستخدم ذي الصلة) إلى الـ webhook الذي أعددته. * شروط الخدمة: https://slack.com/terms-of-service * سياسة الخصوصية: https://slack.com/privacy-policy
Google reCAPTCHA (www.google.com, www.gstatic.com)
CAPTCHA اختياري لتسجيل الدخول/التسجيل. يعمل فقط عند اختيارك reCAPTCHA وتوفيرك مفاتيحك الخاصة. * متى: على نماذج تسجيل الدخول والتسجيل أثناء التفعيل. * يُحمَّل عن بُعد: يتطلب reCAPTCHA تحميل سكربت الأداة الخاص به (www.google.com/recaptcha/api.js، المُقدَّم مع الأصول من www.gstatic.com) من Google في متصفح الزائر؛ يُدرَج فقط على تلك النماذج وفقط أثناء كون reCAPTCHA هو المزوّد المُختار. التحقق من الرمز المميز هو استدعاء من جانب الخادم من موقعك إلى www.google.com. * البيانات المُرسَلة: رمز استجابة CAPTCHA، ومفتاح موقعك العام، وعنوان IP الزائر. * شروط الخدمة: https://policies.google.com/terms * سياسة الخصوصية: https://policies.google.com/privacy
hCaptcha (hcaptcha.com, js.hcaptcha.com)
CAPTCHA اختياري لتسجيل الدخول/التسجيل. يعمل فقط عند اختيارك hCaptcha وتوفيرك مفاتيحك الخاصة. * متى: على نماذج تسجيل الدخول والتسجيل أثناء التفعيل. * يُحمَّل عن بُعد: يتطلب hCaptcha تحميل سكربت الأداة الخاص به (js.hcaptcha.com/1/api.js) من hCaptcha في متصفح الزائر؛ يُدرَج فقط على تلك النماذج وفقط أثناء كون hCaptcha هو المزوّد المُختار. التحقق من الرمز المميز هو استدعاء من جانب الخادم من موقعك إلى hcaptcha.com. * البيانات المُرسَلة: رمز استجابة CAPTCHA، ومفتاح موقعك العام، وعنوان IP الزائر. * شروط الخدمة: https://www.hcaptcha.com/terms * سياسة الخصوصية: https://www.hcaptcha.com/privacy
Cloudflare Turnstile (challenges.cloudflare.com)
CAPTCHA اختياري لتسجيل الدخول/التسجيل. يعمل فقط عند اختيارك Turnstile وتوفيرك مفاتيحك الخاصة. * متى: على نماذج تسجيل الدخول والتسجيل أثناء التفعيل. * يُحمَّل عن بُعد: يتطلب Turnstile تحميل سكربت الأداة الخاص به (challenges.cloudflare.com/turnstile/v0/api.js) من Cloudflare في متصفح الزائر؛ يُدرَج فقط على تلك النماذج وفقط أثناء كون Turnstile هو المزوّد المُختار. التحقق من الرمز المميز هو استدعاء من جانب الخادم من موقعك إلى challenges.cloudflare.com. * البيانات المُرسَلة: رمز استجابة CAPTCHA، ومفتاح موقعك العام، وعنوان IP الزائر. * شروط الخدمة: https://www.cloudflare.com/website-terms/ * سياسة الخصوصية: https://www.cloudflare.com/privacypolicy/
ipwhois.io (ipwho.is)
Optional IP details service, disabled by default. All requests go over HTTPS with certificate verification, and none are made until you enable “External IP Lookup Service” in WordSec Settings (Visitor IP Handling section). It is used for exactly one thing: the “IP details” lookup in Live Traffic (country, region, city, ISP, organization, ASN). Traffic logging never contacts this service; country resolution during logging uses only the local GeoIP database. * When: only while the External IP Lookup Service opt-in is enabled, and only on your click in the IP details lookup. * Data sent: the IP address you chose to inspect. * Terms of Service: https://ipwhois.io/terms * Privacy Policy: https://ipwhois.io/privacy
VirusTotal (virustotal.com)
لا يُتَّصَل بها تلقائياً. يعرض الفاحص رابط “التحقق على VirusTotal” يمكنك النقر عليه لفتح VirusTotal في متصفحك لملف مُعيَّن. * متى: فقط عند نقرك على الرابط. * البيانات المُرسَلة: تجزئة (hash) الملف المُتضمَّنة في عنوان URL للرابط. * الشروط والخصوصية: https://docs.virustotal.com/docs/privacy-policy
Qualys SSL Labs (ssllabs.com)
لا يُتَّصَل بها تلقائياً. يعمل اختبار “فحص صحة SSL” في صفحة الأدوات بالكامل على خادمك الخاص (يفتح اتصال TLS بنطاقك الخاص ويقرأ الشهادة). وبجانبه، يفتح رابط “فحص عميق (SSL Labs)” اختبار Qualys SSL Labs في علامة تبويب جديدة في المتصفح؛ يتصل SSL Labs عندئذٍ بموقعك من الخارج ويُقيّم إعداد TLS الخاص به. يحمل الرابط علامة “إخفاء النتائج”، لذا لا يُنشَر التقرير على اللوحة العامة لـ SSL Labs. * متى: فقط عند نقرك على رابط “فحص عميق (SSL Labs)”. * البيانات المُرسَلة: اسم نطاق موقعك، المُتضمَّن في عنوان URL للرابط. * الشروط: https://www.ssllabs.com/about/terms.html * الخصوصية: https://www.qualys.com/company/privacy/
الشكر والتقدير
يُضمِّن WordSec مكتبات الأطراف الثالثة المذكورة أدناه. تُوزَّع كل مكتبة بموجب ترخيص متوافق مع ترخيص WordSec نفسه “GPLv2 or later”. تحتفظ كل مكتبة مُضمَّنة بلافتة الترخيص داخل ملفاتها و/أو بملف الترخيص الأصلي الخاص بها، والمصدر الأصلي الكامل (غير المُصغَّر) لكل منها متاح في المشروع والإصدار المرتبطين.
مكتبات PHP (`vendor/`)
TCPDF 6.11.3
* الترخيص: LGPL-3.0-or-later
* حقوق النشر: Nicola Asuni, Tecnick.com LTD
* المصدر: https://github.com/tecnickcom/TCPDF
* ملف الترخيص: vendor/tecnickcom/tcpdf/LICENSE.TXT
* يُستخدَم لـ: توليد تقارير/تصدير PDF
SimpleXLSXGen 1.5.x
* الترخيص: MIT
* حقوق النشر: (c) 2020-2022 Sergey Shuchkin
* المصدر: https://github.com/shuchkin/simplexlsxgen
* ملف الترخيص: vendor/shuchkin/simplexlsxgen/LICENSE
* يُستخدَم لـ: تصدير XLSX (Excel)
مكتبات JavaScript / CSS (`assets/*/vendor/`)
Select2 4.1.0-rc.0
* الترخيص: MIT
* حقوق النشر: Kevin Brown, Igor Vaynberg, and the Select2 contributors
* المصدر: https://github.com/select2/select2
* نص الترخيص: https://github.com/select2/select2/blob/master/LICENSE.md
* الملفات المُضمَّنة: assets/js/vendor/select2.min.js، assets/css/vendor/select2.min.css
ApexCharts 5.16.0
* الترخيص: MIT
* حقوق النشر: (c) 2018-2026 ApexCharts
* المصدر: https://github.com/apexcharts/apexcharts.js
* نص الترخيص: https://github.com/apexcharts/apexcharts.js/blob/main/LICENSE
* الملفات المُضمَّنة: assets/js/vendor/apexcharts.min.js
jsVectorMap 1.7.0
* الترخيص: MIT
* حقوق النشر: (c) Mustafa Omar and the jsVectorMap contributors
* المصدر: https://github.com/themustafaomar/jsvectormap
* نص الترخيص: https://github.com/themustafaomar/jsvectormap/blob/master/LICENSE
* الملفات المُضمَّنة: assets/js/vendor/jsvectormap.min.js، assets/css/vendor/jsvectormap.min.css
* يُستخدَم لـ: تصورات خريطة العالم (حركة المرور المباشرة / الحظر / جدار الحماية)
بيانات خريطة العالم (world_mill)، المُسجَّلة كخريطة “world” في jsVectorMap
* الترخيص: MIT
* حقوق النشر: مساهمو jvectormap-content؛ هندسة الخريطة مُشتقّة من Natural Earth (public domain)
* المصدر: https://www.npmjs.com/package/jvectormap-content
* الملفات المُضمَّنة: assets/js/vendor/world.js
* يُستخدَم لـ: هندسة الدول المعروضة في تصورات خريطة العالم أعلاه
qrcode-generator 1.4.4
* الترخيص: MIT
* حقوق النشر: Kazuhiko Arase
* المصدر: https://github.com/kazuhikoarase/qrcode-generator
* نص الترخيص: https://github.com/kazuhikoarase/qrcode-generator/blob/master/LICENSE
* الملفات المُضمَّنة: assets/js/vendor/qrcode.min.js
الأيقونات / الأصول
flag-icons (ملفات SVG لأعلام الدول)
* الترخيص: MIT (ترميز SVG)؛ أما تصاميم الأعلام نفسها فهي في public domain
* حقوق النشر: (c) 2013 Panayiotis Lipiridis
* المصدر: https://github.com/lipis/flag-icons
* نص الترخيص: https://github.com/lipis/flag-icons/blob/main/LICENSE
* الملفات المُضمَّنة: assets/images/flags/*.svg (أعلام الدول، 4×3 viewBox="0 0 640 480")
