Skip to main content

VitaFit Cloud API EUVDEUVD-2026-117157

| CVE-2026-54380 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-11-04 VulnCheck GHSA-mcvv-pcqf-fqr2
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Obtain authenticated VitaFit account
  2. Delivery
    Upload SVG with embedded JavaScript to shared bucket
  3. Exploit
    Deliver direct file URL to victim
  4. Execution
    Victim opens SVG via browser navigation
  5. Impact
    Script executes in victim browser session

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

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

Exploitation Conditions

Exploitation requires: (1) an authenticated VitaFit cloud API account (PR:L) with the ability to upload files to the shared storage bucket; (2) the application serving image/svg+xml without sanitizing embedded scripts and without forcing a download (Content-Disposition), which is the specific defect described; and (3) a victim who directly navigates in a browser to the uploaded SVG's URL (UI:P). Limiting factors: the attacker must already have valid credentials, the payload only runs on direct browser navigation rather than inline rendering, and impact is confined to the victim's browser session (no confidentiality/integrity/availability impact to the server itself per VC:N/VI:N/VA:N). The shared storage bucket is what makes this reach other users rather than only the uploader.

Impact

This is a medium-severity stored XSS (CWE-79) with modest real-world priority, not a drop-everything issue. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/SC:L/SI:L, score 5.1) is internally consistent with the description: network-reachable cloud API, low attacker privileges (PR:L = an authenticated account is required), and passive victim interaction (UI:P, the victim must open the malicious SVG). Notably the vulnerable-system impacts are all None (VC:N/VI:N/VA:N) while the impact lands on the subsequent system (SC:L/SI:L) - i.e. the victim's browser session, which is the correct modeling for reflected/stored script execution in a shared-bucket context. The vuln.today decision label is 'this_month' (routine remediation), not act_now/emergency. The vulnerability is NOT in CISA KEV and no EPSS score was supplied, so there is no signal of active or probable exploitation. A PoC reference exists (a security-research GitHub repo) but it is a reference only and is not verified as working exploit code. Net: the signals are mutually consistent and point to a genuine but bounded web-app flaw whose exploitation requires an authenticated foothold plus victim action - real to fix, but not an emergency.

Exploit ScenarioDerived

An attacker who holds a valid (low-privilege) VitaFit account uploads an SVG file containing embedded JavaScript to the shared storage bucket the cloud API serves. Because the application does not sanitize image/svg+xml content or force it to download, the script executes in the browser of any victim who navigates directly to the file's URL. A public PoC reference exists but is not verified as working exploit code, and the flaw is network-reachable with low attack complexity but depends on the victim opening the file (UI:P).

Monitor Track and reassess. Why: Vendor states no customer action required.
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Nov 04, 2026

Stored cross-site scripting in the VitaFit cloud API (builds before 2026-10-30) lets an authenticated account holder upload an SVG image containing embedded JavaScript to the shared storage bucket, where it persists and is served to other users as image/svg+xml. The defect is the application's failure to strip scripts from SVG content or force a download via Content-Disposition, so the payload executes only when a victim opens the uploaded file's URL through direct browser navigation rather than inline rendering. Both the CVSS 4.0 vector and the independently assessed CVSS 3.1 vector require low-privileged credentials (PR:L) and victim interaction (UI:P), and server-side confidentiality, integrity and availability impact is none (VC:N/VI:N/VA:N) - the effect is scoped to the victim's browser session (S:C/C:L/I:L). A public PoC reference exists at the je-lv/vitafit-security-research repository; it is not verified as working exploit code, and there is no KEV listing indicating active exploitation. Priority is medium and the vulnerability is triaged as this_month, so remediation is warranted in the normal patch cadence rather than as an emergency.

RemediationAI

Upgrade the VitaFit cloud API to the release dated 2026-10-30 or later; that date is the fix boundary stated in the advisory, and no separate semantic version number is given, so confirm the deployed build is at or beyond it rather than assuming a version string. The corrective behavior expected in that release is the pair of controls the vulnerability describes as missing: sanitizing or rejecting SVG uploads that contain scripts, and serving stored image/svg+xml objects with Content-Disposition: attachment (plus a restricting Content-Security-Policy) so browsers never render untrusted uploads as active documents. Because the vulnerable path depends on a valid account uploading to the shared bucket, restricting upload rights to trusted users and reviewing the bucket for pre-existing SVG objects are useful interim measures, but they reduce exposure rather than close the defect and leave the underlying unsanitized serving behavior in place; the vendor's updated build is the only complete fix. Track remediation against the VulnCheck advisory at https://www.vulncheck.com/advisories/vitafit-cloud-api-stored-xss-via-svg-file-upload and the research write-up at https://github.com/je-lv/vitafit-security-research, noting that the PoC there is a reference and has not been verified as working exploit code.

