The Google+ Link Name plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'gplusnamelink' shortcode in versions up to, and including, 1.0. This is due to insufficient input sanitization and output escaping on user supplied attributes ('id' and 'name') in the gplusnamelink_generate() function, which are concatenated directly into the rendered HTML without calling esc_attr() or esc_html(). This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
The Google+ Link Name WordPress plugin (versions ≤1.0) contains a Stored Cross-Site Scripting (XSS) vulnerability in the 'gplusnamelink' shortcode due to insufficient input sanitization. Authenticated contributors can inject malicious scripts that execute for all page visitors. While currently unpatched, the vulnerability requires contributor-level access, limiting immediate risk but posing significant threat to multi-user WordPress installations common in Saudi organizations.
IMMEDIATE ACTIONS:
1. Audit all WordPress installations for Google+ Link Name plugin presence using WP-CLI: wp plugin list | grep 'google-plus'
2. Disable the plugin immediately: wp plugin deactivate google-plus-link-name
3. Review user access logs for contributor+ accounts that may have created/modified posts with 'gplusnamelink' shortcodes
4. Search database for malicious shortcodes: SELECT * FROM wp_posts WHERE post_content LIKE '%gplusnamelink%'
PATCHING GUIDANCE:
1. No official patch available—plugin appears abandoned
2. Remove the plugin entirely: wp plugin delete google-plus-link-name
3. If functionality is required, migrate to actively maintained alternatives (e.g., Elementor, Divi)
COMPENSATING CONTROLS:
1. Implement Web Application Firewall (WAF) rules to detect/block XSS patterns in shortcode attributes
2. Restrict contributor role to trusted staff only; use Editor role for content approval workflows
3. Enable WordPress security plugins (Wordfence, Sucuri) with XSS detection
4. Implement Content Security Policy (CSP) headers to mitigate XSS execution
5. Regular security audits of user-generated content and post revisions
DETECTION RULES:
1. Monitor wp_postmeta for suspicious 'gplusnamelink' attribute values containing script tags
2. Alert on any post modifications by contributor-level accounts
3. WAF rule: Block requests containing 'gplusnamelink' with unescaped HTML/JavaScript patterns
4. Log analysis: Search for '<script>', 'onerror=', 'onclick=' within shortcode parameters
الإجراءات الفورية:
1. تدقيق جميع تثبيتات WordPress للتحقق من وجود مكون Google+ Link Name باستخدام WP-CLI
2. تعطيل المكون فوراً
3. مراجعة سجلات الوصول للمستخدمين ذوي صلاحيات المساهم وما فوق
4. البحث في قاعدة البيانات عن اختصارات مريبة
إرشادات التصحيح:
1. لا يوجد تصحيح رسمي متاح—يبدو أن المكون مهجور
2. إزالة المكون بالكامل
3. إذا كانت الوظيفة مطلوبة، الهجرة إلى بدائل نشطة
الضوابط التعويضية:
1. تنفيذ قواعد جدار حماية تطبيقات الويب لكشف/حجب أنماط XSS
2. تقييد دور المساهم للموظفين الموثوقين فقط
3. تفعيل مكونات أمان WordPress
4. تنفيذ رؤوس سياسة أمان المحتوى
5. عمليات تدقيق أمان منتظمة للمحتوى الذي ينشئه المستخدمون
قواعد الكشف:
1. مراقبة قيم سمات 'gplusnamelink' المريبة التي تحتوي على علامات البرامج النصية
2. التنبيه على أي تعديلات على المنشورات من قبل حسابات مستوى المساهم
3. قاعدة WAF: حجب الطلبات التي تحتوي على أنماط HTML/JavaScript غير معالجة
4. تحليل السجل: البحث عن أنماط ضارة في معاملات الاختصار