Skip to main content

Virtuagym EUVDEUVD-2026-66418

| CVE-2026-12587 HIGH
Use of Hard-coded Credentials (CWE-798)
2026-08-26 INCIBE GHSA-45xr-rwjr-28jc
8.6
CVSS 4.0 · Vendor: INCIBE
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate with member-level account
  2. Delivery
    Query resamania_qr_info API for target badge_number
  3. Exploit
    Reverse engineer unobfuscated APK to extract HMAC logic
  4. Execution
    Forge valid physical access QR code for any member
  5. Persist
    Present QR at facility entry reader
  6. Impact
    Maintain persistent physical access despite victim credential changes

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Credential externalization
MITRE ATT&CK

2 techniques across 2 tactics: Persistence, Credential Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the attacker to hold a low-privileged authenticated session on the Virtuagym platform - any current or former member account is sufficient. From that session, the attacker must call the API endpoint /club/_id_club_/member/_id_member_/resamania_qr_info to retrieve the target member's badge_number, which serves as the static HMAC key. The attacker must also reverse engineer the Virtuagym Android APK to extract the QR code generation algorithm; this barrier is minimal because the application contains no code obfuscation. Exploitation is limited to environments where Resamania's Virtuagym integration is in use for physical access QR codes; deployments not using QR-based physical access are unaffected by the physical-access impact. No network positioning, no admin privileges, and no user interaction by the victim are required once API access is established.

Impact

The CVSS 4.0 score of 8.6 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N) accurately reflects the network-accessible, low-complexity nature of exploitation requiring only low-privileged authentication. Real-world risk is elevated beyond the raw score by two critical factors: first, the credential forge persists through password resets and logouts, undermining all standard account-recovery defenses; second, the absence of APK obfuscation means the cryptographic logic is trivially recoverable, lowering the technical barrier substantially. No EPSS data was provided, and this CVE does not appear in the CISA KEV catalog, so exploitation probability cannot be quantified from those signals. The impact is concrete and physical - unauthorized facility access - rather than purely digital. The primary limiting factor is the PR:L requirement: an attacker must first obtain authenticated API access, which constrains opportunistic exploitation but is easily satisfied by any current or former member with valid credentials.

Exploit ScenarioDerived

An attacker who is a current or former gym member authenticates to the Virtuagym API with their own low-privileged account and queries the resamania_qr_info endpoint to retrieve a target member's badge_number. They then reverse engineer the publicly downloadable APK - trivially, given the lack of obfuscation - to extract the HMAC construction logic and generate a valid QR code for the victim member. The attacker can then present this forged QR code at physical access readers to enter the facility indefinitely, even after the victim changes their password or the gym attempts to revoke their access, since the static HMAC key is tied to the badge_number rather than session state.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 26, 2026

Hard-coded HMAC credential exposure in Resamania's Virtuagym mobile application allows a low-privileged attacker to forge unlimited physical access QR codes, bypassing facility entry controls permanently. The static HMAC key - derived from the badge_number parameter - is retrievable via an authenticated API call, and the QR code generation logic can be extracted by reverse engineering the unobfuscated APK. Generated codes remain valid indefinitely regardless of subsequent password changes or session logouts, meaning revocation of legitimate access does not invalidate attacker-forged credentials. No public exploit has been identified at time of analysis, though the low technical barrier significantly elevates practical exploitability.

RemediationAI

No vendor-released patch with an exact fix version has been identified at time of analysis. The authoritative advisory is published by INCIBE at https://www.incibe.es/en/incibe-cert/notices/aviso/embedded-credentials-virtuagym. The fundamental fix requires replacing the static badge_number-derived HMAC key with a server-side secret unknown to the client application, so that QR code generation occurs server-side or uses a secret not derivable from API-exposed data. As a compensating control, operators should rotate badge_number values for all members immediately to invalidate existing forged codes, though this provides only temporary relief as long as the static-key mechanism remains. Implementing Android code obfuscation (e.g., ProGuard/R8) would raise the reverse engineering barrier but does not eliminate the root cause. Access to the /club/_id_club_/member/_id_member_/resamania_qr_info endpoint should be restricted to the minimum necessary privilege scope and rate-limited to detect enumeration attempts.

Affected VersionsENISA

Virtuagym 0 ≤21/08/2026

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 vulnerability falls under CWE-798 (Use of Hard-coded Credentials), where the application relies on a predictable, static value - the member's badge_number - as the private key for an HMAC-based QR code generation scheme rather than a server-managed secret unknown to clients. The affected product is identified by CPE cpe:2.3:a:resamania:virtuagym:*:*:*:*:*:*:*:* (all versions). The badge_number is exposed through the REST API endpoint /club/_id_club_/member/_id_member_/resamania_qr_info, accessible to low-privileged authenticated users. Compounding the issue, the Virtuagym Android APK lacks code obfuscation, allowing the HMAC algorithm and signature construction logic to be recovered through standard reverse engineering tools. The QR codes produced by this mechanism are used for physical access to club facilities, meaning the vulnerability bridges a digital authentication flaw into the physical security domain.

Know when Virtuagym 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

Vendor (INCIBE) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N
vuln.today AI 9.6 CRITICAL

Low-privilege API authentication required; scope changes to physical access systems; no confidentiality or integrity impact on availability dimension.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:H/SA:N

Primary rating from Vendor (INCIBE).

CVSS VectorVendor: INCIBE

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

DescriptionCVE.org

The vulnerability allows the unauthorised generation of physical access QR codes due to the use of hard-coded credentials within the application. The generation mechanism uses the 'badge_number' parameter as the HMAC private key, the value of which remains static and is accessible via the API using the endpoint '/club/_id_club_/member/_id_member_/resamania_qr_info'. An attacker with access to this value and to the application’s cryptographic logic, which can be extracted by reverse engineering the APK as there is no code obfuscation, could generate valid QR codes indefinitely, even after the user has changed their password or logged out.

Executive ViewAI

Why It Matters

Resamania's Virtuagym mobile application contains a cryptographic vulnerability that allows low-privileged attackers to generate unlimited forged QR codes for facility access, which remain valid indefinitely even after legitimate user credentials are revoked. This creates a permanent facility access control bypass that cannot be remediated through password resets or session logouts. Organizations relying on Virtuagym for physical security face an uncontrollable access risk until the vendor releases a patch.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Restrict API access to minimum necessary service accounts with elevated privileges; implement QR code expiration policies via Resamania configuration if available; add manual verification procedures requiring in-person identity confirmation for new or suspicious QR code access; enable comprehensive logging of QR code generation and API authentication calls with real-time alerting on anomalous patterns; implement network-level access controls restricting API endpoints to known facility networks; consider temporary suspension of Virtuagym-based access control in favor of alternative methods until a patch becomes available.

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Low
niche gym management platform, limited enterprise footprint
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy