ChurchCRM: Authenticated Remote Code Execution via Unrestricted PHP File Write in Database Restore Function
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Privilege escalation, Code execution, Information disclosure
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-269, CWE-434 and CWE-552.
Summary
ChurchCRM is an open-source church management system. In versions prior to 7.2.0, the database backup restore functionality extracts uploaded archive contents and copies files from the Images/ directory into the web-accessible document root using recursiveCopyDirectory(), which performs no file extension filtering. An authenticated administrator can upload a crafted backup archive containing a PHP webshell inside the Images/ directory, which is then written to a publicly accessible path and executable via HTTP requests, resulting in remote code execution as the web server user. The restore endpoint also lacks CSRF token validation, enabling exploitation through cross-site request forgery targeting an authenticated administrator. This issue has been fixed in version 7.2.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA CRM (ChurchCRM) Fixed in 7.2.0
Timeline
- 2026-10-02 Threatist record created from CVE-2026-40484
References
More ChurchCRM vulnerabilities
- TI-2026-30599 ChurchCRM: Incomplete fix for CVE-2026-39337: Unauthenticated RCE in Setup Wizard via unsanitized DB_PASSWORD CVSS 3.1CRITICAL 10.0
- TI-2026-28325 ChurchCRM Affected by Unauthenticated RCE in Install Wizard CVSS 3.1CRITICAL 10.0
- TI-2025-38761 ChurchCRM has unauthenticated RCE in its Install Wizard CVSS 3.1CRITICAL 10.0
- TI-2024-35802 EventAttendance.php in ChurchCRM 5.7.0 is vulnerable to SQL injection. CVSS 3.1CRITICAL 9.8
- TI-2024-16997 ChurchCRM 5.5.0 /EventEditor.php is vulnerable to Blind SQL Injection (Time-based) via the EventCount POST parameter. CVSS 3.1CRITICAL 9.8
- TI-2025-41969 ChurchCRM vulnerable to time-based blind SQL Injection in ConfirmReportEmail.php CVSS 4.0CRITICAL 9.3
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences