Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with administrator account
-
ExploitInject SQL via search_name/search_email parameter
-
ExecutionExfiltrate user data and password hashes
-
ImpactWrite file to disk if DB privileges allow
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated administrator session (PR:H) on a GYM One instance prior to version 1.4.1; the injection is reached specifically through the search_name or search_email GET parameters on admin/users/index.php, which are concatenated into the user-listing and pagination COUNT queries without prepared statements. Confidentiality impact (reading arbitrary tables including password hashes) applies unconditionally once that admin access exists. The additional filesystem-write capability is a further-limited condition that only applies when the underlying database account has sufficient privileges (e.g. the MySQL FILE privilege). The primary limiting factor is the admin-level authentication requirement, which narrows the realistic attacker population to insiders or those who have already compromised an admin account. |
| Impact | All provided signals point to a moderate, access-gated risk rather than an urgent, broadly-exploitable priority. The CVSS 3.1 vector (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N, base 6.5) is network-reachable and low-complexity but explicitly requires high privileges (PR:H), which the description confirms as an authenticated administrator - so an attacker must already hold the highest application role before the flaw is reachable. No EPSS probability, no CISA KEV entry, and no public POC were provided in the input, so exploitation status is 'no public exploit identified at time of analysis'; there is also no SSVC decision block to evaluate. The signals are internally consistent (CVSS PR:H aligns with the 'authenticated administrator' description), so there is no network-vs-local or authentication conflict to flag. In practice this is a classic post-authentication SQL injection whose impact is bounded by trust already granted to an admin account; its value to an attacker is privilege/scope leverage (dumping password hashes for credential reuse, and conditional filesystem writes) rather than initial access. Net assessment: genuine but not high-urgency - worth patching promptly in multi-admin or hardened deployments where admin accounts are not fully trusted, but not a mass-exploitation candidate. |
| Exploit ScenarioDerived | An attacker holding (or abusing) an administrator session browses to admin/users/index.php and supplies a crafted search_name or search_email GET parameter containing SQL syntax. Because the parameter is concatenated into both the user-list query and the pagination COUNT query without prepared statements, the attacker extracts arbitrary table data such as user records and password hashes, and where the database account holds FILE/write privileges may write a file to disk. No public exploit code was identified in the provided data, though the injection is straightforward for anyone with admin access. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
SQL injection in GYM One's administrative user-search endpoint (admin/users/index.php) allows an authenticated administrator to read arbitrary database tables - including user records and password hashes - and, where the underlying database account holds elevated privileges such as MySQL's FILE privilege, to write files onto the server filesystem. The flaw affects all GYM One releases prior to 1.4.1 and is reachable remotely through the search_name and search_email GET parameters, though it requires a valid administrator session (PR:H), which confines realistic exploitation to insiders or attackers who have already compromised an admin account. There is no public exploit identified at time of analysis, no indication of confirmed active exploitation (CISA KEV), and the vendor has released a fixed version, 1.4.1, so risk is best characterized as moderate and access-gated rather than urgent and broadly exploitable.
RemediationAI
Vendor-released patch: upgrade to GYM One 1.4.1, available from the project's release tag at https://github.com/mayerbalintdev/GYM-One/releases/tag/V1.4.1; the fixing change is visible in commit d3a0cf134f0ab3ac12aee7dca283b93c4290dcc4 and the issue is tracked in advisory GHSA-9j4g-cq35-8997. Because exploitation requires an administrator session, the highest-value interim controls are tightening who can reach admin/users/index.php - restrict the admin panel to a trusted management network or VPN, remove or disable dormant administrator accounts, and enforce strong unique credentials plus MFA for admin users, accepting that this reduces convenience for legitimate administrators. Given that arbitrary-table reads can expose password hashes, rotate all application user passwords and the database account credentials after patching if there is any chance the search fields were touched by an untrusted admin-level session. To blunt the filesystem-write escalation before upgrading, run GYM One's database connection under a least-privileged account that lacks the MySQL FILE privilege (and similar file-access grants); the trade-off is that any legitimate export or file-based feature relying on that privilege will stop working. A WAF or reverse-proxy rule that blocks SQL metacharacters (quotes, comment sequences, UNION keywords) in the search_name and search_email parameters offers a stopgap, but expect false positives on legitimate searches containing apostrophes or punctuation, and treat it as supplementary to patching rather than a substitute since the underlying string concatenation remains.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
GYM One is an open-source PHP web application for gym management, identified in NVD CPE data as mayerbalintdev:gym-one. The vulnerability is a classic CWE-89 SQL injection: the admin user-listing page at admin/users/index.php concatenates the search_name and search_email GET parameters directly into SQL text, and the same unsanitized input is placed into both the main user-list query and the COUNT query used to drive pagination. Because no prepared statements or parameter binding are used, an attacker able to reach the page with an administrator session can break out of the intended string context and alter the query structure. Notably, the pagination COUNT query provides a second, easily overlooked injection point - sanitizing only the display query would not have closed the flaw. Successful injection permits UNION-style or boolean/stacked reads against other tables in the same schema, exposing user credentials and password hashes. Where the database connection runs with sufficient privileges (for example MySQL's FILE privilege), the same injection primitive can be leveraged to read or write files on the database host, escalating from data disclosure to potential server-side file manipulation. The upstream fix, tagged V1.4.1 and referenced by commit d3a0cf134f0ab3ac12aee7dca283b93c4290dcc4, addresses the issue in the 1.4.1 release line; the GitHub security advisory GHSA-9j4g-cq35-8997 documents the report.
Know when Gym One gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N
Network-reachable web form, low complexity, but reachable only by an authenticated administrator so PR:H; full data read gives C:H and conditional filesystem writes support I:H, with no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
GYM One is open-source gym management software for fitness centers, personal trainers, and sports clubs. Prior to 1.4.1, GYM One's admin/users/index.php concatenates the search_name and search_email GET parameters into both the user-list query and the COUNT query used for pagination without prepared statements. An authenticated administrator can inject SQL through either search field to read data from arbitrary tables, including user information and password hashes. Depending on database permissions, the same injection may also permit filesystem writes. This issue is fixed in version 1.4.1.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
EUVD-2026-102307
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB