Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
6DescriptionGitHub Advisory
ChurchCRM is an open-source church management system. Prior to 7.1.0, an authenticated API user can modify any family record's state without proper authorization by simply changing the {familyId} parameter in requests, regardless of whether they possess the required EditRecords privilege. /family/{familyId}/verify, /family/{familyId}/verify/url, /family/{familyId}/verify/now, /family/{familyId}/activate/{status}, and /family/{familyId}/geocode lack role-based access control, allowing users to deactivate/reactivate arbitrary families, spam verification emails, and mark families as verified and trigger geocoding. This vulnerability is fixed in 7.1.0.
AnalysisAI
Insecure Direct Object Reference (IDOR) in ChurchCRM API allows authenticated low-privilege users to manipulate arbitrary family records without proper authorization checks. Attackers with any valid API credentials can modify family verification status, trigger spam emails, activate/deactivate accounts, and force geocoding operations on any family record by manipulating the familyId parameter in API requests. Affects all ChurchCRM versions prior to 7.1.0. CVSS 8.1 (High) reflects the network-accessible attack vector with low complexity and high integrity/availability impact. No evidence of active exploitation (CISA KEV negative) or public exploit code at time of analysis, but the vulnerability is trivially exploitable given the low attack complexity and published security advisory.
Technical ContextAI
ChurchCRM (CPE: cpe:2.3:a:churchcrm:crm) is an open-source church management platform providing family and member record management through web-based APIs. This vulnerability manifests as CWE-639 (Authorization Bypass Through User-Controlled Key), a classic Insecure Direct Object Reference pattern. Five API endpoints (/family/{familyId}/verify, /family/{familyId}/verify/url, /family/{familyId}/verify/now, /family/{familyId}/activate/{status}, /family/{familyId}/geocode) accept user-supplied familyId parameters without validating whether the authenticated user has authorization to access or modify those specific family records. The endpoints fail to implement proper role-based access control (RBAC) checks, specifically neglecting to verify the EditRecords privilege that should gate these operations. This allows horizontal privilege escalation where any authenticated API user can enumerate and manipulate family records belonging to other church members by iterating through familyId values, bypassing the intended authorization boundary between families.
RemediationAI
Upgrade to ChurchCRM version 7.1.0 immediately, which contains authorization checks on the vulnerable API endpoints to validate user permissions before processing family record modifications. The vendor-released patch in 7.1.0 implements proper role-based access control validation that verifies EditRecords privileges and family ownership before allowing state changes. Organizations should update all ChurchCRM installations following standard upgrade procedures documented at the project repository. For environments where immediate patching is not feasible, implement compensating controls including restricting API access to only trusted administrative users, enabling comprehensive API audit logging to detect unauthorized family record access attempts, and monitoring for anomalous patterns such as rapid sequential requests to family endpoints with varying familyId parameters. Review application logs for potential exploitation attempts prior to patching, looking for suspicious API calls to /family/{familyId}/verify, /family/{familyId}/activate, and /family/{familyId}/geocode endpoints from non-administrative accounts. Consult the official security advisory at https://github.com/ChurchCRM/CRM/security/advisories/GHSA-vwh8-x823-wjc5 for additional vendor guidance and patch verification procedures.
ChurchCRM 5.5.0 FRCatalog.php is vulnerable to Blind SQL Injection (Time-based) via the CurrentFundraiser GET parameter.
ChurchCRM 5.5.0 /EventEditor.php is vulnerable to Blind SQL Injection (Time-based) via the EventCount POST parameter. Ra
A vulnerability exists in ChurchCRM 5.13.0 and prior that allows an attacker to execute arbitrary SQL queries by exploit
A vulnerability exists in ChurchCRM 5.13.0. Rated critical severity (CVSS 9.3), this vulnerability is remotely exploitab
A vulnerability exists in ChurchCRM 5.13.0 and prior that allows an attacker to execute arbitrary SQL queries by exploit
A vulnerability exists in ChurchCRM 5.13.0 and prior that allows an attacker to execute arbitrary SQL queries by exploit
A time-based blind SQL Injection vulnerability exists in the ChurchCRM 5.13.0 and prior EditEventAttendees.php within th
Authentication bypass in ChurchCRM API middleware enables unauthenticated remote attackers to access all protected endpo
ChurchCRM 5.5.0 FRCertificates.php is vulnerable to Blind SQL Injection (Time-based) via the CurrentFundraiser GET param
Authenticated SQL injection in ChurchCRM's PaddleNumEditor.php endpoint prior to version 6.7.2 allows any logged-in user
ChurchCRM is an open-source church management system. Rated high severity (CVSS 8.8), this vulnerability is remotely exp
ChurchCRM 4.5.4 endpoint /EditEventTypes.php is vulnerable to Blind SQL Injection (Time-based) via the EN_tyid POST para
Same technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-19826