☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H 🐛 CWE-20
👁️
— Improper Input Validation

CVE-2023-34429

CVE-2023-34429 — Weintek Weincloud Improper Handling of Structural Elements
📅 PUBLISHED: 2023-07-19 00:00 UTC 🔄 UPDATED: 2026-08-13 10:06 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.66%
👁️
0.66% probability
16.6× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1499
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 7.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: N Integrity None
A: H Availability High
7.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2023-34429 is a denial-of-service (DoS) vulnerability in Weintek Weincloud v0.13.6, a cloud-based remote access and HMI management platform. An unauthenticated remote attacker can forge a JSON Web Token (JWT) to trigger improper handling of structural elements, causing a denial-of-service condition that can disrupt Weincloud services for legitimate users. The vendor has released v0.13.8 addressing the issue; the patch is claimed by the CNA but not independently confirmed at the time of writing.

⚡ 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

Technical Analysis

The vulnerability resides in the JWT authentication mechanism of Weincloud v0.13.6, a cloud platform used for remote HMI (Human-Machine Interface) device management, data monitoring, and EasyAccess 2.0/Dashboard services integration. The CNA title — "Improper Handling of Structural Elements" — classifies the flaw as a failure to correctly process specially crafted token structures.

The attack vector is the JWT itself. JWTs comprise three Base64URL-encoded segments (header, payload, signature) separated by periods. The "structural elements" referenced in the CNA title likely correspond to malformed header/payload fields, such as:

  • A forged alg (algorithm) header with an unexpected value (e.g., none, or a mismatched HMAC vs. RSA asymmetric algorithm confusion).
  • Type confusion between JWE (encrypted) and JWS (signed) token structures.
  • Excessively large, deeply nested, or malformed claims in the payload segment.
  • Duplicate or conflicting structural fields (e.g., multiple kid entries, malformed Base64URL encoding, unexpected null bytes).

When Weincloud's token parser encounters a structurally invalid or unexpected JWT (per the forged token), the parser enters an error state that is not handled gracefully, resulting in a crash of the authentication service or resource exhaustion. Because the token is processed without valid credentials, the attack is unauthenticated — an attacker needs no account on Weincloud or access to any HMI device.

The NVD description provides no function names, class names, or specific endpoint paths. The technical accuracy of the report is bounded by the description: the attack requires "sending a forged JWT token" to induce a "denial-of-service condition." The exact failure mode (segmentation fault, unbounded recursion, memory exhaustion, or an infinite loop) is not disclosed. The precision of the description is insufficient to assert a specific parser vulnerability library or code path.

Patched version v0.13.8 addresses the issue via an API update. Given the version increment is minor (0.13.6 → 0.13.8), the fix likely involves a targeted change to the JWT validation logic — e.g., strict schema validation, explicit algorithm allow-listing, or proper exception handling around the token parser.

Patch Confidence Assessment (2/4): The vendor/CNA claims the fix is fully applied in v0.13.8 and that it "does not require any action for users" — implying a server-side update. This claim is not independently confirmed by third-party security researchers or testing. No CISA KEV listing, no public exploit, and no PoC code is available for verification.

Exploitation Scenarios

The following attack chain is inferred from the vulnerability class (improper JWT structural handling) and the NVD description. No public PoC exists; the specific payload format is inferred, not confirmed.

Step 1 — Reconnaissance / Target Identification: The attacker identifies Weincloud endpoints via Shodan or by harvesting URLs from Weintek HMI documentation, mobile app configurations, or EasyAccess 2.0 client telemetry. The attack surface is the Weincloud authentication API (public-facing). No credentials or prior access are required — the attacker targets any reachable Weincloud instance.

