„`html
Zusammenfassung
Das WordPress-Plugin GamiPress (Versionen bis 7.9.9.1) weist eine Stored Cross-Site Scripting (XSS) Schwachstelle auf. Die Vulnerability betrifft das Shortcode-Attribut ‚heading_size‘ im ‚gamipress_achievement‘ Shortcode. Authentifizierte Angreifer mit Contributor-Berechtigung oder höher können beliebige Webskripte in WordPress-Seiten einschleusen, die bei jedem Seitenaufruf ausgeführt werden.
Betroffene Systeme
- GamiPress – Gamification Plugin für WordPress
- Alle Versionen bis einschließlich 7.9.9.1
- WordPress-Installationen mit aktiviertem GamiPress-Plugin
CVSS Score: 6.4 (Medium)
Angriffsvektor: Network
Authentifizierung erforderlich: Ja (Contributor-Level)
Technische Details
Die Schwachstelle resultiert aus unzureichender Input-Sanitization und Output-Escaping des ‚heading_size‘ Attributs. Die WordPress-Funktion wp_kses_post neutralisiert die malicious Payload nicht, da der injizierte Code in einem Shortcode-Attribut gespeichert wird, nicht als rohes HTML-Tag. Bei der Renderzeit wird der Wert ohne Escaping in das HTML emittiert.
Ein Angreifer kann beispielsweise folgenden Payload in den Shortcode einschleusen:
[gamipress_achievement heading_size="1\" onload=\"alert('XSS')\"]
Der Payload wird persistent in der Datenbank gespeichert und bei jedem Seitenaufruf ausgeführt.
Empfohlene Massnahmen
- GamiPress-Plugin auf die nächste gepatchte Version aktualisieren
- Zugriff auf Shortcode-Verwaltung auf vertrauenswürdige Benutzer beschränken
- Regelmäßige Sicherheitsaudits durchführen
- Content Security Policy (CSP) implementieren
- Plugin-Aktivität überwachen
Bewertung
Medium-Severity-Vulnerability mit CVSS 6.4. Das Ausnutzungsrisiko ist moderat, da Angreifer authentifiziert sein müssen. Dennoch sollte zeitnah ein Patch eingespielt werden. Gegenwärtig ist kein Patch verfügbar – Alternative Plugins sollten evaluiert werden.
„`