Unpatched Vulnerabilities in Voyager Allow Remote Code Execution

Learn about the importance of securing open-source admin tools and the potential risks of unpatched vulnerabilities.

 

The open-source Laravel admin package Voyager has three unpatched vulnerabilities that could lead to remote code execution attacks when an authenticated user clicks on a malicious link. These vulnerabilities include bypassing MIME-type verification to upload malicious files, improper input sanitization allowing JavaScript injection, and file management flaws enabling unauthorized file manipulation. Despite attempts to notify the maintainers, the issues remain unresolved. Voyager users, primarily Laravel developers and small businesses, are advised to restrict access to trusted users, use role-based access control, and implement server-level security measures to mitigate risk.

 

Key Facts

Risks:

Open Source, Web App/Website Vulnerability, Patch Management, Privilege Escalation

Keywords:

Voyager, Laravel, Remote Code Execution, CVE-2024-55417, Open Source Vulnerability

CVE:

CVE-2024-55417; CVE-2024-55416; CVE-2024-55415

Affected:

Voyager

 

Article Body

Voyager Vulnerability Exposes Laravel Admin Package to Remote Code Execution

The Laravel admin package Voyager, widely used for managing Laravel applications, is currently vulnerable to remote code execution (RCE) attacks due to three unpatched security flaws. These vulnerabilities can be exploited when an authenticated Voyager user interacts with a malicious link. Despite efforts by researchers to notify the maintainers, the issues remain unresolved.

Identified Vulnerabilities

  1. Arbitrary File Write Vulnerability (CVE-2024-55417): Voyager's media upload feature allows attackers to bypass MIME-type verification and upload malicious files. By crafting a polyglot file that masquerades as an image or video but contains executable PHP code, attackers can execute code remotely if these files are processed on the server.

  2. JavaScript Injection via Improper Input Sanitization (CVE-2024-55416): The /admin/compass endpoint fails to sanitize user inputs properly, enabling attackers to inject JavaScript into popup messages. When an authenticated admin clicks on a malicious link, the injected script executes in their browser, potentially allowing attackers to perform unauthorized actions, including escalating to RCE.

  3. File Management System Flaw (CVE-2024-55415): This vulnerability allows attackers to manipulate file paths, enabling unauthorized file deletion or access on the server. Exploiting this flaw can disrupt services, erase critical files, or extract sensitive information.

Impact and Mitigation

Voyager is popular among Laravel developers, startups, freelance developers, and small to medium-sized businesses that use Laravel for internal tools or CMS-based applications. Given its widespread use, the vulnerabilities pose a significant risk.

To mitigate these risks, users should restrict access to trusted users only and limit "browse_media" permissions to prevent unauthorized file uploads. Implementing role-based access control (RBAC) can further minimize exposure. Server-level security measures should include disabling PHP file execution, enforcing strict MIME type validation to reject polyglot files, and regularly monitoring logs for unusual activities related to file uploads or access.

Voyager's popularity, reflected in its 2,700 forks on GitHub and over 11,800 stars, underscores the urgency of addressing these vulnerabilities to safeguard its extensive user base.

 

Read More

https://www.bleepingcomputer.com/news/security/laravel-admin-package-voyager-vulnerable-to-one-click-rce-flaw/