Step 2 — Flaw Trigger (Forged JWT Construction): The attacker fabricates a JWT without possessing a valid signing key from Weintek's Key Management System. Techniques for forging include:

  • Setting the alg header to none / None / NONE, which, if the parser accepts algorithm-less tokens, bypasses signature verification entirely.
  • Supplying a valid-looking token with a structurally corrupted payload segment — e.g., repeated JSON keys, duplicated header elements, or invalid UTF-8/Base64URL encoding that the parser fails to reject early.
  • Using an asymmetric algorithm confusion payload (e.g., RS256 token signed with a public key that the server trusts as an HMAC secret), producing a token that fails signature verification but triggers a parse-path anomaly before the verification step.

Step 3 — Payload Delivery / Execution: The attacker submits the forged JWT in the Authorization header (Bearer format) of an HTTP request to the Weincloud authentication endpoint. The server's JWT parser receives the malformed structure. The "improper handling" means the server does not validate structural invariants (e.g., algorithm whitelisting, claim type checks) before passing the token to core processing logic. This causes the parser or the authentication handler to crash, hang, or exhaust memory/CPU.

Step 4 — Post-Exploitation Impact: A single forged request (or a small number of repeated requests) renders the Weincloud authentication service unavailable. Legitimate users cannot log in, HMI devices fail to establish remote sessions via EasyAccess 2.0, and device monitoring dashboards go dark. Since the service is cloud-hosted, the DoS has broad geographic blast radius affecting any organization relying on Weincloud for remote HMI management.

Alternative Scenario (Resource Exhaustion): If the crash is localized (e.g., only the worker thread handling the request dies) rather than the entire service, the attacker repeats the request in parallel to exhaust connection pools, CPU cycles, or memory. This is consistent with CVSS 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) — high availability impact, no confidentiality or integrity impact.

Impact Assessment

Business Impact: Weincloud is a cloud infrastructure dependency for Weintek HMI deployments. A DoS on this service halts remote access to industrial HMIs, blocking:

  • Remote diagnostics and troubleshooting of machinery (or directly to production line downtime).
  • Firmware/recipe/manual pushing to field devices.
  • Real-time HMI screen monitoring for supervisory staff.
  • Alarming/event data collection.

The CVSS score of 7.5 (High) reflects an unauthenticated, network-reachable attack with low complexity and no user interaction. The impact is purely on availability (A:H), with no confidentiality or integrity loss (C:N/I:N). The absence of authentication requirements means an attacker can hit the service with arbitrary forged tokens from any internet-connected host.

Affected Systems: All Weintek HMIs and HMI-based control systems configured to use Weincloud online services (EasyAccess 2.0 and Dashboard). Organizations using on-premises Weintek device management without cloud integration are unaffected.

Blast Radius: The blast radius extends across the entire Weincloud tenant/user base — the DoS degrades service for all customers, not just the attacker's target. This is a "shared-infrastructure" DoS: one attacker can degrade the platform for every organization using Weincloud. The industrial context elevates severity: OT environments often lack rapid manual fallback control mechanisms when remote access is cut.

Detection Guidance

The following detections are design patterns for the attack class (forged JWT / abnormal token submissions).

Sigma Rule

title: Forged or Malformed JWT Token Sent to Authentication Endpoint
id: 1f5d3b2e-8a2c-4e4d-9f31-6e5b8a1093aa
status: experimental
description: Detects HTTP requests carrying suspicious JWT tokens (alg=none, malformed structure, or anomalous header) destined for authentication services, potentially indicating CVE-2023-34429 exploitation attempts.
logsource:
  category: webserver
  product: generic
detection:
  selection:
    cs-method: POST
    cs-uri-stem:
      - '*token*'
      - '*auth*'
      - '*login*'
      - '*weincloud*'
  filter_token_structure:
    cs-user-agent:
      - 'Mozilla/5.0*'
  condition: selection and not filter_token_structure
fields:
  - c-ip
  - cs-uri-stem
  - cs-user-agent
  - cs-referer
falsepositives:
  - Legitimate API clients with non-browser user agents (rare)
level: medium

YARA Rule

