Added
- Custom SNI support for stunnel/wstunnel anti-censorship connections.
- Cross-platform diagnostics for API connectivity login failures so logs can better distinguish DNS, routing, proxy, IPv4/IPv6, and local security-policy failures.
Improved
- The Windows IKEv2 connector. A complete rewrite of the code to improve connection setup speed and connection robustness.
- Anti-censorship startup and failover by supporting parallel backup domain testing in wsnet.
- Firewall behavior consistency across platforms and firewall modes.
- Linux firewall implementation by replacing iptables shell calls with libnftables.
- Linux split tunneling so non-tunneled apps can preserve ISP IPv6 on native dual-stack networks while tunneled apps remain leak-protected.
- Always On/Always On+ firewall handling with Allow LAN Traffic by disabling risky LAN allowance on mode enable and warning when LAN traffic is explicitly re-enabled.
- macOS installer/update code paths and installer flow.
- Linux firewall/routing fwmark handling by centralizing fwmark use and avoiding incorrect WireGuard mark behavior.
- Hardening for elevated executables using Windows process mitigation APIs where applicable.
- Windows compiler and linker security hardening, including Control Flow Guard and related mitigation settings.
- Windows build targeting to Windows 10 2004 so newer Windows APIs can be used without changing the minimum install version.
- Split tunneling error handling so startup failures can show the usual Split Tunneling failed alert on macOS.
- Objective-C memory management consistency by enabling ARC uniformly across the project.
- CLI-only behavior by automatically watching config file changes instead of requiring
windscribe-cli preferences reload. - Dependency build integrity by pinning or verifying wstunnel and AmneziaWG prebuilt source dependencies.
Fixed
- Security audit findings covering macOS signature validation, Windows WireGuard config permissions, local IPC robustness, AmneziaWG input validation, and sensitive logging paths.
- Static IP OpenVPN/TCP connections prompting for credentials instead of supplying stored Static IP credentials internally.
- Remembered credentials for external
.ovpncustom configs not being persisted immediately across restart/reboot. - Polish free-data counter text overlapping the upgrade CTA and locations-list chevron.
- Hashed-login failures caused by user accidentally including leading/trailing whitespace in their input.
- WireGuard connection mode unavailable when Always On+ firewall mode is enabled and cached WireGuard connection information is available.
- c-ares Windows DNS server detection regression that could leave only 127.0.0.1:53 and cause DNS resolution failures.
- The Windscribe service getting stuck in the stop pending state when a stop is requested while the desktop app is running on Windows.
- A possible crash when enabling Secure Hotspot after connecting the VPN on Windows.
- A rare crash when launching at startup before macOS screen information is available.
- Linux firewall block rule ordering so Windscribe's kill-switch block path takes precedence over UFW/third-party allow rules.
- openSUSE Tumbleweed RPM install failure related to the libcap-progs dependency path.
- Allow LAN traffic not applying correctly to IPv6 LAN and multicast traffic while connected on Windows.
- Missing warning when split tunneling is enabled while the macOS split tunneling extension has been manually disabled.
- Allow LAN traffic IPv6 behavior on macOS so ULA and multicast traffic are blocked on the VPN interface while remaining reachable on the physical LAN.
Updated
- cURL to 8.21, c-ares to 1.34.7, OpenVPN to 2.7.5, OpenSSL to 4.0.1, and wsnet to 1.5.27 for security updates.
- WireGuard for Windows to 1.1.
- wireguard-go to 0.0.20250522 for macOS and Linux.
GUI Installer Hashes
| Installer | SHA-256 hash |
|---|---|
| Windows amd64 | e6f83ca72a69d6a7b44e700c76b23df772c8874bc7bdfea738880a86a2d5e23a |
| Windows arm64 | e7d89dd840c22bfc2aa37e88bb76167f61c2daad32295ee6b88f00810da1afa8 |
| macOS universal | 755c5a9fbd571d11a0d4ef7b3ebcd495681429df480238869424a7de5b4fb6b2 |
| Ubuntu amd64 | e40ec216bd2807b598db7d10c6fbed008b26175153765047b8ff2e4e0b697d8e |
| Ubuntu arm64 | 30a743721d5d5ee268829399a36583316c4884ce9b3483a69367c41429df957f |
| Fedora amd64 | 8c69710d9058fc43f255c1eedee8f26509dd7c857bb00fd323e2a20089fbc85e |
| Fedora arm64 | 81de556f34a6c10baf39f5106030ae04f3e53463e5dcda7d8896d0cb5fc9f987 |
| OpenSUSE amd64 | de38ac25bb7ab7ff6e9c70c151ac6f6aada19a6456c2e467b2e734e57773c245 |
| Arch Linux amd64 | 8c2902741ac35cc14ff445630721fe5b1cdbac3896300038bdc7c429596d3559 |
CLI Installer Hashes
| Installer | SHA-256 hash |
|---|---|
| Ubuntu CLI amd64 | 07710c97f03899cbc230473a4559ef1e8060c80e1007947860d73fe3ea39ed2b |
| Ubuntu CLI arm64 | 787bc80c1c1bf14fd25172b723b20dd2a9faecb6052dec75ea9f259e694bf97c |
| Fedora CLI amd64 | d84d9be7ff123632f824d458f53b0ee6a3492df49af9add308a717c3396bc481 |
| Fedora CLI arm64 | baf50387cf842e0ce084ed3a4e643354c4dd43f24af5ed32bad3b8f65069c721 |
| OpenSUSE CLI amd64 | 018a5a3a134f04f6d2c0712ac9a6669741480f254a1cf4713097cc8e45688f74 |
| Arch Linux CLI amd64 | 6714f6cef9455b0a45cf606b1ecbdcafa7302935a3066067f870981de1234cfd |