Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRegister/log in as any member
-
DeliveryCall /clientApi/book/myBookDetail with foreign bookId
-
ExploitServer skips ownership check
-
ExecutionIterate auto-increment bookId values
-
ImpactExfiltrate members' PII and verification codes
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires a valid authenticated Fuint member account to reach the /clientApi/book/myBookDetail endpoint (PR:L), after which no further special configuration is needed - the endpoint accepts an attacker-supplied bookId and performs no ownership/authorization check. Exploitation is reliable because bookId is an auto-increment integer, enabling sequential enumeration of all booking records. The only meaningful limiting factor is that the attacker must first obtain member-level authentication; there is no requirement for user interaction, admin privileges, or a non-default configuration, and the affected code is the standard booking-detail path present through commit 57ec018. |
| Impact | This is a genuine but moderate-severity authorization flaw, not a top-tier emergency. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N, score 5.3) is internally consistent with the description: a network-reachable, low-complexity IDOR that requires an authenticated member account (PR:L) and leaks limited confidentiality only (VC:L), with no integrity or availability impact. CWE-639 (Authorization Bypass Through User-Controlled Key) matches the described behavior precisely. No EPSS score, no CISA KEV listing, and no SSVC decision data were provided in the input, so exploitation-probability and automatability signals cannot be quantified - their absence should not be read as low risk, only as unmeasured. The one notable conflict is the 'Authentication Bypass' tag, which misdescribes the issue: this is a post-authentication authorization (IDOR) weakness, consistent with PR:L, not an authentication bypass (which would imply PR:N). A detailed public write-up exists (hackmd + VulnCheck advisory) with the exact endpoint and parameter, so a working exploit is effectively available even though no CISA KEV active-exploitation confirmation exists. Net: a real, easily-automatable privacy/PII-disclosure bug worth patching, but its real-world urgency is tempered by the authenticated-access requirement, the low (confidentiality-only) impact, and the product's limited deployment footprint. |
| Exploit ScenarioDerived | An attacker registers or obtains any ordinary member account on a Fuint-based storefront, authenticates to /clientApi, and sends repeated requests to /clientApi/book/myBookDetail while incrementing the auto-increment bookId. Because the endpoint never checks that the booking belongs to the caller, the attacker harvests other members' contact names, mobile numbers, in-store verification codes, service dates, stores, and remarks. The hackmd write-up and VulnCheck advisory document the exact request, making trivial automated enumeration of the entire booking table feasible. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 16, 2026
An insecure direct object reference in Fuint through commit 57ec018 lets authenticated members retrieve other members' booking records by supplying arbitrary bookId values to /clientApi/book/myBookDetail. Because bookId is an auto-increment integer, an attacker with a valid member account can enumerate records and obtain contact names, mobile numbers, in-store verification codes, service dates, stores, and remarks. No public exploit identified at time of analysis and no confirmed active exploitation; assessed severity is moderate with low confidentiality impact and no integrity or availability impact.
RemediationAI
No vendor-released patch identified at time of analysis. The primary fix is to add a server-side ownership check before returning booking details: load the booking for the supplied bookId and confirm its member ID matches the authenticated member ID, or better, scope the database query so it returns only records where book_id = supplied bookId AND member_id = authenticated member ID. This must be enforced in the service or controller layer on /clientApi/book/myBookDetail and any similar client API endpoints. As a compensating control, restrict or disable the endpoint only if business requirements allow, but this breaks legitimate self-service booking lookups, so it is a last resort. Additionally, replace sequential auto-increment bookId values with unguessable UUIDs over time to reduce enumeration efficiency, and monitor or rate-limit repeated sequential bookId requests; the trade-off is possible false positives for legitimate user activity and no protection against direct ID guessing if IDs remain sequential. Review the referenced code at https://github.com/fushengqian/fuint/blob/57ec01895e22dd93f16f493db30a77a7c1b148f2/fuint-application/src/main/java/com/fuint/module/clientApi/controller/ClientBookController.java#L252-L265 and the service implementation, and consult the VulnCheck advisory at https://www.vulncheck.com/advisories/fuint-through-commit-57ec018-idor-via-bookid-in-mybookdetail for updates.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-639 (Authorization Bypass Through User-Controlled Key) in the Fuint Java booking application, mapped by CPE cpe:2.3:a:fushengqian:fuint:*:*:*:*:*:*:*:*. The endpoint /clientApi/book/myBookDetail accepts a client-supplied bookId and passes it to BookItemServiceImpl without verifying that the booking belongs to the authenticated member; the vulnerable logic is visible in ClientBookController.java lines 252-265 and BookItemServiceImpl.java lines 237-258 at commit 57ec018. The assessed vector is CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, meaning remote exploitation requires a valid member account (PR:L), no user interaction, and results only in low confidentiality loss; the auto-increment key makes sequential enumeration reliable. No integrity or availability effect is assessed.
Know when Fuint 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Network endpoint with low complexity but requires a member account (PR:L); impact is confidentiality-only disclosure of others' PII (C:L), with no integrity or availability effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Fuint through commit 57ec018 contains an insecure direct object reference vulnerability that allows authenticated members to read other members' booking records by supplying arbitrary bookId values to /clientApi/book/myBookDetail. Attackers can iterate the auto-increment bookId to retrieve contact names, mobile numbers, in-store verification codes, service dates, stores and remarks.
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.
EUVD-2026-102997
GHSA-56j7-v63x-xw99
NVD
CVE.org
Exploit-DB