Skip to main content

Niefy wx-api EUVDEUVD-2026-102990

| CVE-2026-111699 MEDIUM
Missing Authentication for Critical Function (CWE-306)
2026-10-16 VulnCheck GHSA-jqmh-3xm7-92j3
6.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Obtain a valid victim openid
  2. Delivery
    Set raw openid as cookie
  3. Exploit
    Bypass Shiro auth on fan controllers
  4. Execution
    Read PII via /wxUser/getUserInfo
  5. Impact
    Modify fan tags via /wxUserTags

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK

1 technique across 1 tactic: Initial 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 attacker already knows a valid target openid (a WeChat follower identifier) and that a wx-api instance (≤0.8.2) is network-reachable; the attacker then supplies that value as a raw openid cookie to the fan-facing endpoints /wxUser/getUserInfo and /wxUserTags, which the Shiro configuration (ShiroConfig lines 43-49) excludes from authentication. The key LIMITING factor is the openid prerequisite - reflected as AC:H/AT:P - since openids are opaque and non-sequential, so blind mass exploitation is impractical without a prior source of valid openids; impact is further bounded to per-fan PII read and tag add/remove, with no code execution or availability effect.

Impact

This is a genuine but moderate-priority issue, not a top-tier emergency. The provided CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N, base 6.3) is internally consistent with the description: the flaw is network-reachable and requires no privileges (PR:N), but carries a specific attack requirement (AT:P) and high complexity (AC:H) because the attacker must already know a valid victim openid - an opaque WeChat identifier that is not trivially enumerable. Impact is correctly scoped as Low/Low confidentiality and integrity (PII disclosure plus fan-tag manipulation), with no availability impact. No EPSS score, CISA KEV listing, or published exploit-code POC was provided, so exploitation is not confirmed in the wild. The VulnCheck advisory and the linked HackMD write-up/source references corroborate the root cause (Shiro config excludes fan-facing controllers from authentication), which raises confidence in the technical validity. Overall: a real authentication-bypass/IDOR weakness, but the openid-knowledge prerequisite (AC:H/AT:P) and the niche, self-hosted nature of the product keep realistic risk at the medium level the score suggests rather than a widespread-exploitation threat.

Exploit ScenarioDerived

An attacker who has obtained a target WeChat follower's openid (e.g., leaked from another system or a cross-tenant IDOR) sets it as a raw openid cookie and calls the fan-facing endpoints on an exposed wx-api instance. Because the Shiro configuration does not authenticate these controllers, the server trusts the cookie and returns the victim's nickname, phone, and unionid, and lets the attacker add or remove that fan's tags. No public exploit code was identified at time of analysis, though a technical write-up describing the flaw exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.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 16, 2026

Niefy wx-api through 0.8.2 allows unauthenticated remote attackers to impersonate WeChat followers by presenting a raw openid cookie to fan-facing controllers that Apache Shiro excludes from its authentication filter chain - specifically /wxUser/getUserInfo and /wxUserTags. Anyone who already knows a victim's openid can read that fan's nickname, phone number, unionid and tag assignments, and add or remove tags on the account, giving cross-tenant fan PII exposure and unauthorized state changes. Impact is bounded to per-fan confidentiality and integrity loss with no code execution or availability effect, and exploitation is non-trivial because openids are opaque, non-sequential identifiers, so blind mass exploitation is impractical without a prior source of valid openids; this is a moderate-priority issue with no public exploit identified at time of analysis, although a public technical writeup describing the attack path and an associated cross-tenant IDOR is referenced.

RemediationAI

No vendor-released patch identified at time of analysis, so remediation must start with source-level hardening of the affected deployment. The primary fix is to remove /wxUser/getUserInfo and /wxUserTags from the anonymous Shiro filter chain in ShiroConfig.java (lines 43-49) and require an authenticated WeChat/OAuth-issued session for those controllers; the trade-off is that any legitimate front-end flow that currently relies on cookie-only openid access will break until it is migrated to the official OAuth callback, so coordinate that client change before deploying. As a complementary control, stop treating the raw openid cookie as a bearer credential: validate it against the server-side session or a signed token bound to the authenticated wx user, and enforce an ownership check on every query so an openid belonging to one official account or tenant cannot be used to read or modify another's fan records (this also closes the related cross-tenant IDOR). If immediate code changes are not possible, restrict network exposure of the affected endpoints to trusted networks or place them behind an authenticating reverse proxy/API gateway (side effect: legitimate browser-based fan pages lose direct access and must be proxied), and add rate limiting plus alerting on repeated openid values or sequential probing of /wxUser/getUserInfo and /wxUserTags, accepting that this only detects brute-force style abuse and cannot stop an attacker who already holds a valid openid. Because openids cannot be rotated by defenders, prioritize restricting disclosure of openids in logs, referrers and client-side code, and monitor application logs for unauthorized tag add/remove operations. Track the upstream repository and the VulnCheck advisory (https://www.vulncheck.com/advisories/niefy-wx-api-through-0.8.2-authentication-bypass-via-unverified-openid-cookie) for a fixed release, and upgrade immediately once a version above 0.8.2 is published.

Affected VersionsENISA

wx-api 0 ≤0.8.2

Affected Packages

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

Niefy wx-api is a Java/Spring Boot management platform for WeChat Official Accounts (公众号) that uses Apache Shiro for authentication and authorization. The root cause is CWE-306 (Missing Authentication for Critical Function): the Shiro filter chain configuration (ShiroConfig.java, lines 43-49) places the fan-facing paths /wxUser/getUserInfo and /wxUserTags in the anonymous/permit-all chain, so the controller methods in WxUserController.java (lines 31-37) and WxUserTagsController.java (lines 31-45) trust the caller-supplied openid cookie as the identity of the fan rather than deriving identity from a verified WeChat session or OAuth result. In effect an opaque follower identifier is treated as a bearer credential. The provided CVSS 4.0 vector carries PR:N, confirming that no authentication is required, while AC:H/AT:P reflects the prerequisite that the attacker must already possess a valid target openid; the authoritative internal assessment (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N) matches this, scoring the finding as remote but gated by knowledge of a non-guessable identifier from CPE cpe:2.3:a:niefy:wx-api:*:*:*:*:*:*:*:*. The linked HackMD research also describes a companion cross-tenant IDOR in the same codebase, indicating the openid trust boundary is reused across multiple endpoints rather than being confined to the two named controllers.

Know when Wx Api 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 6.3 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.8 MEDIUM

Network-reachable with no privileges (PR:N), but AC:H because the attacker must already possess a valid opaque openid; C:L/I:L for limited PII read and fan-tag modification, A:N as no availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Niefy wx-api through 0.8.2 contains an authentication bypass vulnerability that allows unauthenticated attackers to impersonate WeChat fans by supplying a raw openid cookie to fan-facing controllers. Attackers knowing a victim's openid can call /wxUser/getUserInfo and /wxUserTags endpoints to read nickname, phone, unionid and tags, and add or remove fan tags.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Rare
niche self-hosted open-source WeChat backend, minimal production 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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
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· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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