rule CVE_2023_34429_Forged_JWT
{
    meta:
        author = "valtersit.com - Threat Intel"
        description = "Detects forged JWT payloads with structural anomalies (alg=none, malformed Base64, unexpected header claims)"
        cve = "CVE-2023-34429"
        date = "2025-01-25"
    strings:
        $alg_none = /\"alg\"\s*:\s*[\"\']none[\"\']/ nocase
        $alg_none_upper = /\"alg\"\s*:\s*[\"\']None[\"\']/
        $alg_none_caps = /\"alg\"\s*:\s*[\"\']NONE[\"\']/
        $multiple_kid = /(\"kid\"[^}]*){3,}/
        $jwt_segments = /[a-zA-Z0-9_-]{30,}\.[a-zA-Z0-9_-]{30,}\.[a-zA-Z0-9_-]{30,}/
        $bad_base64 = /[^a-zA-Z0-9_\-\+=\/]/
    condition:
        uint16(0) == 0x0A0D or any of ($alg_none*) or $multiple_kid or ($jwt_segments and #bad_base64 > 10)
}

Suricata IDS Rule

alert http any any -> $EXTERNAL_NET any (msg:"CVE-2023-34429 - Weincloud Forged JWT DoS Attempt"; flow:to_server,established; http.method; content:"POST"; http.uri; content:"token"; nocase; http.header; content:"Authorization"; content:"Bearer "; http.header_names; content:"|0d 0a|Authorization|3a|"; pcre:/alg"\s*:\s*"(none|None|NONE)"/Ui; sid: 2023034429; rev: 1; metadata: created_at 2025-01-25, cve CVE-2023-34429;)

Elastic Detection

sequence by source.ip
  [ network where event.action == "connection_attempt" and destination.port == 443 ]
  [ http where http.request.method == "POST" and
      (http.request.body.content contains "alg" and
       (http.request.body.content contains "\"none\"" or
        http.request.body.content contains "\"None\"" or
        http.request.body.content contains "\"NONE\"")) and
      wildcard(http.request.headers.authorization, "Bearer *")
  ] with maxspan=5s

Splunk SPL Query

index=proxy OR index=web sourcetype="access_combined" 
| search method=POST 
| regex uri="token|auth|login|weincloud" 
| spath input=auth_header 
| rename auth_header as auth_value 
| regex auth_value="alg\s*:\s*\"?(none|None|NONE)\"?" 
| table _time src_ip uri status auth_value user_agent 
| stats count by src_ip 
| where count > 5

Wazuh OSSEC Rule

<group name="weincloud,jwt,dos,">
  <rule id="100344" level="10">
    <decoded_as>json</decoded_as>
    <field name="url">\.(token|auth|login)</field>
    <match>alg\\": \\"(none|None|NONE)</match>
    <description>CVE-2023-34429: Forged JWT token (alg=none) detected in Weincloud authentication attempt</description>
    <mitre>
      <id>T1499</id>
    </mitre>
    <group>attack.dos,</group>
  </rule>

  <rule id="100345" level="8">
    <decoded_as>json</decoded_as>
    <field name="url">\.(token|auth|login)</field>
    <regex>^([a-zA-Z0-9_-]{20,}\.){2}[a-zA-Z0-9_-]{20,}$</regex>
    <description>Multiple requests with JWT format tokens to Weincloud endpoints (possible DoS pattern)</description>
    <group>attack.dos,</group>
    <if_sid>100344</if_sid>
    <options>no_full_log</options>
  </rule>
</group>

Mitigation & Patch Guidance

Patch Confidence: 2/4 (CLAIMED) — the vendor/CNA states v0.13.8 fixes the issue but provides no independent technical confirmation.

1) Immediate Mitigations (before/without patching):

  • Network Layer: Apply egress/ingress firewalling to restrict access to Weincloud API endpoints. Allow only known HMI device IPs and corporate proxy egress IPs to reach the Weincloud service. This reduces the set of potential attackers.
  • WAF Rules: Deploy a Web Application Firewall rule to block HTTP requests whose Authorization header contains a JWT with alg: none (case-insensitive) or structurally anomalous token patterns (e.g., tokens with more than 3 segments, or with unsupported algorithm fields).
  • Rate Limiting: Enforce strict per-IP rate limiting on Weincloud authentication endpoints at the reverse proxy/load balancer. Even if a forged token bypasses initial filtering, rate limiting prevents connection/resource exhaustion from repeated attacks.
  • Operational Kontinuität: Implement manual fallback procedures for HMI remote access — e.g., direct VPN into OT networks as a backup path — to retain operational capability if Weincloud goes down.

2) Patch/Upgrade Steps:

  • Verify and confirm deployment of Weincloud v0.13.8. Contact Weintek support for the upgrade window and confirm the version is live on the account API endpoint (e.g., testing that the /api/version endpoint reports v0.13.8 or higher).
  • Since the vendor states the fix "does not require any action for users," validate that HMI devices and EasyAccess client software continue to function after the server-side update. Confirm that existing HMI firmware does not need changes.
  • Independently test the patched version by submitting crafted JWT payloads (using jwt_tool or custom Python scripts) to validate that the parser rejects malformed structures gracefully. If testing is not possible on production, request access to the Weintek staging environment.
  • Note: Do not disable or bypass any existing authentication layers thinking the cloud patch is sufficient — defense in depth applies.

3) Long-Term Hardening:

  • HMI Offline Mode: For HMIs that do not require cloud connectivity, configure EasyAccess 2.0 and Dashboard services to offline mode using system reserved addresses, as recommended by the vendor. This reduces the cloud attack surface entirely.
  • Credential Hygiene: Enforce regular password changes for Weincloud accounts — this minimizes the impact of any credential exposure that could be combined with other attack chains (not relevant to this specific DoS, but good practice).
  • Network Segmentation: Ensure HMI/OT network segments have minimal internet exposure. Use proximity access (local Ethernet) as the preferred connection method; treat cloud access as convenience, not the primary channel for critical operations.
  • Monitoring: Implement the detection rules above (Sigma, Splunk, Wazuh) to log and alert on anomalous token patterns. Retain authentication logs for at least 90 days for forensic purposes.
  • Vendor Relationship Management: Request Weintek to publish a security advisory with the specific parser change and affected endpoint list. Ask for a root-cause statement, a CWE assignment, and an updated CVSS vector string. The CNA's "2/4 confidence" rating indicates the lack of public technical detail; push for transparency.

