CVE intelligence and bounded remediation

CVE-2025-59050 — Greenshot is an open source Windows screenshot utility

High CVSS 8.4

Greenshot is an open source Windows screenshot utility. Greenshot 1.3.300 and earlier deserializes attacker-controlled data received in a WM_COPYDATA message using BinaryFormatter.Deserialize without prior validation or authentication, allowing a local process at the same integrity level to trigger arbitrary code execution inside the Greenshot process. The vulnerable logic resides in a WinForms WndProc handler for WM_COPYDATA (message 74) that copies the supplied bytes into a MemoryStream and invokes BinaryFormatter.Deserialize, and only afterward checks whether the specified channel is authorized. Because the authorization check occurs after deserialization, any gadget chain embedded in the serialized payload executes regardless of channel membership. A local attacker who can send WM_COPYDATA to the Greenshot main window can achieve in-process code execution, which may aid evasion of application control policies by running payloads within the trusted, signed Greenshot.exe process. This issue is fixed in version 1.3.301. No known workarounds exist.

Severity
High
CVSS
8.4 (3.1)
Published
2025-09-16
CISA KEV
Not currently listed
Ecosystem
windows/system
Weaknesses
CWE-502

Affected products

  • getgreenshot / greenshot

Matched remediation archetype

Unsafe deserialization and object reconstruction

This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.

Check exposure

  • Inventory serialization formats accepted from requests, queues, caches, files, cookies, and cross-service messages.
  • Trace whether untrusted input can select classes, types, callbacks, constructors, or object hooks during decoding.
  • Identify signing, schema validation, trust-boundary, and compatibility settings for each decoder.

Remediate safely

  • Replace native object deserialization with a data-only format and explicit schema validation.
  • If replacement is not immediate, use a safe decoder with a minimal type allowlist and disable polymorphic or executable hooks.
  • Update the affected library and add inert tests for unknown types, extra fields, malformed nesting, and unsigned data.

Authoritative sources

Complete CVE record and remediation plan

The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.