Vvveb - v1.0.5 - Code Execution

By 0xhamy 04:15 AM - September 29th 2025
Type software
Product Environment web
Product Name Vvveb
Product Vendor Vvveb
Product Version 1.0.5
Product Link https://github.com/givanz/Vvveb
Vulnerability Name Code Execution
Severity Critical
CVSS String
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
CVSS Score 9.0
CVE ID CVE-2025-8518
Vendor Acknowledgement Yes
Affected digital Assets
268
Affected Users
26800
Date of Reporting Jan 03, 2025
PoC Exploit https://gist.github.com/0xHamy/f16fb399f8dd3a973acadc18fa07b1cb
Credit 0xhamy

Description

The Vvveb admin panel allows authenticated administrators to modify plugin code without any validation, enabling the execution of arbitrary malicious code. This vulnerability is exploitable through the endpoint /vadmin123/index.php?module=editor/code&type=themes, where an admin can edit PHP files such as theme.php to inject and execute a reverse shell, granting unauthorized access to the web server.


Reproduce

  1. Authenticate as an admin and navigate to the vulnerable endpoint:
    /vadmin123/index.php?module=editor/code&type=themes

  2. Locate and edit the theme.php file. Replace its contents with the following PHP reverse shell payload (available here):
    Update the IP and port in the payload to match your listener (e.g., using Netcat).

  3. Save the modified theme.php file.

  4. Trigger execution by accessing:
    /vadmin123/index.php?module=editor/editor&url=/&template=index.html

  5. Monitor your listener for the incoming connection. Example Netcat output:

    $ nc -lnvp 6060
    Listening on 0.0.0.0 6060
    Connection received on 127.0.0.1 33862
    Linux hx0 6.8.0-51-generic #52-Ubuntu SMP PREEMPT_DYNAMIC Thu Dec  5 13:09:44 UTC 2024 x86_64 Linux
    sh: w: not found
    uid=82(www-data) gid=82(www-data) groups=82(www-data),82(www-data)
    /bin/sh: can't access tty; job control turned off
    / $
    

Recommendation

  • Implement Code Validation and Sanitization: Enforce server-side validation on all code uploads or edits in the admin panel, such as whitelisting allowed functions, scanning for dangerous patterns (e.g., exec(), system(), or network callbacks), or using a sandboxed execution environment.

  • Restrict Admin Privileges: Limit file editing capabilities to trusted admins only, and use role-based access control (RBAC) to prevent broad code modification rights. Consider multi-factor authentication (MFA) for admin logins to mitigate brute-force risks.

  • Secure File Handling: Disable direct PHP execution in theme/plugin directories by configuring the web server (e.g., via .htaccess rules or Nginx directives) to serve files as static content or parse them through a secure preprocessor. Regularly audit and hash uploaded files for integrity.

  • General Best Practices: Keep Vvveb and all dependencies updated, conduct regular security audits, and monitor for anomalous admin activity. If chaining with XSS is a concern, implement Content Security Policy (CSP) headers and secure cookie attributes (e.g., HttpOnly and Secure).