Affected VersionsENISA

VitaFit 0 <2026-10-30

Affected Packages

euvd vitafit fix: 2026-10-30

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

This is a CWE-79 cross-site scripting flaw of the stored/persistent subtype, realized through SVG image handling. SVG is an XML format that can carry <script> elements and event handlers, so any upload pipeline that accepts image/svg+xml must treat the file as active content: sanitize or strip scripting constructs, and serve untrusted uploads with Content-Disposition: attachment plus a restrictive Content-Security-Policy so the browser never executes the document in the storage origin. The VitaFit cloud API instead accepted an authenticated user's SVG upload into a shared storage bucket and returned it as image/svg+xml without either restriction, which is precisely the condition the vendor advisory describes. The shared bucket is what elevates this from self-XSS to a stored XSS affecting other users - any user who navigates directly to the file's URL runs the attacker's script in the context of that storage origin. The CPE identifies the affected vendor as shenzhen_shine_industrial_co.,_ltd. with the vitafit product, matching the com.vt.vitafit Android client on Google Play. Per the assessed vector, the attack path is network-reachable with low complexity and no special preconditions beyond authentication and a victim who follows the direct link; the trigger does not require inline embedding because the payload is designed to fire on top-level navigation to the SVG URL.

Know when Vitafit 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 (VulnCheck) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated upload (PR:L) over the network (AV:N), victim must open the file (UI:R), and script runs in the victim's browser outside the vulnerable component (S:C) with low C/I impact and no availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Nov 04, 2026 - 23:02 EUVD
CVE Published
Nov 04, 2026 - 22:10 cve.org
MEDIUM 5.1

DescriptionCVE.org

VitaFit cloud API before 2026-10-30 contained a stored cross-site scripting vulnerability that allows authenticated attackers to upload an SVG image containing malicious JavaScript to the shared storage bucket. Attackers can exploit the application's failure to restrict scripts or force downloads for image/svg+xml content, causing the JavaScript to execute when a victim opens the file via direct browser navigation.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Low
niche consumer fitness/smart-scale app from a single Shenzhen vendor
Service Type
Hosted
Vendor-managed, no client patch needed
Exploit
POC
Public exploit code exists
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

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 MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
Vendor states no customer action required
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· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2026-54384 CRITICAL POC
9.3 Nov 04

VitaFit's cloud API before 2026-10-30 would issue a full authenticated session for any account whose linked Google or Fa

CVE-2026-54378 CRITICAL POC
9.3 Nov 04

Broken access control in the VitaFit cloud API before the 2026-10-30 fix lets any authenticated account holder call POST

CVE-2026-54381 HIGH POC
8.7 Nov 04

VitaFit's cloud API left its backing object storage bucket readable by anyone, so an attacker who locates the bucket can

CVE-2026-54374 HIGH POC
8.7 Nov 04

Hardcoded third-party integration credentials in the VitaFit Android app before 2.8.1.0 expose embedded WeChat, Tencent

CVE-2026-54372 HIGH POC
8.7 Nov 04

Insecure TLS certificate validation in the VitaFit Android app (com.vt.vitafit) before 2.8.1.0 lets an unauthenticated a

CVE-2026-54375 HIGH POC
8.6 Nov 04

VitaFit Android before 2.8.1.0 exposes unencrypted m_session_id tokens in application backups, allowing anyone who obtai

CVE-2026-54376 HIGH POC
8.2 Nov 04

Token interception in VitaFit Android before 2.8.1.0 allows a malicious app already installed on the device to register

CVE-2026-54383 HIGH POC
7.1 Nov 04

The VitaFit cloud API, in builds prior to the 2026-10-30 release, returns other users' personally identifiable and healt

CVE-2026-54377 MEDIUM POC
6.9 Nov 04

Authenticated users of the VitaFit fitness and smart-scale cloud API can read other accounts' data - email address, prof

CVE-2026-54382 MEDIUM POC
6.3 Nov 04

An improper access control flaw in the VitaFit cloud API let authenticated holders of Cognito-issued AWS credentials wri

CVE-2026-54373 MEDIUM POC
5.1 Nov 04

Cleartext HTTP handling in the VitaFit Android app (com.vt.vitafit) before 2.8.1.0 lets an attacker who holds a man-in-t

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