Skip to content

NevermindExpress/TimeDefuser

Repository files navigation

TimeDefuser

TimeDefuser is a kernel-mode Windows driver that patches the kernel to neutralize the expiration date (a.k.a. timebomb), which is seen on most prerelease builds that has been ever compiled.

This patch patches the timebomb code itself in the kernel so it is the most effective and versatile way to neutralize it, instead of activation patching (i.e. policy files or registry editing) which is not available in many builds.

All builds are theoretically supported but not all builds are tested, see the notes for more info, or the end of this readme for screenshots.

Warning

This driver is intended to remove the Windows builds' expiration date only

It will not remove the expiration date of

  • Your abusive relationship
  • 100-minute Minecraft demo
  • The Pepsi can from 1956 that is inside your fridge for whatever reason
  • Aceyware "Tracey" Operating System version 0.1.3 (or whatever its name ends up being)
  • ???
  • Evaluation retail Windows builds. While it theoretically should work, such configuration is not supported and any bug reports regarding to them will be closed without any further action.

Important

This driver will not patch Windows Product Activation or any other similar mechanism. These other mechanisms can be preferred as well in supported builds but here is not their place.

Notes Per Version

Windows 2000/XP

  • Use legacy version with those.
  • Also note that alternative methods such as registry edits are available for those.
  • I KNOW that they do, so don't come to say me "muh set GracePeriod to 0" or "muh use TweakNT". This tweak for NT 5.x exists more as proof of concept, and both this patch or other tweaks will do the work.

Post-reset Windows Vista & Early 7 (later 7 is untested)

  • They suck. Avoid using these versions at all. After build expires, buggy WPA breaks the timebomb which makes this patch not get applied anyway, and shows the "Activate Windows" dialog which logs you off if you say no; considering that those builds can skip the windeploy and boot to OOBE/desktop at all in the first place (#3). See #2 and #2 (comment) for more info.
  • These builds are wontfix because there is nothing to fix/can be fixed in the first place. Blame Microsoft.
  • Alternative patch methods should be used for those. See #2 (comment)

Windows 8

  • Some builds such as 7880 has a partially broken timebomb that effectively gets disabled if you install at current date instead of rolling it back to pre-expiration before install. See #5
  • Certain builds such as aforementioned are also subject to crashes by PatchGuard, while others such as the ones with the screenshots below are not. See #5 (comment)
  • Few builds can be patched with policy/spp files replacement. Again, I KNOW 'THEY' CAN BE PATCHED. "MUH FBL builds can be patched by doing X/can be used at current date without doing anything" well, my thing can patch ALL versions (except ones that have superior PatchGuard) while your method can only fix a few builds.

Windows 10/11

Important

Windows 10 builds are also subject to flight signing, which are code signatures that gets invalid after expiration date, thus preventing system from booting or to be used properly. Getting over this requires additional work (resigning all binaries and disabling integrity checks, or patching bootloader & ci.dll) which is not covered by this project.

  • Works on pre-RTM, post-RTM ("insider") builds are untested but they likely are same as pre-RTM unless KASLR is enabled, which is not supported by this driver.

Usage

  1. Enable test-signing (disabling driver signature enforcement might also be necessary.)
  2. Download the latest release and obtain "devcon" utility (available in WDK and also in some .cab files).
  3. Execute devcon install C:\Path\to\TimeDefuser.inf Root\TimeDefuser
  4. Allow the installition and wait for "Driver Installition Complete" message
  5. If your system didn't crash so far, check expiration date from "winver", if it's not there that means that it worked.
  6. If you want to/need to uninstall, execute devcon remove Root\TimeDefuser and reboot (or just delete the .sys file).

Testing and Bug Reporting

The driver can either work correctly, crash the system, fail or work but not enough to fully patch the currently working system. In all cases the usage of kernel debugger is required to tell which one of those cases happen, and also for why exactly the system crashes.

Driver logs will look like this when it works:

[*] TimeDefuser: version 1.5.2 loaded | Compiled on Nov 10 2025 12:13:16 | https://github.com/NevermindExpress/TimeDefuser
[+] TimeDefuser: SystemExpirationDate is 0x1d0fca547506980
[+] TimeDefuser: Kernel Base address is 0xFFFFF802D388C000 and size is 8658944
[+] TimeDefuser: PAGEDATA Section found at 0xFFFFF802D388C488 with size 62464
[+] TimeDefuser: searching for stamp at 0xFFFFF802D3FF5000 in 62464 bytes
[+] TimeDefuser: Timebomb stamp found at 0xFFFFF802D3FF5A10
[+] TimeDefuser: ExpNtExpirationDate address is 0xFFFFF802D3FF5A10 (first occurrance)
[+] TimeDefuser: PAGELK Section found at 0xFFFFF802D388C348 with size 98932
[+] TimeDefuser: searching at 0xFFFFF802D3C62000 in 98932 bytes
[+] TimeDefuser: Potential TimeRef found at 0xFFFFF802D3C63638
[+] TimeDefuser: ExGetExpirationDate found at 0xFFFFF802D3E02BB4
[*] TimeDefuser: Patch completed successfully.

(same thing as an image)

Builds with debug symbols are recommended to try, due to symbols making debugging much easier.

Build

Starting with version 1.6, Visual Studio 2013 can build both variants and support every Windows version by having appopriate minimum subsystem version set. With this change, building with old WDKs (7.1 and older) is completely removed

Every Windows version with Visual Studio 2013 & Windows 8.1 WDK

  1. Get the VS 2013 & Windows 8.1 WDK
  2. Open the solution TimeDefuser-vs13.sln
  3. Select the appopriate build configuration for your needs (architecture and standard/legacy configurations.)
  4. Hit the compile button.

Windows 7* and Later with Visual Studio 2022 & Windows 11 WDK

Warning

*: With Windows 11 WDK released in May 2025, Microsoft killed the support for 32-bit architectures, and for anything earlier than Windows 10 RTM. If you have an earlier Windows 11 WDK installed, you can still build for 32-bit or for Windows 7-8.1; else you can only build for Windows 10 Post-RTM insiders. Blame Microsoft for this. See #7

In case of having the newest WDK, build will fail because of configuration still having the Windows 7 references. To fix it, you should set them to Windows 10 accordingly.

  1. Get the latest WDK
  2. Open the solution TimeDefuser.sln
  3. Hit the compile button.

Screenshots

Windows 7973 x64-2025-05-04-16-08-40 Windows 10072 x64-2025-11-10-12-53-19 Windows 2526-2025-05-08-17-39-56

Thanks to

  • Microsoft for Windows, Windbg and all else.
  • archive.org and BetaArchive for preserving beta builds and debug symbols.
  • Dimitrios Vlachos for motivational support.
  • All the precious testers that opened up issues.

About

Kernel driver to patch timebomb on prerelease Windows builds.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages