Skip to main content

Refly CVE-2026-101052

| EUVDEUVD-2026-88217 MEDIUM
Use of Hard-coded Credentials (CWE-798)
2026-09-28 VulDB GHSA-rjf7-j2f2-fmhv
5.5
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Obtain hard-coded JWT secret from public source
  2. Delivery
    Forge admin JWT signed with known key
  3. Exploit
    Submit forged token to refly API
  4. Execution
    Authenticate as arbitrary/admin user
  5. Impact
    Access or modify application data

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 that the deployment run with the hard-coded/default JWT signing secret present in apps/api/src/modules/config/app.config.ts (the 'test' input value) rather than an operator-supplied secret. Where that default is used, no special conditions apply - remote unauthenticated token forgery works against default configurations of refly <=1.1.0 (AV:N/AC:L/PR:N/UI:N). The primary limiting factor is configuration: an operator who overrides the JWT secret with a strong environment-provided value is not exploitable. No user interaction is required.

Impact

The vendor's CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N, VC:L/VI:L/VA:L, E:P) rates this 6.9 (medium), treating the impact as merely 'low' across confidentiality, integrity and availability. That understates the class of flaw: CWE-798 hard-coded credentials in a JWT Token Handler means the token-signing secret (seeded from an 'input test' default) is publicly known, so any remote unauthenticated attacker can forge valid JWTs and impersonate arbitrary users - including administrators. That is a full authentication bypass (consistent with the 'Authentication Bypass' tag), which realistically warrants HIGH confidentiality and integrity impact, not 'low'. On the raw signals: attack vector is network, complexity low, no privileges and no user interaction required, and public POC exploit code exists (E:P, confirmed by the GitHub write-up). There is NO CISA KEV listing and NO EPSS score in the provided data, so there is no evidence of active mass exploitation - the appropriate framing is 'publicly available exploit code exists,' distinct from in-the-wild abuse. Net: the technical severity is higher than the vendor's 6.9 suggests, but real-world priority is tempered by the product's limited deployment footprint and the fact that a security-conscious operator who overrode the default secret is not affected. Verify against the vendor/source whether the hard-coded value is a hard override or merely a fallback default, as that materially changes impact.

Exploit ScenarioDerived

A remote attacker reads the publicly disclosed hard-coded JWT secret from the refly source (apps/api/src/modules/config/app.config.ts) and uses it to sign a forged JWT asserting an administrator identity. They present the forged token to the API and are granted authenticated access without any credentials. Public exploit code demonstrating this is already available on GitHub.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 28, 2026

Refly through 1.1.0 uses a hard-coded JWT signing secret in apps/api/src/modules/config/app.config.ts, allowing unauthenticated remote attackers to forge authentication tokens and impersonate any user when deployments retain the default 'test' secret. Publicly available exploit code exists, and the vendor did not respond to the disclosure. The configuration is the limiting factor: operators who override the JWT secret with a strong environment-provided value are not exploitable.

RemediationAI

No vendor-released patch identified at time of analysis; the vendor was contacted early but did not respond. Until an official fix is issued, operators of refly <=1.1.0 must override the hard-coded JWT signing secret: set the JWT secret via the documented environment variable (or edit apps/api/src/modules/config/app.config.ts) to a strong random value such as one generated with openssl rand -base64 48, ensure the application does not fall back to the 'test' default, and restart the API service. Rotate all existing JWTs and invalidate active sessions because tokens signed with the old default may already have been forged; this will log out all users and break integrations using old tokens. As compensating controls, restrict network access to the API with a firewall, VPN, or reverse-proxy authentication, and monitor logs for anomalous token usage. References: https://vuldb.com/vuln/410910 and the exploit write-up https://github.com/DReazer/CV3/blob/main/refly/Hard-coded.md.

Affected VersionsENISA

refly 1.0
refly 1.1.0

Affected Packages

euvd refly no fix

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

The vulnerability is a classic CWE-798 use of hard-coded credentials in the JWT token handler of refly-ai's refly platform. The JWT signing secret is embedded in the source file apps/api/src/modules/config/app.config.ts with the value 'test', and if the application falls back to this default (rather than requiring an operator-supplied secret via environment variable), any remote attacker who knows the secret can craft valid JSON Web Tokens signed with HMAC. Because JWT authentication typically encodes user identity and roles, a forged token can impersonate arbitrary users, including administrators, yielding high confidentiality and integrity impact. The CPE cpe:2.3:a:refly-ai:refly:*:*:*:*:*:*:*:* indicates all versions are potentially affected, with 1.1.0 being the latest at disclosure. The vendor's CVSS 4.0 vector (6.9, VC:L/VI:L/VA:L) treats impact as low, but independent assessment rates confidentiality and integrity as high under default configuration; availability is unaffected. No user interaction is required, and exploitation is unauthenticated (PR:N).

Know when Refly 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 (VulDB) PRIMARY 5.5 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 9.1 CRITICAL

A known hard-coded JWT signing secret lets an unauthenticated remote attacker forge tokens and impersonate any user (full auth bypass), so PR:N/AC:L with C:H/I:H; no direct availability impact.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

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

Lifecycle Timeline

2
CVSS changed
Sep 28, 2026 - 12:22 NVD
6.9 (MEDIUM) 5.5 (MEDIUM)
CVE Published
Sep 28, 2026 - 11:15 cve.org
MEDIUM 6.9

DescriptionCVE.org

A security vulnerability has been detected in refly-ai refly up to 1.1.0. This issue affects some unknown processing of the file apps/api/src/modules/config/app.config.ts of the component JWT Token Handler. The manipulation with the input test leads to hard-coded credentials. It is possible to initiate the attack remotely. The exploit has been disclosed publicly and may be used. The vendor was contacted early about this disclosure but did not respond in any way.

Threat Intelligence Overview

EPSS Score
0.5%
Top 63% exploitable
Prevalence
Low
niche self-hosted open-source AI creation platform, limited production footprint
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.5%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

48
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: +20
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