Skip to main content

RuoYi-Vue-Plus EUVDEUVD-2026-98939

| CVE-2026-110106 LOW
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-13 disclosure@vulncheck.com GHSA-qv77-x67j-jf7m
2.3
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privilege user
  2. Delivery
    Obtain or enumerate victim's socialId
  3. Exploit
    Send DELETE /auth/unlock/{socialId}
  4. Execution
    Server deletes binding and OAuth tokens
  5. Impact
    Victim blocked from social login

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

The attacker must hold a valid authenticated account (PR:L) on the RuoYi-Vue-Plus instance and must know or enumerate the target victim's social binding identifier (socialId), which the vulnerable DELETE /auth/unlock/{socialId} endpoint accepts without verifying ownership. The deployment must have the OAuth social-login binding feature in use (GitHub, WeChat, or Gitee) for there to be a binding worth deleting. Limiting factors: exploitation yields only denial of the victim's social-login path (no confidentiality loss, no account takeover, no password credential impact), requires a logged-in session, and depends on obtaining the correct socialId - if binding IDs are non-sequential or hard to enumerate, targeting a specific victim is harder.

Impact

This is a genuinely low-priority issue, and the available signals agree rather than conflict. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:L) yields a score of only 2.3: no confidentiality impact, and only LOW integrity and availability impact limited to a single victim's social-login binding. PR:L confirms an authenticated account is required, and AT:P reflects that the attacker must first obtain the victim's specific socialId, which is a meaningful precondition. No EPSS score, CISA KEV listing, or explicitly-flagged POC is present in the input, so there is no public exploit code confirmed - though a detailed technical write-up (hackmd) and a VulnCheck advisory document the exact vulnerable request, meaning exploitation is trivial for anyone who reads them. There is no SSVC decision data provided. Bottom line: a real but minor authorization (IDOR) flaw that denies a victim their social-login convenience; it does not grant account takeover, data disclosure, or privilege escalation, so it does not warrant emergency prioritization. One note: the single input Tag 'Authentication Bypass' is inconsistent with the CWE-639 classification and PR:L requirement - this is an authorization/IDOR defect, not an authentication bypass.

Exploit ScenarioDerived

An attacker with any valid low-privilege RuoYi-Vue-Plus account enumerates or obtains another user's social binding identifier and issues a DELETE /auth/unlock/{socialId} request using the victim's socialId. The server deletes the victim's GitHub, WeChat, or Gitee binding and stored OAuth tokens, preventing the victim from logging in via that social provider until they re-bind. No public exploit code is confirmed in the input, but the VulnCheck advisory and hackmd write-up describe the exact request.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 13, 2026

RuoYi-Vue-Plus through 6.0.0 exposes an insecure direct object reference in its social-login unbind endpoint, letting an authenticated user delete another user's OAuth binding (GitHub, WeChat, or Gitee) - along with the stored OAuth tokens - simply by supplying the victim's socialId to DELETE /auth/unlock/{socialId}. The attacker must hold a valid account on the instance (CVSS vector PR:L) and must know or guess the target's binding identifier, and the impact is confined to denial of the victim's social-login path: no confidentiality loss, no credential or password impact, and no account takeover, which is why our independent assessment scores this CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L (2.3). There is no CISA KEV entry or EPSS signal in the provided data and no confirmed public exploit code, though a public technical writeup of the issue is referenced; a low-priority, hardening-class fix rather than an emergency.

RemediationAI

No vendor-released patch version is identified in the provided data - the referenced GitHub links are source-code locations and the VulnCheck advisory, not a fixed release - so treat this as an unfixed hardening item until an upstream fix is published; check https://github.com/dromara/RuoYi-Vue-Plus and the advisory for updates. In the meantime, the highest-value compensating control is to enforce an ownership check in SysSocialServiceImpl before deletion: derive the caller's identity from the authenticated security context and refuse the request unless the social record's userId matches, which fully closes the IDOR with no functional side effect other than breaking the (already broken) ability to delete someone else's binding. If code changes are not immediately possible, restrict or block the DELETE /auth/unlock/{socialId} route at the reverse proxy or Spring Security filter chain for all non-administrative roles - this stops abuse but also disables legitimate self-service unbinding, so users must contact support to remove a binding. Temporarily disabling the social-login/unbind feature entirely removes the attack surface at the cost of losing OAuth login convenience. Because the attack requires an authenticated session, tightening account provisioning, rotating any suspected compromised sessions, and alerting on bursts of DELETE /auth/unlock requests or on social-unbind events followed by unexpected OAuth token revocation will help detect abuse while the code fix is pending.

Affected VersionsENISA

RuoYi-Vue-Plus 0 ≤6.0.0

Affected Packages

euvd ruoyi_vue_plus 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

RuoYi-Vue-Plus is a Java/Spring Boot后台 management framework (dromara) that bundles social OAuth login via providers such as GitHub, WeChat, and Gitee; user bindings are persisted as social records with a unique socialId and associated OAuth tokens. The flaw is CWE-639, Authorization Bypass Through User-Controlled Key: the controller code at AuthController.java (lines 156-162 in commit 7180b5297) passes the path-variable socialId straight into the unbind flow, and SysSocialServiceImpl.java (lines 116-118) deletes the matching binding record without comparing its owner to the authenticated principal. Because the socialId is a client-controlled key rather than a server-derived reference to the caller's own account, any logged-in user who presents another user's identifier can force deletion of that binding and its stored tokens. No cross-tenant or privilege escalation chain is present - the vulnerable operation only removes a row the caller does not own - so the consequence is integrity/availability of a single optional authentication method rather than exposure of data or takeover of the account.

Know when the next one hits your stack

  • 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 2.3 LOW
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated low-privilege account needed (PR:L) over the network (AV:N); binding IDs are likely enumerable so AC:L; deletes another user's data (I:L) and blocks their social login (A:L) with no confidentiality impact.

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

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

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

DescriptionCVE.org

RuoYi-Vue-Plus through 6.0.0 contains an insecure direct object reference vulnerability that allows authenticated users to delete other users' social login bindings by supplying their socialId. Attackers can send DELETE /auth/unlock/{socialId} requests with a victim's binding id to remove their GitHub, WeChat, or Gitee binding and stored OAuth tokens, blocking social login.

Threat Intelligence Overview

EPSS Score
0.3%
Top 83% exploitable
Prevalence
Low
Popular open-source rapid-dev framework, mainly regional/enterprise, niche global 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 LOW
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Defer
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Low

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
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