CVE Catalog

CVE-2026-58408

MediumCVSS 6.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.22%

12th percentile - higher than 12% of all known CVEs

Summary

In ChurchCRM prior to version 7.4.0, a low-privileged user can bypass the /admin/export UI and exfiltrate the entire member directory. The POST /CSVCreateFile.php endpoint generates and streams a CSV containing the full Personally Identifiable Information (PII) of every Person/Family record in the database, without performing any feature-level or object-level authorization check beyond the coarse 'has any admin permission' gate inherited from the legacy page bootstrap. In other words, any single non-admin permission flag is enough to reach the CSV bulk-export endpoint, even though such users should not have data export rights. The export script is missing a dedicated isAdmin() (or a new bExportData) authorization check of its own. This issue has been fixed in version 7.4.0.

Risk Assessment

The organization risks exposure of sensitive Personally Identifiable Information (PII) of all members, potentially leading to data protection regulation violations (e.g., GDPR) and loss of trust. An attacker with minimal privileges can easily download the full personal data database.

Recommendation

Immediately upgrade ChurchCRM to version 7.4.0 or later. If an upgrade is not possible, temporarily restrict access to the POST /CSVCreateFile.php endpoint for all unauthorized users at the firewall or web server level.

Other vulnerabilities in ChurchCRM

See all
Original NVD description (English source)

ChurchCRM is an open-source church management system. Prior to version 7.4.0, a low-privileged user can bypass the /admin/export UI and exfiltrate the entire member directory. The POST /CSVCreateFile.php endpoint generates and streams a CSV containing the full Personally Identifiable Information (PII) of every Person/Family record in the database, without performing any feature-level or object-level authorization check beyond the coarse "has any admin permission" gate inherited from the legacy page bootstrap. In other words, any single non-admin permission flag is enough to reach the CSV bulk-export endpoint, even though such users should not have data export rights. The export script is missing a dedicated isAdmin() (or a new bExportData) authorization check of its own. This issue has been fixed in version 7.4.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS