This commit is contained in:
WindowsAddict 2025-02-13 23:12:28 +05:30
parent 5586db326b
commit 926bb7bf5b
69 changed files with 824 additions and 115 deletions

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 651 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 588 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -0,0 +1,259 @@
---
slug: tsforge
title: TSforge
authors: [witherornot, asdcorp, abbodi1406, lyssa]
tags:
- Windows
- Activation
image: /img/blog_card.png
---
# TSforge: Gaslighting a DRM system
By WitherOrNot
Edited by May
## Introduction
2025 marks nearly 20 years since the introduction of Windows' current DRM system, the Software Protection Platform (SPP). With it serving as the primary gateway to activation since [early in Windows Vista's development](https://betawiki.net/wiki/Windows_Vista_build_5212_(winmain)), many have come up with clever ways of tricking it, from [resetting grace period timers](https://www.mydigitallife.net/activate-64-bit-windows-vista-ultimate-and-x64-with-timerstop-v2a-crack-plus-2099-trick/) to [emulating KMS servers](https://forums.mydigitallife.net/threads/kmsemulator-kms-client-and-server-emulation-source.41010/) to [hooking bootloaders](https://forums.mydigitallife.net/threads/windows-loader-download.58464/). While all of these systems abuse various activation methods, there has never been an exploit that directly attacked SPP itself... until now.
<!-- truncate -->
In this blogpost, we introduce [TSforge](https://github.com/massgravel/TSforge), one of our most powerful activation exploits ever. Capable of activating every edition of every version of Windows since Windows 7, as well as every Windows addon and Office version since Office 2013, TSforge is both the most complex and most wide-reaching exploit we've implemented in MAS to date, rivaled only by our ill-fated [Keyhole](https://massgrave.dev/blog/keyhole) exploit. Aside from discussing how TSforge works, I'll also be discussing the wild path we took to discover and understand it, as well as some of the fun things we did with it along the way.
## SPP
SPP is a very complex system with several moving parts involved. To keep things simple, we'll only focus on the parts relevant to this exploit:
- `sppsvc.exe`/`slsvc.exe` - The primary usermode service for SPP, responsible for managing licenses and activation statuses
- `spsys.sys` - (Windows Vista/7 only) Responsible for storing sensitive activation information, merged into sppsvc since Windows 8
- `sppobjs.dll` - A plugin library containing most of the logic for product key and confirmation ID validation
## CID Trick
Our first hint of a universal SPP exploit was in 2023, with the discovery of a method we called the "CID trick", which allowed us to deposit fake confirmation IDs.
Confirmation IDs (CIDs) are numeric values used for [activating Windows by phone](https://support.microsoft.com/en-us/windows/product-activation-for-windows-online-support-telephone-numbers-35f6a805-1259-88b4-f5e9-b52cccef91a0), either through a dialog or with the `slmgr /atp` command. Because phone activation can be done without being connected to any network, all Windows editions and addons have at least one licensing channel that can be phone-activated, including otherwise uncrackable products like KMS servers and ESU addons.
Recognizing this, asdcorp decided to investigate how CID validation worked internally. After doing a simple in-memory patch to make any provided CID valid, they noticed it had some odd effects:
import ReactPlayer from 'react-player'
<ReactPlayer controls width='100%' height='auto' url='/cidtrick.mp4' />
As shown in the video, patching the CID validation code in `sppobjs.dll` allowed us to use a CID made of all zeroes for activation. Crucially though, this activation remained even after clearing the patch by restarting sppsvc. To us, this suggested something very important: **whatever data SPP saves to remember that it's activated is never validated after being written**.
This was a very exciting discovery for us, as it meant that if we could write this same data, we could easily activate any copy of Windows without needing to use debuggers or [exploit kernel drivers](https://github.com/itm4n/PPLcontrol). More importantly for me, it also meant that this method could possibly be extended to work on older versions like [Windows 7](https://en.wikipedia.org/wiki/Special_interest_(autism)) and 8, where patching SPP code at runtime is much more difficult.
In order make this a viable method, though, we needed to answer these questions:
- Where is activation data being written?
- What data is written during the CID trick that causes activation?
- How is this data encoded?
## Initial Work
From prior investigations, we had a partial answer to the first question. Observing sppsvc using [Process Monitor](https://learn.microsoft.com/en-us/sysinternals/downloads/procmon), we could see exactly where it was storing activation data:
![image](./assets/tsf/procmon1.png)
On Windows 8.1 and 10, we observed that data is mainly stored in the following locations:
- `C:\Windows\System32\spp\store\2.0\data.dat`
- `C:\Windows\System32\spp\store\2.0\tokens.dat`
- `HKEY_LOCAL_MACHINE\SYSTEM\WPA`
Windows 8 is almost identical, except that the `.dat` files are stored under `C:\Windows\System32\spp\store`.
Windows 7, however, is a very different story:
![image](./assets/tsf/procmon2.png)
Here, I saw references to the following locations:
- `C:\Windows\System32\7B296FB0-376B-497e-B012-9C450E1B7327-5P-0.C7483456-A289-439d-8115-601632D005A0`
- `C:\Windows\System32\7B296FB0-376B-497e-B012-9C450E1B7327-5P-1.C7483456-A289-439d-8115-601632D005A0`
- `C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\tokens.dat`
- `HKEY_LOCAL_MACHINE\SYSTEM\WPA`
More strangely, though, I found that sppsvc wouldn't write to either of the "7B296..." files or WPA registry keys directly. Instead, it would use the [`DeviceIoControl`](https://learn.microsoft.com/en-us/windows/win32/api/ioapiset/nf-ioapiset-deviceiocontrol) method to call a driver known as `spsys.sys`. This driver would then handle writing to "7B296..." files and WPA registry keys.
![image](./assets/tsf/procmon3.png)
In comparing these files and registry keys, I saw quite a few similarities. The `tokens.dat` files were mostly uninteresting at first, since across all versions, these files seemed to just hold the contents of the XML licenses in a similarly named folder: `C:\Windows\System32\spp\tokens`.
The "7B296..." and `data.dat` files seemed to serve similar roles, as these files were not only encrypted, but they seemed to have some kind of hash or signature included as well. Corrupting or deleting these files would uninstall all installed product keys and reset all other activation data (rearm counts, KMS client counts, etc.). On Windows 7, it would also show this lovely error message:
![image](./assets/tsf/unauth_error.png)
Setting aside the question of how I can't be authorized to make changes to my own computer, after installing a product key, I get a notification for "tampering with the trusted store" across several versions:
![image](./assets/tsf/tamper.png)
Putting all this together, it would seem like the "7B296..." files and `data.dat` both serve as storage for important activation data, and they seem to be referred to internally as the "trusted store".
A similar process of brute-force tampering with the WPA registry keys showed that they were somehow linked with the trusted store. New keys with seemingly encrypted data were added under `HKEY_LOCAL_MACHINE\SYSTEM\WPA` periodically, as well as after significant licensing changes. Additionally, thanks to the [`NtLockProductActivationKeys`](https://www.tiraniddo.dev/2017/07/locking-your-registry-keys-for-fun-and.html) function, these keys were entirely read-only and unable to be deleted, unless you messed with them from a Windows PE environment. Tampering with or deleting these keys caused similar "license tampering" errors to appear, but if we copied these keys along with trusted store files from one installation to another, sppsvc didn't seem to complain about tampering anymore.
From all of this work, we learned the following things:
- Critical activation data like product keys and rearm counts are stored in something known as the "trusted store"
- The trusted store's data is held in encrypted files
- This data is somehow linked with seemingly encrypted registry keys under `HKLM\SYSTEM\WPA`
Unfortunately, we didn't know much more than this for quite a long time. My work on deobfuscating both [older](https://github.com/UMSKT/peacestone) and [newer](https://github.com/WitherOrNot/warbird-docs) versions of sppsvc helped us in confirming some of our theories, but without an understanding of `spsys.sys`, they didn't contribute much. In the meantime, SpCreatePackaedLicense built an automated version of the CID trick, using a custom kernel driver to patch sppsvc without adjusting its [protected process](https://www.alex-ionescu.com/why-protected-processes-are-a-bad-idea/) status, which helped greatly with testing CID trick.
![image](./assets/tsf/miieow1.png)
Aside from this, though, we mostly shelved this work in favor of investigating CLiP, which seemed to have more promising avenues for exploitation.
## When It Leaks, It Floods
Although we focus heavily on Windows piracy, many of us MASSGRAVE members are also interested in its development history, or more specifically, its various pre-release beta builds. Studying and messing with these builds is not only fun as a novelty, but the artifacts that get left in during development can help us learn a lot about how Windows works.
While discussing activation mechanisms of recently leaked Windows 8 builds with some beta conoisseurs, I was casually blindsided with a couple major reveals:
![image](./assets/tsf/convo1.png)
![image](./assets/tsf/convo2.png)
Although [build 7792](https://betawiki.net/wiki/Windows_8_build_7792) and [build 7850](https://betawiki.net/wiki/Windows_8_build_7850) were on the path to Windows 8 development, their build numbers were close enough to Windows 7 (build 7600) that I was hopeful for some new information on spsys. Indeed, within a [symbol archive for build 7850](https://archive.org/details/Win8_7850_x64fre_symbols), I found symbols for spsys, along with the rest of the activation subsystem.
![image](./assets/tsf/symlist.png)
Build 7792 also had a version of spsys that was entirely unobfuscated, just as advertised, but with no symbols. Build 7850's spsys, on the other hand, had full symbols along with full obfuscation. While I wasn't able to have my cake and eat it too, this pairing was still an incredibly lucky finding, so I decided to use it to figure out how the trusted store works.
## Spells and Curses
As usual with lucky breaks, this one came with strings attached. The biggest one was that, unlike with any other normal Windows build, kernel debugging with WinDBG didn't work at all on build 7792, as this was one of the earliest ARM ports of Windows.
![image](./assets/tsf/convo3.png)
So, although I had a completely deobfuscated copy of spsys without any annoying anti-debug features, I had very few options to actually debug it. Since this build was being emulated in QEMU, I still had the option of using its built-in GDB debugging server, but this would be very difficult to use, as I would have to manually locate the kernel and drivers in memory to do anything useful. Luckily, I was able to get in touch with Rairii, who was more familiar with this debugging method thanks to his work on [emulating early Windows on ARM](https://github.com/Wack0/tegra2_qemu_woa).
Unfortunately, I knew little about QEMU OS debugging, or ARM, or very low-level Windows internals, so his advice was a bit difficult to follow at first...
![image](./assets/tsf/convo4.png)
Compounding the problem was my choice to write custom tooling for this project, using a GDB client library to control QEMU and automatically break whenever spsys loaded. Much like most of my attempts at custom tooling, this ended up being a gigantic waste of time that ultimately didn't even work in the end, not least due to my inexperience with GDB in general. After wasting even more time trying to add Windows support to GDB through its [Python API](https://sourceware.org/gdb/current/onlinedocs/gdb.html/Python-API.html#Python-API), I ended up biting the bullet and choosing the devil I knew, the IDA Pro debugger.
Yes, it's the least "appropriate" choice for debugging a kernel or debugging QEMU (or really anything at all), but what was more important to me was that I'm familiar with it. Using the various kernel structs I grabbed and modified from [build 7915](https://betawiki.net/wiki/Windows_8_build_7915)'s symbol set, I was able to crap out a script that would breakpoint on various kernel functions and grab important data, like the kernel base address and list of loaded kernel modules. By programmatically breaking on `IopLoadDriver`, I could even automatically update the module list as each driver was loaded.
![image](./assets/tsf/modlist1.png)
However, even with this monitoring system, I still couldn't catch the moment that `spsys.sys` loaded. It was only after checking the code for its loader, `spldr.sys`, that I spotted an interesting call to `ZwSetSystemInformation`:
![image](./assets/tsf/spsys_ld.png)
Referencing [Geoff Chappell's table](https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/ex/sysinfo/set.htm), I saw that this corresponded to `SystemLoadGdiDriverInSystemSpace`, which, of course, has it's own branch in the kernel code that can load drivers without invoking `IopLoadDriver`.
![image](./assets/tsf/kbranch.png)
After breaking at this branch as well, I could finally catch `spsys.sys` as soon as it loaded!
![image](./assets/tsf/spsys_gotcha.png)
All this work, mind you, ended up implementing what would've been just `sxe ld spsys` if WinDBG worked. Regardless, I was now able to catch and debug build 7792's spsys right as it loaded, without the annoying obfuscation and anti-debug in the way.
Speaking of obfuscation, I still needed to unpack build 7850's spsys to make any sense of it. Fortunately, this was much easier, since I could search for where calls to encrypted functions are made.
![image](./assets/tsf/spsys_7850.png)
Then, I just had to break at these calls in the kernel debugger and dump the driver from memory, and I got all of the the code decrypted fairly easily. From here, it was just a long process of transferring symbols by eye, and I was finally at square one.
![image](./assets/tsf/labeled_funcs.png)
## Progress At Last
With all of the functions labeled, I noticed an interesting pattern in the code that generates the trusted store file, which seems to be called the "physical store". Rather than the typical approach of storing encrypted data in a separate buffer, Microsoft seemed to opt for doing their encryption in-place.
![image](./assets/tsf/encrypt_data.png)
This probably prevents some kind of side-channel attack, but more importantly, it means that I can "decrypt" the physical store by simply skipping this call in the debugger and letting spsys write the un-encrypted contents to the disk. And so I did:
![image](./assets/tsf/decrypt_ps.png)
asdcorp and abbodi1406 immediately went to work, figuring out the data format and what kind of data is stored within. Meanwhile, I was focused on replicating this trick on Windows 10, where analysis would be far easier, not least due to having an actual debugger (x64dbg) available. Conveniently, the function HIDHash had some very unique constants in it:
![image](./assets/tsf/hidhash1.png)
Searching for these constants in Windows 10's sppsvc led me to the same function in sppsvc:
![image](./assets/tsf/hidhash2.png)
As I found out, most of spsys's code ended up being included in sppsvc on Windows 10. Comparing these codebases, I found all of the encryption, decryption, signature check, and hash check routines. Patching all of these routines out in the debugger, we could get sppsvc to not only decrypt its `data.dat` for us, but also to load and accept any modifications we made in it.
![image](./assets/tsf/rearm_42069.png)
In the process of testing these patches, we ended up finding the long-lost product key for [Redpill](https://betawiki.net/wiki/Feature_lockout_in_Windows#Windows_8), a feature lockout system for beta releases of Windows 8.
![image](./assets/tsf/redpill_key.png)
With some experimentation and a bit of assistance from me, asdcorp managed to reproduce the CID trick, but this time without patching the CID verification routine.
![image](./assets/tsf/cidtrick2.png)
From here, asdcorp and Lyssa figured out and tested even more exploits, including a method to KMS-activate offline for over 4000 years.
![image](./assets/tsf/kms4k.png)
Although these results marked significant progress, we still needed to use a debugger to test these methods, since we had no way to decrypt and re-encrypt the physical store by ourselves. So, my next task was to figure out how to do just that.
## Private Key Derivation
I knew from looking at spsys that the only real key I needed to derive was an RSA key, which encrypts an AES key that encrypts the physical store data. I also knew from tests conducted with asdcorp that there were only two such keys: one for production/official beta versions and one for internal testing/Windows Insider versions. In the absence of raw key data, we found this out with a highly advanced method: copying physical store files, editing its version, and waiting for sppsvc to crash horrifically, signaling that it could decrypt but not parse the swapped file.
Examining the RSA decryption routine, called `SpModExpPrv`, I found a interpreter for a bytecode system known as `ExecCodes`. With a lot of drudgery and regexes, I was able to write a simulator of this system in Python.
![image](./assets/tsf/execcodes.png)
Observing the output of this simulation, I realized that all of this obfuscation covered up a technique I had vaguely heard of before, known as [addition-chain exponentiation](https://en.wikipedia.org/wiki/Addition-chain_exponentiation). With a bit of thinking, I realized that I could just track and dump the inputs and outputs of each modular multiplication and use this to derive the private key. All it took was x64dbg logging and a few more lines of python:
![image](./assets/tsf/keyderiv.png)
And at last, I had the complete production key for all of SPP, from Windows Vista to Windows 11.
![image](./assets/tsf/prodkey.png)
Deriving the test key took a little while longer, due to some weird differences in how the modular multiplications were implemented, but eventually, we had every SPP private key we needed.
## Nailing The Coffin
With the private key in hand, we were able to activate almost any edition we wanted with ease. There was still one bit of trouble, though, and that was in obtaining generic keys to enable activation.
On Windows 8 and up, it's rather [trivial](https://github.com/awuctl/licensing-stuff) to generate generic keys for any channel of any edition you wanted. However, Windows 7 and CSVLKs (KMS host keys) up to Server 2022 used [PKEY2005](https://github.com/UMSKT/writeups/blob/main/PKEY2005.md), a much more complicated encoding system that needed private keys to generate even generic keys. Since I didn't have any cryptographic tricks left up my sleeve, we decided the best way through this problem was around.
Within the physical store are large blobs for each product key, containing various pre-computed information, such as the product IDs and phone activation data. Additionally, we found that the token store (`tokens.dat`) also contains metadata tying product keys to the current edition of Windows. Therefore, we figured that simply replicating this data was enough to trick Windows into thinking a key was installed, and for once, we were right.
![image](./assets/tsf/igpk.png)
In the meantime, while developing a programmatic method for the new CID trick, which we now called ZeroCID, we were having trouble with the HWID data we needed to write into the physical store. Originally, we tried using a [C# port of GatherOsState's HWID derivation](https://github.com/laomms/HwidGenerator), but this ended up failing to validate in some rare cases. Since we had few options to debug or fix this port, asdcorp decided to create an HWID value that would apply to all hardware, and yet again, it worked perfectly, even allowing transfer of activation between machines.
![image](./assets/tsf/uhwid.png)
With the HWID validation and PKEY2005 defeated, we had now almost entirely defeated SPP's offline protections.
## Closing Thoughts
Even with the amount of damage we were able to do to SPP with a debugger and a hex editor, I still think it's a rather advanced and well-built DRM system. Its internals certainly improve upon those of Windows XP's DRM, which, despite whatever some might tell you, was rather poorly designed. It also manages to defend itself fairly well against the most common attacks, such as resetting evaluation timers by swapping physical store files. Additionally, there are still parts of SPP that we haven't managed to crack, like the signed XML licenses used to define its behavior. After all, it's not like there's another [trivial patch](https://github.com/massgravel/MIIEow) that can bypass their signature checks...
![image](./assets/tsf/starterd.png)
## Credits
#### Core Research and Development
- WitherOrNot - Lead tool development, reverse engineering, testing
- asdcorp - Initial demonstrations, reverse engineering, tool development, testing
- abbodi1406 - Reverse engineering, development, testing
- Lyssa - Reverse engineering, tool development, testing
#### Other Contributions
- SpCreatePackaedLicense - Tool development, testing
- May - Code formatting, build setup
#### Special Thanks
- BetaWiki - Supplying and documenting leaked beta builds used for reverse engineering
- Rairii - Assistance with initial reverse engineering efforts
- Microsoft - A fun challenge

View File

@ -17,3 +17,30 @@ may:
socials:
github: ave9858
lyssa:
name: Lyssa
title: Researcher @ MASSGRAVE
url: https://github.com/thecatontheceiling
image_url: https://avatars.githubusercontent.com/u/75037904
page: true
socials:
github: thecatontheceiling
abbodi1406:
name: abbodi1406
title: Researcher @ MASSGRAVE
url: https://github.com/abbodi1406
image_url: https://avatars.githubusercontent.com/u/33669284
page: true
socials:
github: abbodi1406
asdcorp:
name: asdcorp
title: Research group @ MASSGRAVE
url: https://github.com/asdcorp
image_url: https://avatars.githubusercontent.com/u/93846094
page: true
socials:
github: asdcorp

View File

@ -2,6 +2,35 @@
------------------------------------------------------------------------
## 3.0
**The Forge Awakens**
#### TSforge:
- A new activation method named TSforge is added to MAS.
- For details about the method, see our [documentation](https://massgrave.dev/tsforge) and our [blogpost](https://massgrave.dev/blog).
- [Thanks](https://massgrave.dev/credits) to @WitherOrNot @asdcorp @abbodi1406 and @thecatontheceiling from the MASSGRAVE R&D team for TSforge.
#### HWID
- Fixed an issue in checking the licensing server status.
#### Ohook / Online KMS
- Some obscure Office products are added.
- Scripts will skip the check for permanently activated Office products.
#### Check Activation Status
- Updated CAS by @abbodi1406 is added.
#### All
- Various other minor fixes and improvements.
------------------------------------------------------------------------
## 2.9
**Bug fixes**

41
docs/chart.md Normal file
View File

@ -0,0 +1,41 @@
# Activation Methods Chart
Below is a comparison of activation methods offered by Microsoft Activation Scripts.
Basics
------
| | HWID | Ohook | KMS38 | Online KMS | TSforge (ZeroCID) |
| --- | :---: | :---: | :---: | :---: | :---: |
| Does not require internet connection | ❌ | ✅ | ✅ | ❌ | ✅ |
| Activation is permanent | ✅ | ✅ | ✅[^1] | ✅[^2] | ✅ |
| Does not leave any files in the system to keep the activation status | ✅ | ❌ | ✅ | ❌ | ✅ |
Persistence
-----------
| | HWID | Ohook | KMS38 | Online KMS | TSforge (ZeroCID) |
| --- | :---: | :---: | :---: | :---: | :---: |
| Persists between hardware changes | ❌ | ✅ | ❌ | ✅ | ✅ |
| Persists between clean installations on the same hardware | ✅ | ❌ | ❌ | ❌ | ❌ |
| Persists between Windows 10 / 11 feature upgrades | ✅ | ✅ | ✅ | ✅ | ❌ |
Support
-------
| | HWID | Ohook | KMS38 | Online KMS | TSforge (ZeroCID) |
| --- | :---: | :---: | :---: | :---: | :---: |
| Windows 7 / 8 / 8.1 | ❌ | ❌ | ❌ | ✅[^3] | ✅ |
| Windows 10 / 11 | ✅ | ❌ | ✅[^3] | ✅[^3] | ✅ |
| Windows Server 2008 R2 / 2012 / 2012 R2 | ❌ | ❌ | ❌ | ✅ | ✅ |
| Windows Server 2016 and later | ❌ | ❌ | ✅ | ✅ | ✅ |
| Office 2010 | ❌ | ❌ | ❌ | ✅[^3] | ❌ |
| Office 2013 and later | ❌ | ✅[^4] | ❌ | ✅[^3] | ✅[^5] |
| Windows / Office KMS Host | ❌ | ❌ | ❌ | ❌ | ✅ |
| Windows Extended Security Updates | ❌ | ❌ | ❌ | ❌ | ✅ |
| OCUR / RP / APPXLOB addons | ❌ | ❌ | ❌ | ❌ | ✅ |
---
[^1]: Valid until the year 2038.
[^2]: Valid for 180 days by default. Permanent with renewal task installed.
[^3]: Volume activation capable editions only.
[^4]: Supported only on Windows 8 and later.
[^5]: Supported only on Windows 8 and later; subscription editions are not supported.

View File

@ -5,29 +5,61 @@
- You can use the below switches in MAS AIO, separate files version and in Powershell one-liner to run in unattended mode.
- If you want to use it in Windows Pre-Activation then check [this](oem-folder.md) page for more details.
| Switches | Meaning |
|-------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `/HWID` | Activate with HWID |
| `/HWID-NoEditionChange` | Some editions don't support HWID, script by default change edition to nearest available to enable HWID activation. This switch can be used to stop this change. You don't need to add `/HWID` switch with this. |
| | |
| `/Ohook` | Install Ohook to activate Office |
| `/Ohook-Uninstall` | Uninstall Ohook |
| | |
| `/KMS38` | Activate with KMS38 |
| `/KMS38-RemoveProtection` | Remove KMS38 protection |
| `/KMS38-NoEditionChange` | Some editions don't support KMS38, script by default change edition to nearest available to enable KMS38 activation. This switch can be used to stop this change. You don't need to add `/KMS38` switch with this. |
| | |
| `/K-Windows` | Activate only Windows with Online KMS |
| `/K-Office` | Activate only Office with Online KMS |
| `/K-ProjectVisio` | Activate only Project/Visio with Online KMS |
| `/K-WindowsOffice` | Activate all Windows and Office with Online KMS |
| `/K-NoEditionChange` | Some editions don't support KMS, script by default change edition to nearest available to enable KMS activation. This switch can be used to stop this change. |
| `/K-NoRenewalTask` | Whenever you run any activation, the script installs the auto-renewal task by default. To NOT auto-install renewal task with activation, use this switch. |
| `/K-Uninstall` | Uninstall Online KMS including renewal tasks |
| `/K-Server-YOURKMSSERVERNAME` | To specify a server address for activation, where YOURKMSSERVERNAME needs to be edited for server name |
| `/K-Port-YOURPORTNAME` | To specify a port for activation, where YOURPORTNAME needs to be edited for port address |
| | |
| `/S` | Run operations in silent mode (no output) |
### HWID
| Switches | Meaning |
|-------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `/HWID` | Activate with HWID |
| `/HWID-NoEditionChange` | Some editions don't support HWID, script by default change edition to nearest available to enable HWID activation. This switch can be used to stop this change. You don't need to add `/HWID` switch with this. |
### Ohook
| Switches | Meaning |
|--------------------|----------------------------------|
| `/Ohook` | Install Ohook to activate Office |
| `/Ohook-Uninstall` | Uninstall Ohook |
### TSforge
| Switches | Meaning |
|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `/Z-Windows` | Activate only Windows with TSforge |
| `/Z-ESU` | Activate only ESU with TSforge |
| `/Z-Office` | Activate only Office with TSforge |
| `/Z-ProjectVisio` | Activate only Project/Visio with TSforge |
| `/Z-WindowsESUOffice` | Activate all Windows / ESU / Office with TSforge |
| `/Z-WinHost` | Activate only Windows KMS Host with TSforge |
| `/Z-OffHost` | Activate only Office KMS Host with TSforge |
| `/Z-APPX` | Activate only 8/8.1 APPXLOB with TSforge |
| `/Z-ID-ActivationIdGoesHere` | To specify an activation ID for activation, where ActivationIdGoesHere needs to be edited for Activation ID. If you want to add multiple through parameter, pass each of them in separate parameters |
| `/Z-Reset` | Reset rearm counter, evaluation period and clear the tamper state, key lock |
### KMS38
| Switches | Meaning |
|---------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `/KMS38` | Activate with KMS38 |
| `/KMS38-RemoveProtection` | Remove KMS38 protection |
| `/KMS38-NoEditionChange` | Some editions don't support KMS38, script by default change edition to nearest available to enable KMS38 activation. This switch can be used to stop this change. You don't need to add `/KMS38` switch with this. |
### Online KMS
| Switches | Meaning |
|-------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `/K-Windows` | Activate only Windows with Online KMS |
| `/K-Office` | Activate only Office with Online KMS |
| `/K-ProjectVisio` | Activate only Project/Visio with Online KMS |
| `/K-WindowsOffice` | Activate all Windows and Office with Online KMS |
| `/K-NoEditionChange` | Some editions don't support KMS, script by default change edition to nearest available to enable KMS activation. This switch can be used to stop this change. |
| `/K-NoRenewalTask` | Whenever you run any activation, the script installs the auto-renewal task by default. To NOT auto-install renewal task with activation, use this switch. |
| `/K-Uninstall` | Uninstall Online KMS including renewal tasks |
| `/K-Server-YOURKMSSERVERNAME` | To specify a server address for activation, where YOURKMSSERVERNAME needs to be edited for server name |
| `/K-Port-YOURPORTNAME` | To specify a port for activation, where YOURPORTNAME needs to be edited for port address |
```
/S
Run operations in silent mode (no output BUT CMD Windows will still appear)
```
------------------------------------------------------------------------
@ -37,8 +69,6 @@
- Replace `/para` in this command with the switches from the above table. You can also use multiple switches. For example, `/HWID /Ohook`
- This Powershell one-liner will work on Windows 8.1 and later versions only.
- Make sure to use the below command beforehand to enable TLs1.2 on older Windows versions.
`[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12`
- To change the edition through the command line, check [here](change_windows_edition.md#manual-edition-change). We didn't automate it in MAS because it requires a reboot in some cases.
------------------------------------------------------------------------

View File

@ -2,16 +2,35 @@
The MAS project wouldn't be possible without the kind help and use of other honorable developers' tools and scripts. I would like to say thanks to all those wonderful people and projects.
| Entity | Contribution |
|-----------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [asdcorp](https://github.com/asdcorp) | [Original HWID/KMS38 methods](https://nsaneforums.com/topic/316668-microsoft-activation-scripts/page/29/#comment-1497887), Reinvented HWID after [free upgrade block](https://devicepartner.microsoft.com/en-us/communications/comm-windows-ends-installation-path-for-free-windows-7-8-upgrade), [GamersOsState](https://github.com/asdcorp/GamersOsState), [Integrated_Patcher](https://github.com/asdcorp/Integrated_Patcher_3), [Ohook](https://github.com/asdcorp/ohook), [Rearm](https://github.com/asdcorp/rearm), [Set-WindowsCbsEdition](https://github.com/asdcorp/Set-WindowsCbsEdition), [hwid-stuff](https://github.com/massgravel/hwid-stuff), [licensing-stuff](https://github.com/awuctl/licensing-stuff), [info](https://github.com/massgravel/activation), [clic](https://github.com/asdcorp/clic), branding materials and great help |
| [vyvojar](https://github.com/vyvojar) | [slshim](https://app.box.com/s/y71tpcamofcg6zv6k7by6gaex6om3q4d) |
| sponpa, leitek8 | [slc.dll Improvements](https://nsaneforums.com/topic/316668-microsoft-activation-scripts/page/21/?tab=comments#comment-1431257) |
| [AveYo](https://github.com/AveYo) | [Compressed2TXT](https://github.com/AveYo/Compressed2TXT), [LeanAndMean](https://github.com/AveYo/LeanAndMean), and great help |
| [Enthousiast](https://forums.mydigitallife.net/members/enthousiast.104688/) | ISO uploads, User support |
| [Lyssa](https://github.com/thecatontheceiling) | Official mascot, User support |
| [abbodi1406](https://github.com/abbodi1406) | [KMS_VL_ALL](https://github.com/abbodi1406/KMS_VL_ALL_AIO) (Online KMS is a fork of it), enormous help in coding and problem solving |
| [May](https://github.com/ave9858) aka Ave | Universal Ticket for HWID/KMS38, DISM Api method to change Windows edition, [CleanOffice.ps1](https://gist.github.com/ave9858/9fff6af726ba3ddc646285d1bbf37e71), User support, Co-enhancing MAS, suggestions and great help in coding and problem solving |
| [WindowsAddict](https://github.com/WindowsAddict) | MAS Author |
### Activation Methods Contributions
| Activation Methods | Contributors |
|--------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| HWID | [**asdcorp**](https://github.com/asdcorp) - [Original HWID method](https://nsaneforums.com/topic/316668-microsoft-activation-scripts/page/29/#comment-1497887), Reinvented HWID after [free upgrade block](https://devicepartner.microsoft.com/en-us/communications/comm-windows-ends-installation-path-for-free-windows-7-8-upgrade), [GamersOsState](https://github.com/asdcorp/GamersOsState), [Integrated_Patcher](https://github.com/asdcorp/Integrated_Patcher_3) <br /> [**May**](https://github.com/ave9858) - Universal Ticket for HWID <br /> [**vyvojar**](https://github.com/vyvojar) - [slshim](https://app.box.com/s/y71tpcamofcg6zv6k7by6gaex6om3q4d) (Not in use anymore) <br /> [**sponpa, leitek8**](https://nsaneforums.com/topic/316668-microsoft-activation-scripts/page/21/?tab=comments#comment-1431257) - slc.dll Improvements (Not in use anymore) |
| Ohook | [**asdcorp**](https://github.com/asdcorp/ohook) |
| TSforge | **Core Research and Development** <br /> [**WitherOrNot**](https://github.com/WitherOrNot) - Lead tool development, reverse engineering, testing <br /> [**asdcorp**](https://github.com/asdcorp) - Initial demonstrations, reverse engineering, tool development, testing <br /> [**abbodi1406**](https://github.com/abbodi1406) - Reverse engineering, development, testing <br /> [**Lyssa**](https://github.com/thecatontheceiling) - Reverse engineering, tool development, testing <br /> <br /> **Other Contributions** <br /> [**SpCreatePackaedLicense**](https://github.com/SpCreatePackaedLicense) - Tool development, testing <br /> [**May**](https://github.com/ave9858) - Code formatting, build setup <br /><br /> **Special Thanks** <br /> [**BetaWiki**](https://betawiki.net/) - Supplying and documenting beta builds used for reverse engineering <br /> [**Rairii**](https://github.com/Wack0) - Assistance with initial reverse engineering efforts |
| KMS38 | [**asdcorp**](https://github.com/asdcorp) - Original KMS38 method <br /> [**May**](https://github.com/ave9858) - Universal Ticket for KMS38 |
| Online KMS | [**WindowsAddict**](https://github.com/WindowsAddict) - Forked [abbodi1406's](https://github.com/abbodi1406) [KMS_VL_ALL](https://github.com/abbodi1406/KMS_VL_ALL_AIO) <br /><br /> **Acknowledgements** <br /> [**MDL Forums**](https://forums.mydigitallife.net/forums/51/) - The home of KMS emulators <br /> [**Hotbird64**](https://forums.mydigitallife.net/threads/50234/) - The resourceful vlmcsd tool, and KMSEmulator source development |
### MASSGRAVE R&D
| Entity | Contribution |
|---------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [asdcorp](https://github.com/asdcorp) | [[HWID/KMS38](https://nsaneforums.com/topic/316668-microsoft-activation-scripts/page/29/#comment-1497887)] [Reinvented HWID after [free upgrade block](https://devicepartner.microsoft.com/en-us/communications/comm-windows-ends-installation-path-for-free-windows-7-8-upgrade)] [[TSforge](https://github.com/massgravel/TSforge)] [[GamersOsState](https://github.com/asdcorp/GamersOsState)] [[Integrated_Patcher](https://github.com/asdcorp/Integrated_Patcher_3)] [[Rearm](https://github.com/asdcorp/rearm)] [[Set-WindowsCbsEdition](https://github.com/asdcorp/Set-WindowsCbsEdition)] [[clic](https://github.com/asdcorp/clic)] [RE and tool development] [Branding materials] [Great help] |
| [WitherOrNot](https://github.com/WitherOrNot) | [[TSforge](https://github.com/massgravel/TSforge)] [[winkeycheck](https://github.com/WitherOrNot/winkeycheck)] [[Keyhole](https://massgrave.dev/blog/keyhole)] [[warbird-docs](https://github.com/WitherOrNot/warbird-docs)] [RE and tool development] |
| [abbodi1406](https://github.com/abbodi1406) | [[TSforge](https://github.com/massgravel/TSforge)] [[CAS](https://gravesoft.dev/cas)] [[KMS_VL_ALL](https://github.com/abbodi1406/KMS_VL_ALL_AIO) (Online KMS is a fork of it)] [RE and tool development] [Enormous help and problem solving] |
| [awuctl](https://github.com/awuctl) | [[hwid-stuff](https://github.com/massgravel/hwid-stuff)] [[licensing-stuff](https://github.com/awuctl/licensing-stuff)] [[info](https://github.com/massgravel/activation)] [[MVS Dump](https://github.com/awuctl/mvs)] [RE and tool development] (Currently retired) |
| [Lyssa](https://github.com/thecatontheceiling) | [Official mascot] [[TSforge](https://github.com/massgravel/TSforge)] [RE and tool development] |
| [SpCreatePackaedLicense](https://github.com/SpCreatePackaedLicense) | [[Keyhole](https://massgrave.dev/blog/keyhole)] [RE and tool development] |
| [May](https://github.com/ave9858) | [Universal Ticket for HWID/KMS38] [DISM Api method to change Windows edition] [[CleanOffice.ps1](https://gist.github.com/ave9858/9fff6af726ba3ddc646285d1bbf37e71)] [[Keyhole](https://massgrave.dev/blog/keyhole)] [RE and tool development] [Great help] |
| [WindowsAddict](https://github.com/WindowsAddict) | MAS Author
### Other Contributions
| Entity | Contribution |
|-----------------------------------------------------------------------------|--------------------------------------------------------------------|
| [Enthousiast](https://forums.mydigitallife.net/members/enthousiast.104688/) | ISO uploads |
| [BetaWiki](https://betawiki.net/) | Supplying and documenting beta builds used for reverse engineering |
| [MDL Forums](https://forums.mydigitallife.net/forums/51/) | Helpful resources |
And thanks to the MAS users for their interest, feedback, and assistance. ❤️

View File

@ -20,7 +20,7 @@ Both versions are almost the same feature-wise. The main difference lies in the
- The evaluation version of Windows typically comes with a 90-day (180-day for Server) trial period.
- Evaluation Editions cannot be activated outside of the evaluation period.
- After the trial period, the system will start showing notifications and may shut down periodically.
- To be clear, you can not activate it with your genuine key, digital license, KMS, etc.
- To be clear, you can not permanently activate it with your genuine key, digital license, KMS, etc.
---
@ -45,7 +45,7 @@ LTSC means long-term servicing channel. Microsoft provides longer update support
- Now open the command prompt as admin and enter,
`reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v EditionID /d EnterpriseS /f`
- Go into that DVD drive and run setup.exe, continue until you reach the final confirmation screen.
- Make sure it says "**Keep all files and apps**" on the final screen. Then you can continue the process and wait until it is done.
- Make sure it says "**Keep personal files and apps**" on the final screen. Then you can continue the process and wait until it is done.
It will upgrade your eval Windows version to the full version.
</TabItem>
@ -61,7 +61,7 @@ GAC means general availability channel, aka normal version.
`reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v EditionID /d Enterprise /f`
- Go into that DVD drive and run setup.exe, enter this key if the setup is asking for it `NPPR9-FWDCX-D2C8J-H872K-2YT43`
- Continue until you reach the final confirmation screen.
- Make sure it says "**Keep all files and apps**" on the final screen. Then you can continue the process and wait until it is done.
- Make sure it says "**Keep personal files and apps**" on the final screen. Then you can continue the process and wait until it is done.
It will upgrade your eval Windows version to the full version.
</TabItem>
@ -90,12 +90,16 @@ You can repeat this process 2 times (a total of 270 days of activation).
### Reset the activation at any given time
#### Method -1
You can use TSforge option in MAS to reset the activation (trial) period at any given time.
#### Method -2
WPA registry keys at `HKEY_LOCAL_MACHINE\SYSTEM\WPA` hold the records of the trial period. By clearing this registry we can simply reset the activation (trial) period at any given time. You can follow below guide to do this.
https://gravesoft.dev/fix-wpa-registry
:::note
The eval activation for Windows 10 Enterprise LTSC 2021 is currently not working.
The eval activation for Windows 10 Enterprise LTSC 2021 is not working because of the incorrect key used by Microsoft. However, TSforge option in MAS can fix this and reset the activation (trial) period.
:::

View File

@ -83,7 +83,7 @@ Now a question, can Microsoft block the new requests or revoke already establish
:::info
- Systems in all architectures (x86, x64 and arm64) are supported.
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md).
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md) beyond the evaluation period. You can use TSforge option in MAS to reset the activation any given time.
- IoTEnterpriseS (LTSC) 2021 key will be used to activate the unsupported EnterpriseS (LTSC) 2021 edition.
- IoTEnterpriseS (LTSC) 2024 key will be used to activate the unsupported EnterpriseS (LTSC) 2024 edition.
- Windows Server does not support HWID activation.

View File

@ -6,7 +6,7 @@ sidebar_label: Intro
# Microsoft Activation Scripts (MAS)
Open-source Windows and Office activator featuring HWID, Ohook, KMS38, and Online KMS activation methods, along with advanced troubleshooting.
Open-source Windows and Office activator featuring HWID, Ohook, TSforge, KMS38, and Online KMS activation methods, along with advanced troubleshooting.
---
@ -23,19 +23,12 @@ import TabItem from '@theme/TabItem';
```
irm https://get.activated.win | iex
```
3. You will see the activation options. Choose [1] HWID for Windows activation. Choose [2] Ohook for Office activation.
4. That's all
<details>
<summary>More options</summary>
- Alternatively, you can use the following (It will be deprecated in the future.)
Alternatively, you can use the following (It will be deprecated in the future.)
```
irm https://massgrave.dev/get | iex
```
- The URL `get.activated.win` might be blocked by some DNS services because it is a new domain.
</details>
3. You will see the activation options. Choose [1] HWID for Windows activation. Choose [2] Ohook for Office activation.
4. That's all
</TabItem>
<TabItem value="Method 2" label="Method 2 - Traditional (Windows 7 and later)" default>
@ -55,6 +48,14 @@ or
---
### Not working ❓
- If you are **unable to launch MAS** using the PowerShell method, please refer to **Method 2** listed above.
- If MAS is launched and the script shows any errors, check for any troubleshooting steps mentioned in blue color and try to follow those.
- If you have any issues, please feel free to reach out to us [here](troubleshoot.md).
---
:::note
- The IRM command in PowerShell downloads a script from a specified URL, and the IEX command executes it.
@ -67,7 +68,7 @@ or
## MAS Latest Release
Last Release - v2.9 (20-Dec-2024)
Last Release - v3.0 (14-Feb-2025)
[GitHub](https://github.com/massgravel/Microsoft-Activation-Scripts) / [Azure DevOps](https://dev.azure.com/massgrave/_git/Microsoft-Activation-Scripts) / [Self-hosted Git](https://git.activated.win/massgrave/Microsoft-Activation-Scripts)
------------------------------------------------------------------------
@ -76,8 +77,9 @@ Last Release - v2.9 (20-Dec-2024)
- **HWID (Digital License)** Method to Permanently Activate Windows
- **Ohook** Method to Permanently Activate Office
- **KMS38** Method to Activate Windows/Server Till the Year 2038
- **Online KMS** Method to Activate Windows/Server/Office For 180 Days (Lifetime With Renewal Task)
- **TSforge** Method to Permanently Activate Windows/ESU/Office
- **KMS38** Method to Activate Windows Till the Year 2038
- **Online KMS** Method to Activate Windows/Office For 180 Days (Lifetime With Renewal Task)
- Advanced Activation Troubleshooting
- $OEM$ Folders For Preactivation
- Change Windows Edition
@ -91,14 +93,15 @@ Last Release - v2.9 (20-Dec-2024)
## Activations Summary
| Activation Type | Supported Product | Activation Period | Is Internet Needed? |
|:----------------|:---------------------|:-------------------------------------|:--------------------|
| HWID | Windows 10-11 | Permanent | Yes |
| Ohook | Office | Permanent | No |
| KMS38 | Windows 10-11-Server | Till the Year 2038 | No |
| Online KMS | Windows / Office | 180 Days. Lifetime With Renewal Task | Yes |
| Activation Type | Supported Product | Activation Period | Is Internet Needed? |
|:----------------|:-----------------------|:-------------------------------------|:--------------------|
| HWID | Windows 10-11 | Permanent | Yes |
| Ohook | Office | Permanent | No |
| TSforge | Windows / ESU / Office | Permanent | No |
| KMS38 | Windows 10-11-Server | Till the Year 2038 | No |
| Online KMS | Windows / Office | 180 Days. Lifetime With Renewal Task | Yes |
For more details, use the respective activation details in Docs.
For more details, use the respective activation details in Docs and [comparison chart](chart.md).
To activate unsupported products such as **Office on Mac**, check [here](unsupported_products_activation.md).
------------------------------------------------------------------------
@ -111,6 +114,8 @@ To activate unsupported products such as **Office on Mac**, check [here](unsuppo
![](/img/MAS_Ohook.png)
![](/img/MAS_TSforge.png)
![](/img/MAS_Troubleshoot.png)
![](/img/MAS_change_windows_edition.png)

View File

@ -129,7 +129,7 @@
:::info
- Systems in all architectures (x86, x64 and arm64) are supported.
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md).
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md) beyond the evaluation period. You can use TSforge option in MAS to reset the activation any given time.
- KMS38 only supports Windows/server version 14393 (1607) and newer versions.
- Initial release (19044.1288) of Iot LTSC 2021 doesn't support KMS license and it was added later in update 19044.2788.
- Server Azure Datacenter (ServerTurbine) edition does not support activation on non-azure systems.

View File

@ -1,5 +1,8 @@
# News
### [14-Feb-25] MAS 3.0 update is released
A new method "TSforge" is added, for details check [changelog](changelog.md)
### [20-Dec-24] MAS 2.9 update is released
[changelog](changelog.md)

View File

@ -66,6 +66,12 @@ To create a pre-activated Windows installation .iso, do the following:
------------------------------------------------------------------------
## TSforge
- When using TSforge activation, no files are stored on the system, and Windows / ESU / Office (preinstalled) becomes activated immediately without Internet.
------------------------------------------------------------------------
## KMS38
- When using KMS38 activation, no files are stored on the system, and Windows 10-11-Server becomes activated immediately without Internet.
@ -84,26 +90,14 @@ To create a pre-activated Windows installation .iso, do the following:
------------------------------------------------------------------------
## HWID + Online KMS
## HWID + Ohook + TSforge
- In this method, Windows 10-11 will be activated with HWID, and **Office** (Preinstalled) will be activated using Online KMS.
- In this method, Windows 10-11 will be activated with HWID, and **Office** (Preinstalled) will be activated using Ohook and Windows ESU will be activated with TSforge.
------------------------------------------------------------------------
## KMS38 + Ohook
## TSforge + Online KMS
- In this method, Windows 10-11-Server will be activated with KMS38, and **Office** (Preinstalled) will be activated using Ohook.
------------------------------------------------------------------------
## KMS38 + Online KMS
- In this method, Windows 10-11-Server will be activated with KMS38, and **Office** (Preinstalled) will be activated using Online KMS.
------------------------------------------------------------------------
## Online KMS + Ohook
- In this method, Windows-Server will be activated with Online KMS, and **Office** (Preinstalled) will be activated using Ohook.
- In this method, Windows will be activated with TSforge, and **Office** (Preinstalled) will be activated using Online KMS. This combination is best for Windows 7 because Office on Windows 7 isn't supported by TSforge.
------------------------------------------------------------------------

View File

@ -13,11 +13,11 @@
## How does it work?
![](/img/MAS-before-ohook.png)
![](/img/MAS-before-ohook.svg)
- As illustrated in the above 1st image, in the Official activation process of SPP based Office, Office asks `C:\Windows\System32\sppc.dll` about the activation status and that file asks the same thing to SPP (Software Protection Platform) `C:\Windows\System32\sppsvc.exe` and returns the message back to Office.
![](/img/MAS-after-ohook.png)
![](/img/MAS-after-ohook.svg)
- As illustrated in the above 2nd image, we modify this behavior by placing a custom `sppc.dll` file in Office folder without touching system's `C:\Windows\System32\sppc.dll` file and that custom file always returns the message that Office is activated. This is how ohook activation works.
- You can find the source code of ohook custom sppc.dll file [here](https://github.com/asdcorp/ohook).

View File

@ -353,7 +353,7 @@ If you don't want to install this renewal task, you can turn off the "Renewal Ta
## Unsupported Products
- Office MSI Retail 2010/2013, Office 2010 C2R Retail
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md).
- Any Evaluation version of Windows (i.e. 'EVAL' LTSB/C) [cannot be activated](evaluation_editions.md) beyond the evaluation period. You can use TSforge option in MAS to reset the activation any given time.
- Server Azure Datacenter (ServerTurbine) edition does not support activation on non-azure systems.
- KMS activation on Windows 7 has a limitation related to OEM Activation 2.0 and Windows marker. For more info, see [here](https://support.microsoft.com/en-us/help/942962) and [here](https://technet.microsoft.com/en-us/library/ff793426(v=ws.10).aspx#activation-of-windows-oem-computers).
- Windows editions that do not support KMS activation by design:

299
docs/tsforge.md Normal file
View File

@ -0,0 +1,299 @@
# TSforge Activation
## Overview
- How to use it? Please find the instructions [here](intro.md#download--how-to-use-it).
- This activation is permanent until a Windows reinstall or a major feature upgrade (not to be confused with small enablement upgrades or monthly cumulative updates).
- This activation method doesn't modify any Windows components and doesn't install any new files.
- Once the system is activated, hardware can be changed arbitrarily without triggering de-activation.
- Internet is not required for this method.
- This activation method can activate any of the following products if a phone license is available and licensing is managed by the system's SPP. For example,
* Windows 7 and later
* Windows Server 2008 R2 and later
* Office 2013 and later (requires Windows 8 or later)
* Windows addons (ESU, APPXLOB, etc.)
* Windows and Office KMS Hosts (CSVLK)
- Online validation (WAT) is bypassed on Windows 7.
- In addition to the permanent activation of Windows and Office KMS Hosts, it also charges the KMS server with 25 clients (required for KMS client activation) for 30 days (maximum).
- In addition to activation, it can reset the rearm count and evaluation period, clear the tamper state, and remove the evaluation key lock.
------------------------------------------------------------------------
## How does it work?
**Process on Windows 7**
![](/img/win7_color.svg)
**Process on Windows 8 and later**
![](/img/winmodern_color.svg)
- Windows activation is managed by a subsystem called the Software Protection Platform (SPP).
- SPP stores information about the activation state in files called the "physical store" and "token store".
- The physical store's contents are cryptographically protected and integrity-checked by SPPSvc/SPSys, preventing users from easily modifying it.
- The physical store is usually found at these locations:
- Windows 7 - `C:\Windows\System32\7B296FB0-376B-497e-B012-9C450E1B7327-5P-0.C7483456-A289-439d-8115-601632D005A0` and `C:\Windows\System32\7B296FB0-376B-497e-B012-9C450E1B7327-5P-1.C7483456-A289-439d-8115-601632D005A0`
- Windows 8 - `C:\Windows\System32\spp\store\data.dat`
- Windows 8.1/10/11 - `C:\Windows\System32\spp\store\2.0\data.dat`
- The token store is usually found at these locations:
- Windows 7 - `C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\tokens.dat`
- Windows 8 - `C:\Windows\System32\spp\store\tokens.dat`
- Windows 8.1/10/11 - `C:\Windows\System32\spp\store\2.0\tokens.dat`
- In normal product key installation and phone activation, associated data is written to the physical store and token store. Said phone activation data is [cryptographically checked](https://github.com/UMSKT/writeups/blob/main/PKEY2005.md) against the Installation ID before being written. When SPP relaunches, it is only given a very basic check against the current Hardware ID.
- By writing forged data directly to the physical store and token store, we can bypass both checks, causing SPP to believe it installed a fake product key and/or confirmation ID.
- To bypass checks for hardware changes, a [Hardware ID](https://github.com/massgravel/activation/blob/main/Hwid.md#hardware-id) with a threshold of 0 is included in this forged data.
- On Windows 7, the fake product key data does not contain a value known as the "Key Unique ID". This value is required for both WAT and online activation, so removing it causes both to be non-functional, preventing WAT from triggering de-activation.
- The presence of valid product key and confirmation ID data causes SPP to activate the specified product as long as it is capable of phone activation.
- This process is implemented as the ZeroCID option in [TSforge](https://github.com/massgravel/TSforge).
------------------------------------------------------------------------
## Supported Products
This activation method can activate any of the following products if a phone license is available and licensing is managed by the system's SPP.
- **Windows**
- Windows 7
- Windows 8
- Windows 8.1
- Windows 10
- Windows 11
- **Windows Server**
- Windows Server 2008 R2
- Windows Server 2012
- Windows Server 2012 R2
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
- Windows Server 2025
- **Microsoft Office** (Requires Windows 8 or later) (Also supports UWP version of Office)
- Office 2013
- Office 2016
- Office 2019
- Office 2021
- Office 2024
- **Windows Addons**
- **Commercial Extended Security Updates (ESU)**
- **Windows 7** (Enterprise, Professional, Ultimate and their E/N variants)
- **Windows 7 Embedded POSReady7** (Embedded)
- **Windows 7 Embedded Standard** (Embedded)
- **Windows Server 2008 R2** (ServerDatacenter, ServerStandard, ServerEnterprise and their V/Core/VCore variants)
- **Windows Server 2012** (ServerDatacenter, ServerStandard and their Core variants)
- **Windows 8.1** (Enterprise, Professional, EmbeddedIndustry and their E/N variants)
- **Windows Server 2012 R2** (ServerDatacenter, ServerStandard and their Core variants)
- **Windows 10** (Education, Enterprise, IoTEnterprise, Professional, ProfessionalEducation, ProfessionalWorkstation and their N variants)
- **8/8.1 APPXLOB**
- Client
- Embedded Industry
- Embedded Standard
- Server 2012
- **Others** (Can be selected from the manual option)
- OCUR
- **KMS Hosts** (CSVLK)
- Windows 7 and later
- Windows Server 2008 R2 and later
- Office 2010 and later
:::info
- All architectures (x86, x64 and arm64) are supported.
- For Windows, the script's key preference is: OEM_DM > OEM_COA_SLP > OEM_COA_NSLP > MAK > RETAIL
- For Office, the script's key preference is: OEM_COA_NSLP > MAK > RETAIL
:::
------------------------------------------------------------------------
## Unsupported Products
This activation method does not work if a phone license is not available or if licensing is not managed by the system's SPP.
- **Windows Vista / Server 2008**
- You can use these [alternative options](unsupported_products_activation.md#windows-vista) to activate.
- **Office on Windows 7**
- Its licensing is based on OSPP, not SPP.
- You can use Online KMS option in MAS to activate it.
- **Office 2010**
- Its licensing is based on OSPP, not SPP.
- You can use Online KMS option in MAS to activate it.
- **Office 365**
- Phone activation license is not available. TSforge option will install Mondo 2016 license (feature-wise equivalent to 365) instead to activate Office.
- You can use Ohook option in MAS to activate it.
- **Windows Evaluation editions** (Windows 8 / Server 2012 and later)
- Permanent activation license is not available. TSforge option will reset the evaluation period instead.
- **Windows Evaluation editions** (Windows 7 / Server 2008 R2)
- WLMS service protects the SPPSVC service and prevents it from stopping. Although permanent activation license is available, its officially not supported.
- **Server Azure Datacenter (ServerTurbine) edition**
- It does not support activation on non-azure systems.
- **Windows 10 Consumer ESU (1 Year)**
- Its licensing is based on CLIP, not SPP.
- You can activate commercial ESU for 3 years on Pro and higher level editions with TSforge.
:::info
**Windows Vista:** Unlike Windows 7, Vista SPSys constantly holds an exclusive handle to the physical store, preventing user-mode programs from writing to it. This has prevented us from adding support for it.
**OSPP based Office:** Physical store is stored in the registry in a format that has not yet been reverse engineered.
:::
------------------------------------------------------------------------
## ZeroCID / KMS4k / AVMA4k
- TSforge is included in MAS and it also has its own [standalone release](https://github.com/massgravel/TSforge).
- TSforge includes the ZeroCID / KMS4k / AVMA4k activation methods.
- KMS4k and AVMA4k are proof-of-concept methods with limitations, so we do not recommend using them.
- MAS uses the ZeroCID method only and does not include KMS4k or AVMA4k, as ZeroCID can already activate all available products permanently.
| Methods | Info |
|---------|------------------------------------------------------------------------------------------------------|
| ZeroCID | Offline permanent activation / until reinstall/feature upgrade |
| KMS4k | Offline KMS activation for over 4000 years / until reinstall/feature upgrade |
| AVMA4k | Offline AVMA activation for over 4000 years (Server 2012 R2+ only) / until reinstall/feature upgrade |
------------------------------------------------------------------------
## Windows ESU
- Microsoft offers paid [Extended Security Updates](https://learn.microsoft.com/lifecycle/faq/extended-security-updates) (ESU) for several Windows versions after their product lifecycle ends.
- You can activate the Windows ESU / Premium Assurance license using the TSforge option in MAS.
| Windows Version | Supported Editions List | ESU Period | Minimum Required Updates |
|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Windows 7 | Enterprise, Professional, Ultimate <br /> and their E/N variants | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-7) <br /> Jan 2020 to Jan 2023 <br /><br /> 4-6 Years ESU is not officially supported, <br /> but you can manually install Server 2008 R2 x64 updates until Jan 2026 | Windows 7 SP1 <br /> + <br /> KB4490628 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x86_3cdb3df55b9cd7ef7fcb24fc4e237ea287ad0992.msu) <br /> KB4474419-v3 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x86_0f687d50402790f340087c576886501b3223bec6.msu) <br /> **Reboot** <br /> KB5039339 [x64](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2024/06/windows6.1-kb5039339-x64_f62846508976a6e5325ab1dca0783f9b3a60a564.msu)-[x86](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2024/06/windows6.1-kb5039339-x86_fa942048bba2a167242451236f9daf00940588aa.msu) <br /> KB4575903 [x64](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2020/07/windows6.1-kb4575903-x64_b4d5cf045a03034201ff108c2802fa6ac79459a1.msu)-[x86](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2020/07/windows6.1-kb4575903-x86_5905c774f806205b5d25b04523bb716e1966306d.msu) <br /> KB3138612 [x64](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/updt/2016/02/windows6.1-kb3138612-x64_f7b1de8ea7cf8faf57b0138c4068d2e899e2b266.msu)-[x86](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/updt/2016/02/windows6.1-kb3138612-x86_6e90531daffc13bc4e92ecea890e501e807c621f.msu) <br /> KB5016892 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows6.1-kb5016892-x64_52b68ba8744cb47ddfcecd19238087625e1a5fbd.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows6.1-kb5016892-x86_ffb5b83149833e7f969f69e4f152fee5c1fdbc68.msu) |
| Windows 7 Embedded POSReady7 | Embedded | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-embedded-posready-7) <br /> Oct 2021 to Oct 2024 | Same as Windows 7 minus KB5016892 |
| Windows 7 Embedded Standard | Embedded | [3 years](https://learn.microsoft.com/en-us/lifecycle/products/windows-embedded-standard-7) <br /> Oct 2020 to Oct 2023 | Same as Windows 7 minus KB5016892 |
| Windows Server 2008 R2 | ServerDatacenter, ServerStandard, ServerEnterprise <br /> and their V/Core/VCore variants | [6 Years](https://web.archive.org/web/20170331081347/https://blogs.technet.microsoft.com/hybridcloud/2017/03/01/now-available-windows-server-premium-assurance-and-sql-server-premium-assurance/) with Premium Assurance License <br /> Jan 2020 to Jan 2026 | Same as Windows 7 |
| Windows Server 2012 | ServerDatacenter, ServerStandard and their Core variants | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012) <br /> Oct 2023 to Oct 2026 | KB5017221 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows8-rt-kb5017221-x64_d01e9b9b910f5f1e374bc1b89a8d00c1a97e215f.msu) <br /> KB2937636 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/crup/2014/07/windows8-rt-kb2937636-x64_29e0b587c8f09bcf635c1b79d09c00eef33113ec.msu) |
| Windows 8.1 | Enterprise, Professional, EmbeddedIndustry and their E/N variants | ESU is not officially supported, <br /> but you can manually install Server 2012 R2 (for x64) updates until Jan 2024, <br /> and Embedded 8.1 (for x86) updates until July 2023 | Build 9600.17415 <br /> + <br /> KB3021910 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2015/04/windows8.1-kb3021910-x64_e291c0c339586e79c36ebfc0211678df91656c3d.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2015/04/windows8.1-kb3021910-x86_7e70173bec00c3d4fe3b0b8cba17b095b4ed2d20.msu) <br /> KB3172614 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2016/07/windows8.1-kb3172614-x64_e41365e643b98ab745c21dba17d1d3b6bb73cfcc.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2016/07/windows8.1-kb3172614-x86_d11c233c8598b734de72665e0d0a3f2ef007b91f.msu) <br /> KB5017220 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows8.1-kb5017220-x64_d771111b22ec71560b207a6735d5ecebd47c4f38.msu)-[x86](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2022/08/windows8.1-kb5017220-x86_3134a18dac1b1fe4f656c9e25d0e4aaa75619d16.msu) |
| Windows Server 2012 R2 | ServerDatacenter, ServerStandard and their Core variants | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012-r2) <br /> Oct 2023 to Oct 2026 | Same as Windows 8.1 |
| Windows 10 | Education, Enterprise, IoTEnterprise, <br /> Professional, ProfessionalEducation, <br /> ProfessionalWorkstation and their N variants | [3 Years](https://learn.microsoft.com/en-us/windows/whats-new/extended-security-updates) <br /> Oct 2025 to Oct 2028 | Windows 10 22H2 (19045.4957) <br /> Just run Windows Update |
------------------------------------------------------------------------
## Windows KMS Host
- You can activate the Windows KMS host license using the TSforge option in MAS.
- Script will auto-select the available CSVLK with most KMS Counted IDs.
- Along with activation it will also charge the host with 25 clients which is a minimum required threshold for a working KMS host.
- With Windows KMS host, you can activate the KMS client in your network.
- This option is for the advanced users, you can check the below guides to understand more about it.
https://learn.microsoft.com/windows-server/get-started/kms-create-host
**Notes:**
- **Use this activation only when necessary.**
- On Windows 10/11, the system may randomly change the Windows edition later. This is a Windows issue and can be safely ignored.
- KMS host license causes the sppsvc service to run continuously.
------------------------------------------------------------------------
## Office KMS Host
- You can activate the Office KMS host license using the TSforge option in MAS.
- To activate an Office KMS host, you will need to download and run the installer for the appropriate license pack.
- Along with activation it will also charge the host with 25 clients for a working KMS host.
- With Office KMS host, you can activate the Office KMS client in your network.
- This option is for the advanced users, you can check the below guides to understand more about it.
https://learn.microsoft.com/office/volume-license-activation/plan-volume-activation-of-office#key-management-service-kms-activation-of-office
**Notes:**
- **Use this activation only when necessary.**
- KMS host license causes the sppsvc service to run continuously.
<details>
<summary>Office KMS Host Links</summary>
All links given below are official links hosted by Microsoft.
| Version | Link |
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------|
| Office 2010 KMS host | `https://download.microsoft.com/download/E/4/E/E4EF2B72-9F16-4D5F-9A1D-D9BE39A1C127/KeyManagementServiceHost_en-us.exe` |
| Office 2013 KMS host | `https://download.microsoft.com/download/3/4/2/342F1FEA-CCB2-4F68-A6DE-041934383C18/office2013volumelicensepack_4701-1000_en-us_x86.exe` |
| Office 2016 KMS host | `https://download.microsoft.com/download/5/E/3/5E329B97-6DC5-4AA7-9AA7-A5B5D46AF82F/office2016volumelicensepack_4324-1002_en-us_x86.exe` |
| Office 2019 KMS host | `https://download.microsoft.com/download/F/6/0/F60CA746-5F03-482D-A331-15F38FB4AACA/office2019volumelicensepack_x86.exe` |
| Office 2021 KMS host | `https://download.microsoft.com/download/8/e/e/8eef6160-396a-4c26-830d-9e2a24c00309/Office2021VolumeLicensePack_x86.exe` |
| Office 2024 KMS host | `https://download.microsoft.com/download/1/4/0/140c97ae-7360-4dfc-9ba0-5f509600a06e/Office2024VolumeLicensePack_x86.exe` |
- When prompted for a KMS host product key during installation, select "No".
- On Windows 11 24H2/Server 2025 and newer, the VBScript FoD must be enabled for these installers to work.
- Office 2019-2024 packs are only supported on Windows 8/Server 2012 and newer.
- If installing multiple license packs on the same machine, make sure to install older versions before newer versions (ex. Install Office 2016 before Office 2024).
</details>
<details>
<summary>Office 2010 KMS Host Installer Workaround</summary>
- Office 2010 license installer requires a workaround to install on Windows 10/11/Server 2016-2025:
- Run the installer, and dismiss the resulting error message.
- Launch Command Prompt as Administrator.
- If you are using 32-bit Windows, run `notepad "%programfiles%\MSECache\OfficeKMS\kms_host.vbs"`.
- If you are using 64-bit or ARM64 Windows, run `notepad "%programfiles(x86)%\MSECache\OfficeKMS\kms_host.vbs"`
- Click `Edit > Replace`.
- In the "Find" textbox type `>= "7"`, in the "Replace" textbox type `>= 1`.
- Click "Replace All".
- Save the file and close Notepad.
- If you are using 32-bit Windows, run `cscript "%programfiles%\MSECache\OfficeKMS\kms_host.vbs"`.
- If you are using 64-bit or ARM64 Windows, run `cscript "%programfiles(x86)%\MSECache\OfficeKMS\kms_host.vbs"`
</details>
<details>
<summary>Workaround to install on Non-Volume licensed Windows</summary>
- All installers normally require volume-licensed Windows, but this can be worked around as well:
- Follow the same procedure as for the above Office 2010 workaround, but replace `If isVL = False` with `If False`.
- For Office 2019-2024 packs, the installer script to edit is named after the Office version (ex. `kms_host19.vbs` for Office 2019).
</details>
------------------------------------------------------------------------
## Reset of Rearm / Timers / Tamper / Lock
- You can use this feature in TSforge option in MAS.
| Features | Info |
|----------------------------|--------------------------------------------------------------------|
| Reset Rearm Count | Reset rearm counter for infinite evaluation |
| Reset Eval Period | Reset evaluation period for infinite evaluation |
| Clear Tamper State | Clear the tamper state set due to store corruption or deletion |
| Remove Evaluation Key Lock | Remove the product key change lock set for evaluation product keys |
------------------------------------------------------------------------
## How to remove TSforge?
- This activation method doesn't modify any Windows components and doesn't install any new file. Instead, it appends data to one of data files used by Software Protection Platform.
- If you want to reset the activation status,
- In MAS script, goto Troubleshoot and apply Fix Licensing option.
- Done
------------------------------------------------------------------------
## Manual Activation
See the [TSforge README](https://github.com/massgravel/TSforge) for information on manually using TSforge.
------------------------------------------------------------------------
## Command Line Switches
- Check [here](command_line_switches.md).
------------------------------------------------------------------------
## Setup Preactivation
- Check the Extract OEM option in the MAS Extras section if you want pre-activated Windows installation.
- Read more [here](oem-folder.md).
------------------------------------------------------------------------
## Troubleshooting
- Check [here](troubleshoot.md).

View File

@ -14,19 +14,6 @@
------------------------------------------------------------------------
## Windows 7
- Download Windows 7 - [Link](windows_7_links.md)
- **Activation**
- **[MAS online KMS](intro.md) option supports Windows 7 Pro and Enterprise.**
- To activate other Windows 7 editions in,
- Non-UEFI/GPT systems - Use Windows Loader [Official thread](https://forums.mydigitallife.net/forums/windows-loader.39/) | [Mirror](https://app.box.com/s/bnchc6hten44adunlcpz9ya9j0uucfs2)
- UEFI-GPT systems - [EzWindSLIC](https://github.com/Dir3ctr1x/EzWindSLIC)
**Note:** loader/slic activators sometimes may cause the system boot issue.
------------------------------------------------------------------------
## Windows Vista
- Download Windows Vista - [Link](windows_vista_links.md)

View File

@ -9,6 +9,14 @@ Here are several solutions for you to choose from; feel free to select the one y
---
## Windows 10 ESU updates
Microsoft announced [Extended Security Updates (ESU)](https://learn.microsoft.com/en-us/windows/whats-new/extended-security-updates) where users can buy the ESU subscription to receive Windows updates. These updates will begin to roll out in November 2025.
**You can use TSforge option in MAS to activate 3 Years ESU (Oct 2025 to Oct 2028).**
---
## Windows 10 (IoT) Enterprise LTSC 2021
Microsoft releases Windows 10/11 in two servicing channels.
@ -39,7 +47,7 @@ https://gravesoft.dev/clean_install_windows
- Now open the command prompt as admin and enter,
`reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v EditionID /d IoTEnterpriseS /f`
- Now **quickly** go into that DVD drive and run setup.exe, and continue until you reach the final confirmation screen. (Don't take time at this step, otherwise it won't show an option to keep files and apps)
- Make sure it says "**Keep all files and apps**" on the final screen. Then you can continue the process and wait until it is done.
- Make sure it says "**Keep personal files and apps**" on the final screen. Then you can continue the process and wait until it is done.
That's all.
@ -50,24 +58,17 @@ That's all.
- IoT Enterprise LTSC edition ISO's are available in English language only. But don't worry, you can install Non-IoT Enterprise LTSC in another language and later install IoT Enterprise LTSC 2021 key `QPM6N-7J2WJ-P88HH-P3YRH-YY74H` to change the edition.
- LTSC editions do not have Store apps installed by default. However, if you upgrade from GAC to LTSC, all your Store apps will be retained. In contrast, if you perform a clean installation of Windows LTSC, Store apps will not be installed. For instructions on how to install them manually, please refer to this [page](windows_ltsc_links.md).
- IoT editions are [binary identical](https://learn.microsoft.com/windows/iot/iot-enterprise/Overview) to Enterprise editions. The difference is in licensing. You can use it just fine on a general-purpose device.
</details>
---
## Windows 10 ESU updates
Microsoft announced [Extended Security Updates (ESU)](https://learn.microsoft.com/en-us/windows/whats-new/extended-security-updates) where users can buy the ESU subscription to receive Windows updates. These updates will begin to roll out in November 2025.
We will update this post in the future on how you can easily get these updates for free (if you don't want to use LTSC editions).
---
## Windows 11 IoT Enterprise 24H2 / IoT Enterprise LTSC 2024
Many users choose not to use Windows 11 due to hardware limitations, such as a lack of TPM, Secure Boot, or UEFI support. While it is possible to bypass these limitations, doing so is officially unsupported and may lead to issues with future updates.
There is good news.
However, a promising alternative is available.
In 2024, Microsoft released Windows 11 IoT Enterprise 24H2 (GAC) / IoT Enterprise LTSC 2024 (LTSC) which has [relaxed hardware requirements](https://learn.microsoft.com/windows/iot/iot-enterprise/Hardware/System_Requirements?tabs=Windows11LTSC#optional-minimum-requirements).
You can officially install these Windows 11 editions without meeting the usual hardware requirements, such as TPM, Secure Boot, and UEFI, while still receiving continued support in the future.
@ -105,7 +106,7 @@ https://massgrave.dev/windows_ltsc_links
**For LTSC**
`reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v EditionID /d IoTEnterpriseS /f`
- Now **quickly** go into that DVD drive and run setup.exe, and continue until you reach the final confirmation screen. (Don't take time at this step, otherwise it won't show an option to keep files and apps)
- Make sure it says "**Keep all files and apps**" on the final screen. Then you can continue the process and wait until it is done.
- Make sure it says "**Keep personal files and apps**" on the final screen. Then you can continue the process and wait until it is done.
That's all.
@ -118,6 +119,7 @@ That's all.
- This is why IoT (24H2/2024) editions are mentioned so that you can get official support on future feature upgrades.
- LTSC editions do not have Store apps installed by default. However, if you upgrade from GAC to LTSC, all your Store apps will be retained. In contrast, if you perform a clean installation of Windows LTSC, Store apps will not be installed. For instructions on how to install them manually, please refer to this [page](windows_ltsc_links.md).
- Windows 11 24H2 / 2024 requires CPUs that support SSE4.2 and POPCNT instructions.
- IoT editions are [binary identical](https://learn.microsoft.com/windows/iot/iot-enterprise/Overview) to Enterprise editions. The difference is in licensing. You can use it just fine on a general-purpose device.
</details>

View File

@ -3,15 +3,10 @@
All download links lead to genuine files only.
- [FAQ](genuine-installation-media.md#faq)
- Which Windows 7 edition should you choose?
Most important thing we need to consider is the supported activation method.
- KMS activation (available in MAS) is safe and can be used in both MBR/GPT systems, however in some cases, Windows activation may be not be supported due to [invalid Windows marker](https://learn.microsoft.com/en-us/previous-versions/tn-archive/ff793426(v=technet.10)?redirectedfrom=MSDN#activation-of-windows-oem-computers) in BIOS.
- [Loader activation](unsupported_products_activation.md#windows-7) is not as safe as KMS and there are chances that system may face boot issues or may not activate and for GPT and MBR systems you will need to use different activators. However it provides permanent activation whereas in KMS you need to install Renewal task for lifetime activation.
- Pro edition supports KMS and Loader both, Enterprise supports only KMS and Ultimate edition supports only Loader activation.
- Personally I prefer using Windows 7 Pro with KMS activation and if I need Loader activation, I can easily use that as well without having to change my edition or ISO.
- **You can permanently activate Windows 7 with TSforge option in MAS.**
- Pro and Ultimate ISO's also contains other editions such as, Starter, Home Basic, Home Premium, Pro, Ultimate but by default they don't appear while installing Windows. You can easily choose any of them while installing and for that you need to delete or edit `sources\ei.cfg` file in the ISO.
- To get latest updates on Windows 7 install, you can use [Simplix Pack](https://blog-simplix-info.translate.goog/updatepack7r2/?_x_tr_sl=ru&_x_tr_tl=en&_x_tr_hl=nl&_x_tr_pto=sc) or [BypassESU](https://forums.mydigitallife.net/threads/bypass-windows-7-extended-security-updates-eligibility.80606/).
- Windows Embedded POSReady 7 ISO is available in English language only. You need to use language pack for other languages. It can be activated with online KMS option in MAS.
- Windows Embedded POSReady 7 ISO is available in English language only. You need to use language pack for other languages.
------------------------------------------------------------------------

View File

@ -9,7 +9,7 @@ All download links lead to genuine files only.
`Windows 8.1 Core Single Language: Y9NXP-XT8MV-PT9TG-97CT3-9D6TC`
`Windows 8.1 Pro: XHQ8N-C3MCJ-RQXB6-WCHYG-C9WKB`
`Windows 8.1 Pro N: JRBBN-4Q997-H4RM2-H3B7W-Q68KC`
- Every edition of Windows 8.1 can be activated with online KMS option in MAS.
- **Windows 8.1 can be permanently activated with TSforge option in MAS.**
- Windows 8.1 Embedded Enterprise edition doesn't come with preinstalled store apps.
------------------------------------------------------------------------

View File

@ -3,6 +3,7 @@
All download links lead to genuine files only.
- [FAQ](genuine-installation-media.md#faq)
- **Windows Server 2008 R2 and later can be permanently activated with TSforge option in MAS.**
------------------------------------------------------------------------

View File

@ -26,7 +26,7 @@ const sidebars = {
{
type: 'category',
label: 'Docs',
items: ['hwid','kms38','ohook','online_kms','command_line_switches','check_activation_status','oem-folder','change_windows_edition','change_office_edition'],
items: ['hwid','ohook','tsforge','kms38','online_kms','chart','command_line_switches','check_activation_status','oem-folder','change_windows_edition','change_office_edition'],
},
'guide_links',
'news',

BIN
static/cidtrick.mp4 Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 33 KiB

BIN
static/img/MAS_TSforge.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 74 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 56 KiB