The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • AI Data Pipelines
      Security Data Pipeline for AI SIEM and Data Optimization
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2026-40485

CVE-2026-40485: ChurchCRM User Enumeration Vulnerability

CVE-2026-40485 is a user enumeration flaw in ChurchCRM's public API that allows attackers to identify valid usernames through distinguishable HTTP responses. This article covers technical details, affected versions, and mitigation.

Published: April 23, 2026

CVE-2026-40485 Overview

CVE-2026-40485 is a username enumeration vulnerability affecting ChurchCRM, 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 in the system. The endpoint returns a 404 status code for non-existent users and a 401 status code for valid users with incorrect passwords. This information disclosure allows unauthenticated attackers to enumerate valid usernames within the system, with no rate limiting or account lockout mechanisms to impede the enumeration process.

Critical Impact

Attackers can enumerate valid usernames without authentication, enabling targeted credential attacks against confirmed user accounts in church management systems that often contain sensitive member data.

Affected Products

  • ChurchCRM versions prior to 7.2.0
  • ChurchCRM public API login endpoint (/api/public/user/login)
  • Self-hosted ChurchCRM installations with exposed API endpoints

Discovery Timeline

  • 2026-04-18 - CVE-2026-40485 published to NVD
  • 2026-04-20 - Last updated in NVD database

Technical Details for CVE-2026-40485

Vulnerability Analysis

This vulnerability is classified under CWE-204 (Observable Response Discrepancy), which occurs when an application reveals sensitive information through differences in its responses to similar requests. In the context of ChurchCRM, the login API endpoint leaks information about the existence of user accounts by returning different HTTP status codes depending on whether the provided username is valid.

The attack requires no authentication and can be performed remotely over the network with minimal complexity. While the direct impact is limited to confidentiality (leaking whether usernames exist), this information serves as a critical stepping stone for more severe attacks such as password spraying, credential stuffing, and targeted phishing campaigns against confirmed users.

Root Cause

The root cause of this vulnerability lies in the authentication handler's response logic within the Slim framework integration. The application returns a 404 (Not Found) HTTP status when a username does not exist in the database, but returns a 401 (Unauthorized) status when the username exists but the password is incorrect. This differential response creates an oracle that attackers can use to confirm valid usernames. Additionally, the absence of rate limiting and account lockout mechanisms allows automated tools to rapidly enumerate accounts without restriction.

Attack Vector

The attack is executed via network-accessible API requests to the public login endpoint. An attacker can script automated requests with various username guesses, observing the HTTP response codes to determine which usernames are valid accounts. The network attack vector combined with no authentication requirements and no user interaction makes this vulnerability easily exploitable at scale. Attackers typically use wordlists containing common names, email formats, or previously leaked credentials to maximize enumeration efficiency.

The security patch addresses this issue by hardening the API login responses and includes additional fixes for SQL injection vulnerabilities in the FinancialService component:

php
 use Exception;
 use Psr\Http\Message\ResponseInterface as Response;
 use Psr\Http\Message\ServerRequestInterface as Request;
+use Slim\Exception\HttpBadRequestException;
+use Slim\Exception\HttpForbiddenException;
 use Slim\Exception\HttpMethodNotAllowedException;
 use Slim\Exception\HttpNotFoundException;
+use Slim\Exception\HttpUnauthorizedException;
 use Slim\Interfaces\RouteInterface;
 use Slim\Psr7\Response as Psr7Response;
 use Slim\Routing\RouteContext;

Source: GitHub Commit

The patch also includes parameterized queries to prevent SQL injection:

php
         if (!$routeAndAccount) {
             throw new \Exception('error in locating family');
         }
-        $sSQL = 'SELECT fam_ID, fam_Name FROM family_fam WHERE fam_scanCheck="' . $routeAndAccount . '"';
-        $rsFam = FunctionsUtils::runQuery($sSQL);
-        $row = mysqli_fetch_array($rsFam);
+        $family = FamilyQuery::create()->findOneByScanCheck($routeAndAccount);
         $iCheckNo = $micrObj->findCheckNo($tScanString);

         return [
             'ScanString'      => $tScanString,
             'RouteAndAccount' => $routeAndAccount,
             'CheckNumber'     => $iCheckNo,
-            'fam_ID'          => $row['fam_ID'],
-            'fam_Name'        => $row['fam_Name'],
+            'fam_ID'          => $family?->getId(),
+            'fam_Name'        => $family?->getName(),
         ];
     }

Source: GitHub Commit

Detection Methods for CVE-2026-40485

Indicators of Compromise

  • High volume of authentication requests to /api/public/user/login from single IP addresses
  • Sequential or patterned username attempts in authentication logs
  • Unusual ratio of 404 to 401 responses on the login endpoint
  • Automated request patterns with consistent timing intervals between attempts

Detection Strategies

  • Monitor web server access logs for repeated POST requests to the login API endpoint with varying usernames
  • Implement alerting on unusual authentication failure patterns that suggest enumeration activity
  • Analyze HTTP response code distributions for the login endpoint to identify reconnaissance activity
  • Deploy web application firewall (WAF) rules to detect and block rapid sequential authentication attempts

Monitoring Recommendations

  • Enable detailed logging for all authentication endpoints including HTTP status codes and source IPs
  • Configure SIEM rules to correlate multiple failed authentication attempts across short time windows
  • Monitor for known username enumeration tools and their characteristic request patterns
  • Establish baseline metrics for normal authentication traffic to identify anomalous enumeration activity

How to Mitigate CVE-2026-40485

Immediate Actions Required

  • Upgrade ChurchCRM to version 7.2.0 or later immediately
  • Implement rate limiting on the /api/public/user/login endpoint using a reverse proxy or WAF
  • Review authentication logs for signs of prior enumeration attempts
  • Consider implementing CAPTCHA or similar challenge mechanisms for repeated failed login attempts

Patch Information

The vulnerability has been addressed in ChurchCRM version 7.2.0. The fix normalizes API login responses to return consistent status codes regardless of whether the username exists, preventing attackers from distinguishing between valid and invalid usernames. The patch is available via GitHub Pull Request #8607 and the specific commit 214694eb83778e1f5e52b3dfa2a99d0e965c1850. For complete technical details, refer to the GitHub Security Advisory GHSA-x2qh-xmhq-4jpx.

Workarounds

  • Deploy a reverse proxy with rate limiting configured for authentication endpoints
  • Implement IP-based blocking for sources exceeding authentication attempt thresholds
  • Restrict API access to trusted networks using firewall rules if public access is not required
  • Consider placing authentication endpoints behind a VPN or network access control system
bash
# Example nginx rate limiting configuration for ChurchCRM API
limit_req_zone $binary_remote_addr zone=login_limit:10m rate=5r/m;

location /api/public/user/login {
    limit_req zone=login_limit burst=3 nodelay;
    limit_req_status 429;
    proxy_pass http://churchcrm_backend;
}

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeInformation Disclosure

  • Vendor/TechChurchcrm

  • SeverityMEDIUM

  • CVSS Score5.3

  • EPSS Probability0.01%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • CWE-204
  • Technical References
  • GitHub Commit Update

  • GitHub Pull Request

  • GitHub Security Advisory GHSA-x2qh-xmhq-4jpx
  • Related CVEs
  • CVE-2025-11938: ChurchCRM Deserialization RCE Vulnerability

  • CVE-2026-40593: ChurchCRM User Editor XSS Vulnerability

  • CVE-2026-40581: ChurchCRM CSRF Vulnerability

  • CVE-2026-40482: ChurchCRM SQL Injection Vulnerability
Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English