Jump to content
Not connected, Your IP: 216.73.217.99

Leaderboard


Popular Content

Showing content with the highest reputation on 09/23/26 in all areas

  1. 1 point
    This version solved my issues, thanks.
  2. 1 point
    Hello AirVPN Support and Development Team, I am writing to report a stability issue regarding a non-deterministic Blue Screen of Death (BSOD) with error code **0x3B (SYSTEM_SERVICE_EXCEPTION)** triggered when disconnecting from a WireGuard tunnel via the Eddie client. Because this crash happens intermittently during the teardown sequence, it strongly indicates a **Race Condition** or **Use-After-Free (UAF)** vulnerability inside the `wireguard.sys` driver wrapper, where memory buffers are accessed after being invalidated by the NDIS subsystem. **System Environment** * **OS:** Windows 10 IoT Enterprise LTSC 2021 (64-bit) * **Build Number:** 19044.7725 * **Eddie Version:** Any version utilizing WireGuard 1.0.0.0 * **WireGuard Driver Version:** WireGuard 1.0.0.0 **Bug Check Details & Stack Trace Summary** * **Bug Check Code:** 0x3B (`SYSTEM_SERVICE_EXCEPTION`) * **Exception Code:** 0xC0000005 (`EXCEPTION_ACCESS_VIOLATION`) * **Faulting Address:** `0xfffff8004f01111e` (Inside `ndis.sys`) * **Trigger Event:** Disconnecting from the WireGuard tunnel using Eddie. * **Key Stack Frames:** Crash manifests inside `ndis!ndisDeviceControlHandler` triggered by concurrent execution paths originating from `wireguard.sys+0x13b02` and `wireguard.sys+0x13844` during an IOCTL-driven shutdown. **Technical Analysis (Race Condition Hypothesis)** The crash signature and call stack point to a synchronization gap during the driver's teardown phase: 1. **Teardown Initiation:** Eddie issues an IOCTL call to halt the adapter. 2. **Memory Invalidation:** NDIS begins freeing `NDIS_MINIPORT_BLOCK` structures and associated packet buffers. 3. **Concurrent Access:** A pending network interrupt or timer event inside `wireguard.sys` simultaneously attempts to process packets using stale pointers. 4. **Violation:** The driver dereferences the invalidated memory, throwing an access violation within `ndis.sys`. **Reproduction Steps** 1. Launch Eddie and connect to any WireGuard endpoint. 2. Maintain the connection for an arbitrary duration. 3. Click **Disconnect**. 4. **Result:** The client intermittently crashes with BSOD 0x3B instead of executing a clean disconnect. The failure is purely stochastic and independent of network traffic load. **Troubleshooting Performed** * Fast Startup: Disabled. * Clean Install: Performed complete purges of Eddie and residual `wireguard.sys` drivers, followed by clean reinstalls. The issue persists. * Traffic Load: Tested under both idle and high-throughput states; failures occur uniformly, confirming a state-dependent synchronization bug rather than a load-dependent fault. **Impact & Request** This issue undermines system stability on Windows 10 IoT LTSC environments. Since the official WireGuard for Windows client utilizes `Wintun.sys` (which manages adapter concurrency and teardown safely in user-space/TUN architecture), the legacy `wireguard.sys` wrapper appears to lack robust reference counting or synchronization primitives (such as proper spinlock implementation) during NDIS miniport halts. Could you please clarify: * Are you aware of this specific race condition in `wireguard.sys`, and is there an updated build or fix available? * Are there plans to transition Eddie toward native `Wintun.sys` utilization to bypass these kernel-level concurrency constraints? Thank you for your time and assistance in analyzing this behavior. A full kernel memory dump (`MEMORY.DMP`) is attached to this message. 091326-9562-01.dmp
×
×
  • Create New...