{"api_version":"1","generated_at":"2026-04-18T05:18:42+00:00","cve":"CVE-2026-40485","urls":{"html":"https://cve.report/CVE-2026-40485","api":"https://cve.report/api/cve/CVE-2026-40485.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-40485","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-40485"},"summary":{"title":"ChurchCRM: Username Enumeration via Differential Response in Public Login API","description":"ChurchCRM is an open-source church management system. In versions prior to 7.2.0, the public API login endpoint (/api/public/user/login) returns distinguishable HTTP response codes based on whether a username exists: 404 for non-existent users and 401 for valid users with incorrect passwords. An unauthenticated attacker can exploit this difference to enumerate valid usernames, with no rate limiting or account lockout to impede the process. This issue has been fixed in version 7.2.0.","state":"PUBLISHED","assigner":"GitHub_M","published_at":"2026-04-18 00:16:39","updated_at":"2026-04-18 00:16:39"},"problem_types":["CWE-204","CWE-307","CWE-307 CWE-307: Improper Restriction of Excessive Authentication Attempts","CWE-204 CWE-204: Observable Response Discrepancy"],"metrics":[{"version":"3.1","source":"security-advisories@github.com","type":"Secondary","score":"5.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","baseScore":5.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"LOW","integrityImpact":"NONE","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"5.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","data":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":5.3,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","version":"3.1"}}],"references":[{"url":"https://github.com/ChurchCRM/CRM/pull/8607","name":"https://github.com/ChurchCRM/CRM/pull/8607","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/ChurchCRM/CRM/security/advisories/GHSA-x2qh-xmhq-4jpx","name":"https://github.com/ChurchCRM/CRM/security/advisories/GHSA-x2qh-xmhq-4jpx","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/ChurchCRM/CRM/commit/214694eb83778e1f5e52b3dfa2a99d0e965c1850","name":"https://github.com/ChurchCRM/CRM/commit/214694eb83778e1f5e52b3dfa2a99d0e965c1850","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-40485","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-40485","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"ChurchCRM","product":"CRM","version":"affected < 7.2.0","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"product":"CRM","vendor":"ChurchCRM","versions":[{"status":"affected","version":"< 7.2.0"}]}],"descriptions":[{"lang":"en","value":"ChurchCRM is an open-source church management system. In versions prior to 7.2.0, the public API login endpoint (/api/public/user/login) returns distinguishable HTTP response codes based on whether a username exists: 404 for non-existent users and 401 for valid users with incorrect passwords. An unauthenticated attacker can exploit this difference to enumerate valid usernames, with no rate limiting or account lockout to impede the process. This issue has been fixed in version 7.2.0."}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":5.3,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-307","description":"CWE-307: Improper Restriction of Excessive Authentication Attempts","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-204","description":"CWE-204: Observable Response Discrepancy","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-04-17T23:29:35.884Z","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M"},"references":[{"name":"https://github.com/ChurchCRM/CRM/security/advisories/GHSA-x2qh-xmhq-4jpx","tags":["x_refsource_CONFIRM"],"url":"https://github.com/ChurchCRM/CRM/security/advisories/GHSA-x2qh-xmhq-4jpx"},{"name":"https://github.com/ChurchCRM/CRM/pull/8607","tags":["x_refsource_MISC"],"url":"https://github.com/ChurchCRM/CRM/pull/8607"},{"name":"https://github.com/ChurchCRM/CRM/commit/214694eb83778e1f5e52b3dfa2a99d0e965c1850","tags":["x_refsource_MISC"],"url":"https://github.com/ChurchCRM/CRM/commit/214694eb83778e1f5e52b3dfa2a99d0e965c1850"}],"source":{"advisory":"GHSA-x2qh-xmhq-4jpx","discovery":"UNKNOWN"},"title":"ChurchCRM: Username Enumeration via Differential Response in Public Login API"}},"cveMetadata":{"assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","assignerShortName":"GitHub_M","cveId":"CVE-2026-40485","datePublished":"2026-04-17T23:29:35.884Z","dateReserved":"2026-04-13T19:50:42.114Z","dateUpdated":"2026-04-17T23:29:35.884Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-04-18 00:16:39","lastModifiedDate":"2026-04-18 00:16:39","problem_types":["CWE-204","CWE-307","CWE-307 CWE-307: Improper Restriction of Excessive Authentication Attempts","CWE-204 CWE-204: Observable Response Discrepancy"],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","baseScore":5.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"LOW","integrityImpact":"NONE","availabilityImpact":"NONE"},"exploitabilityScore":3.9,"impactScore":1.4}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"40485","Ordinal":"1","Title":"ChurchCRM: Username Enumeration via Differential Response in Pub","CVE":"CVE-2026-40485","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"40485","Ordinal":"1","NoteData":"ChurchCRM is an open-source church management system. In versions prior to 7.2.0, the public API login endpoint (/api/public/user/login) returns distinguishable HTTP response codes based on whether a username exists: 404 for non-existent users and 401 for valid users with incorrect passwords. An unauthenticated attacker can exploit this difference to enumerate valid usernames, with no rate limiting or account lockout to impede the process. This issue has been fixed in version 7.2.0.","Type":"Description","Title":"ChurchCRM: Username Enumeration via Differential Response in Pub"}]}}}