References

  1. NVD Entry: https://nvd.nist.gov/vuln/detail/CVE-2023-34429 — Official NVD record, including description and CVSS 7.5 scoring. (Primary reference.)
  2. Weintek Security Advisory (CNA): Refer to vendor advisory issued by the CNA confirming the fix in v0.13.8 and recommended mitigations (trusted-computer usage, offline mode, password changes, network exposure minimization).
  3. Weintek Product Documentation (EasyAccess 2.0): https://www.weintek.com/globalw/ — Documentation on EasyAccess 2.0 cloud configuration and system reserved addresses for offline services.
  4. CISA KEV Database: Not applicable (NO listing) — confirms this vulnerability is not yet observed in active exploitation campaigns per CISA's Known Exploited Vulnerabilities catalog.
  5. MITRE ATT&CK Technique Reference: https://attack.mitre.org/techniques/T1499/ — Endpoint Denial of Service, matching the availability impact class of this CVE.

Threat Actor Campaigns / Exploit-in-the-Wild Evidence: No public reports of active exploitation, exploit code, or threat actor campaigns targeting CVE-2023-34429 exist at the time of writing. EPSS score of 0.00663 (~48.4th percentile) indicates that while this CVE has a relatively higher probability of being exploited compared to the general CVE population, the absolute probability remains low and no in-the-wild exploitation has been documented. The absence of a PoC, Nuclei template, or exploit code further suggests this vulnerability is not yet targeted by commodity cybercriminals.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

title:"Weincloud"
http.html:"weincloud"
"EasyAccess 2.0" "Weintek"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2023-34429/ · 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.