1 user thanked author for this post.

Don’t get me wrong. I’ve used windows forever. I paid full price for Windows 7 way back when. Whether you buy the OS in a store or install it as a free update, the EULA is pretty clear – you don’t own the software. You may not reverse engineer it and you may not actively subvert the rights of the owner.

I don’t agree with MS’s refusal to support the newer processors, but I am not directly affected by their position. If I were, I’d probably be tempted find a work-around as well. That being said, if I can no longer support MS, it is incumbent upon me to find another software alternative. MS has clearly chosen to move away from the model where a particular OS version will be supported for 15 years with users having the choice to install updates or not.

Legally, someone will get severely spanked by the courts if they can be identified. Morally, they may go down in flames as a martyr making a social statement. In the end, we have all agreed to the terms and conditions of use even though most of us have not read them. If you can’t support the company, then you shouldn’t be running the OS. That’s a message MS will hear if we speak en mass.

Zeffy, when the MS train rounds the bend, don’t forget to get out of the way…

1 user thanked author for this post.

Because, of all you said and the underlying hack to fake out Microsoft will be exploited. The extent of which will open one’s system up to “yet to be made” malware. If I’ve thought this then you can rest assured many minds far more devious and skilled are clinking glass at the possibilities.

Where in these terms and conditions we agreed to does it give MS the right to retroactively prohibit the use of its products on certain CPU types, and to install malware that violates the obligation MS has to provide security support for ten years past the initial offering of Windows? ¬†¬† If anyone is violating the EULA, it’s Microsoft, not the people installing Windows in violation of Microsoft’s marketing plan.¬† A marketing plan is not legally binding.

There’s nothing illegal about writing a patcher to bypass the CPU restriction.¬† If you’re talking about the absurd DMCA, that only prohibits reverse-engineering DRM schemes, which the CPU lock is not. It also doesn’t violate copyright law; it’s not distributing copyrighted content without permission.¬† As for it violating the EULA’s ban on reverse-engineering the software… well, good luck enforcing that one, MS, given that the reverse-engineering in question was only done to bypass Microsoft’s own violation of the agreement in question.

It would be foolish for MS to take legal action to stop this, as this is pretty close to the ideal situation for creating a precedent limiting the scope of shrink-wrap licenses.¬† Using the kind of expansive reading of the definition of reverse-engineering that would bring it under the scope of the EULA would also call into question the validity of a great deal of other software out there.¬† The kind of sleuthing this person did to create the patcher is commonplace and is part of the normal debugging process, particularly with Microsoft’s poorly-documented APIs (that they have used in the past to give their own applications a competitive advantage over third-party applications).¬† If Microsoft did not take any legal action against the scores of software developers who have done similar things in the past, they’d have a hard time arguing it now.¬† The lack of such action thus far would indicate that MS did not view such actions as violating the contract.

MS knows that they only get the benefit of the doubt if there is any doubt.¬† They’re not going to pursue this in court… they’re not that foolish.

Here’s what I do when I inadvertently post as “anonymous”:
* Copy the text I have posted, then paste it into Notepad.
* Delete the “anonymous” post that I did.
* Login and repost, copying and pasting from Notepad.

Group "L" (Linux Mint)
with Windows 8.1 running in a VM

3 users thanked author for this post.

@mrjimphelps
Your MVP privileges allow you to delete your anonymous posting… Loungers would need to either email Woody or DM an MVP to get their anonymous posts deleted as you suggest.
That wouldn’t happen at once.

Zeffy’s patch to bypass the processor-block by MS-Windows Update is not reverse-engineering. He was just doing back-track analysis of the processor-blocking update mechanism, in order to come out with the patch that reinstalls an older wuaueng.dll file. It is not very different from uninstalling the April 2017 patches that contain the processor-blocking update.

>Legally, someone will get severely spanked by the courts if they can be identified.

No they won’t. Microsoft pulled a similar stunt back in the late 90s with Internet Explorer 4. They stated you could not remove it. Within about a year, someone had made a program that removed it, and it was actually used at a trial against Microsoft.

1 user thanked author for this post.

The problem is, settings are being reverted back to what MS wants in Win10.

Look at the app defaults. They were reset with the AU update, and they said “oh that was a goof up, we’re sorry, that was a bug.” Most people didn’t buy it. Now, apparently the CU has done/is doing the same thing.

On the few 10 machines I have, I’ve used O&O Shut Up 10.

An update or two later, and I can re-run SU10 and many of the settings are back on/enabled (when I used SU10 to turn them off/disable them).

They do what they want on their own whims. There are ways to tweak 10 to turn things off, but they’re turning them back on. They’ve done this several times now, and not just with app defaults. Basically, if you want things to “stick”, you have to re-run your scripts or apps every so often, or at least after an update. It’s like MS is playing a waiting game, figuring that people will give up first and “give in”.

2 users thanked author for this post.

I think there is a distinction to be made between disabling or removing a portion of the OS that the user chooses not to use and editing the core software to change the functionality. Ascaris mentioned a past workaround that changed bits in memory to perform a desired function. This is a distinctly different effort than hard editing a dll. MS may not be able to force a user to not disable IExplorer but they sure can (if they choose to do so) prevent someone from editing the OS to change the name to “Sucky Explorer” who then proceeds to provide a canned method for others to do the same.

Additionally, what one person does to their copy of the OS on their system is one thing. When someone begins changing the code that changes the way the product is intended to operate on many systems, in clear violation of the terms of EULA, that’s a different kettle of fish.

What all this is going to mean is a change in approach by MS. Instead of just blocking updates, those who generate a hash mismatch within the OS could easily have their Windows activation suspended for violating the EULA for example. Something easily accomplished within the existing activation module. Currently, MS is not preventing anyone from continuing to run the OS version of their choice, MS is just choosing not to offer anymore updates to those who choose not to upgrade to Win10 (a supported platform for their hardware) or optionally downgrade their CPU until such time as they choose to make a change.

A sleeping bear is not much of a threat until you poke it with a stick and it wakes up. Fundamentally changing the way something works by directly changing it is much different than externally preventing it from working as intended – Semantics and probably not going to become a major issue going forward. The subset of users affected by this particular issue is pretty small in context of the bigger reality. However, if the practice of patching Windows to defeat MS’s intent becomes widespread, we may well see a reaction from the sleeping bear and that reaction will be undoubtedly be more draconian in natgure than what we are seeing now.

I wonder why MS would even go through the effort (and the continued negative PR) to do this. Can there really be that many people putting 7 or 8 on new PCs?¬† The OEMs won’t be doing it, as they don’t have any more pre-10 licenses to sell, and most people don’t go through the effort (and additional expense) of installing a different version of Windows than the one their PC came with, and PC builders are tiny in number compared to the number who buy PCs assembled… so why would MS even bother?

If it truly is a small number of people, I can’t see how it benefits MS to call attention to how hard people are working to avoid 10 OR to how hard MS is trying to force people to use it.¬† It only makes sense if MS is seeing a relatively large number of people doing this.¬† We have seen an increase in Windows 7’s market share since the free upgrade period ended according to netmarketshare.com, and Steam has just reported the first set of monthly usage statistics yet where the share of Win 10 x64 users has dropped from last month… but still, it seems too good to be true that large numbers of people are moving to older versions of Windows.¬† It’s the only thing that has any chance of prompting MS to try something new with Windows 10, like actually making it something people want to use instead of trying to force them into it.

3 users thanked author for this post.

During MS’s aggressive GWX KB3035583 campaign against Win 7/8.1 users, ie from 29 July 2015 to 29 July 2016, Win 7/8.1 users could still easily workaround the campaign by blocking/hiding the unwanted individual updates from MS separately, eg KB2952664.
At that time, mandatory monthly Patch Rollups for Win 7/8.1 was not yet implemented, ie it was only implemented in Oct 2016 when users could no longer block/hide individual updates.

So, the workarounds for processor-blocking and GWX updates from MS are quite unlike.

While this guy did a nice job the patching of system DLL’s (Wuaueng.dll in this case) has always left a bad taste for me.¬† I found it easy just to back up the “Kaby Good” pre-April Windows Update related DLL’s (8 files for Win7) (11 files for Win8.1 but only 6 actually change) then copy them back into System32 replacing the “Kaby Bad” WU DLL’s installed by the the April updates.¬† I guess it’s just what you’ve gotten used to doing over the years.

Since both the Monthly Rollup’s¬† and the Security Only Update’s are cumulative now this is going to be a monthly ritual so ya need to be comfortable with your method.

4 users thanked author for this post.

I was always pretty confident that a product like this one would soon appear.

This patcher is very similar, from what I have read thus far, to the patchers that allow third-party themes to be used in Windows post-XP.¬† One of the theme-enabling programs is different than the rest, though– UXThemes doesn’t patch the .dll files on the hard disk.¬† It runs as a service and patches them in memory, so as long as it can still figure out which bytes to change, it may still be able to work even if the .dlls in question are replaced.

I would not be surprised to see such a thing appear for the CPU blocking.

3 users thanked author for this post.

Given MS’ penchant for taking an update and releasing it with a new version and no other underlying changes (cough WU 2952664, 2976978 cough cough) just to ‘unhide’ from WU – I would never put it past them to start putting a version iteration on their DLL’s (or something similar) which would then flag any ‘restored’ DLL’s invalid, as you mention trying to do. Absolutely would not put it past them.

1 user thanked author for this post.

The editing of a .dll file to bypass a block is not new, the problem lays in data integrity and hash algorithms, I fear MS will easily block this when you try to update windows and NOTHING will update via WU or the Catalogue.

I just hope people have saved/ backed up the original file prior to editing. I personally would not touch this with a barge-pole.

| 2x Group A- W8.1x64 | Group A+ Linux x64 Hybrid | Group B W7x64 Pro | Group W XP Pro No problem can be solved from the same level of consciousness that created IT - AE

I expect AMD is enjoying this stick poking exercise. Intel is probably disinterested. The OEMs are paying attention and probably grinning ear to ear. None of these companies will comment publicly on the situation, due to their business relationship with Microsoft, but they know they are benefiting from it. They are getting a ton of free press, they are ‘victims’ too and they have hardware that the consumers want. Consumers do not want W10 and that is Microsoft’s problem.

MS is irritated. Messing with their OS and interfering with their business strategy will illicit a response. I believe they will steer clear of the courts as they have control of the OS and a few programming changes here and there in the inaccessible regions of W7 and W8 will shut this down. MS would benefit from leaving it alone, but they see it as an affront and will act accordingly.

Consumers have taken a stand and that in itself sent a message. MS received it as static on the line.

5 users thanked author for this post.

I believe the response from people like the author of this patcher would be “challenge accepted.”¬† MS was not able to block hacks that bypass WAT in 7 and Vista or WGA in XP, and the stakes were higher then (assuming they see piracy as being worse than installing 7 or 8 on a Kaby or Ryzen system).¬† They did make sufficient changes to block such hacks in the next version of Windows (Windows 8, in this case), but retrofitting such protection into an existing product (for whatever reason) has thus far not worked for MS, in Windows terms at least.

Similarly, Hackintoshes still exist, even though the entire OS was designed only to run on Apple-branded hardware.

I personally would not have any problem running a patcher like this (provided I was convinced it does what it is meant to and is not a vehicle for malware, but that stipulation applies to every program I install or run).

Many of us use custom themes, and before the UxThemes service became available (and its provider even warns that it may be buggy on 8+), patching .dlls was the only way to make it work, since MS decided to block harmless third-party themes (presumably because of branding issues).

To me, it’s just code, and it either does what I need or it does not, and with the block in place, it would not (if I had one of the platforms in question).¬† There’s nothing any more risky about running something like this (in terms of malware) than installing any other program you downloaded– the installer can do pretty much anything it wants, so if the program is untrusted, you could be in trouble whether or not the program modifies stock files.¬† Lots of stuff gets installed with kernel-mode drivers, and they have the keys to the kingdom too… it means we have to be careful with what we install, but it also means that the things we DO choose to install can be very powerful.

If the concern is the possible corruption of system files rendering the system unbootable… it could happen, but it’s not the end of the world.¬† System restore would bring it back, and if that failed (as it usually does on my systems where I have EFS enabled), there’s always backups (which I presume everyone concerned about their system’s continued usability already has, wink wink).

All of the theme enabling patchers I’ve tried have included uninstallers that restore the regular files upon demand, and I would expect this patcher (or if not, a revision to come soon) to include something like that too.¬† If it doesn’t, though, it’s still no big deal– a /sfc scannow will restore the originals.

1 user thanked author for this post.

Here‚Äôs what I do when I inadvertently post as ‚Äúanonymous‚ÄĚ: * Copy the text I have posted, then paste it into Notepad. * Delete the ‚Äúanonymous‚ÄĚ post that I did. * Login and repost, copying and pasting from Notepad.

I didn’t have the text available once it was submitted, and until the anon post was approved, I can’t copy and paste it.¬† I haven’t seen a delete option for anonymous posts either… how does that verify a non-logged-in user is the same as the poster?¬† Cookies?¬† IP addy?

On The Register, there is a simple checkbox to post anonymously (they call them “Anonymous Cowards,” in the typically snarky Reg manner).¬† That would be great if it can be done here.

‚ÄúSince both the Monthly Rollup‚Äôs and the Security Only Update‚Äôs are cumulative now this is going to be a monthly ritual so ya need to be comfortable with your method.‚ÄĚ @viperjohn‚Ä¶ that statement is not correct. The Security Only Updates are NOT cumulative, they need to be installed sequentially.

Yeah I got the cumulative on the “Security Only Updates” wrong but you can bet that all future “Security Only Updates” will include the bits that block Windows Updates to Kaby/Ryzen – Win7/8.1 setups.

Next patch tuesday will most likely have newer WUA version (to solve that AMD Carizzo thing)
and running SFC check will revert to original file

i think a more “professional” would not be hard to create/implement
e.g. using in-memory patcher without altering actual WUA files
and it’s possible to get use of well-known Windows feature to redirect Wuaueng.dll through registry
“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options”

2 users thanked author for this post.

Next patch tuesday will most likely have newer WUA version (to solve that AMD Carizzo thing) and running SFC check will revert to original file.

I wonder how that patch, if it comes, is going to be installed on a AMD Carrizo system (and other reportedly wrongly blocked systems as well) when Windows Update is completely blocked from downloading and installing updates and .msu update files from the Catalog are also blocked from installing.

1 user thanked author for this post.

On Github Zeffy already writes “I realize these scripts are not that user friendly. When I made them, I never anticipated this project blowing up like it has.

So moving forward, I’m going to look into simplifying the process, possibly with some kind of Windows service that can patch wuaueng.dll in memory without actually modifying any system files, much like how UxStyle works. This would be much safer and also enable other possibilities that would otherwise be impractical with the xdelta/batch script setup I have now.

If any of you have any ideas regarding this or want to help, feel free to comment!”

Is this similar to your idea? > seems to be going in your direction if you read Titokhan’s comment there (or was that you ūüėČ

I expect AMD is enjoying this stick poking exercise. Intel is probably disinterested. The OEMs are paying attention and probably grinning ear to ear.

I would bet that behind closed doors AMD, Intel and OEM’s are p***** off to the max with Microsoft over this tying of Kaby and Ryzen CPU’s to Windows 10.¬† Face it MS can barely give Win10 away now (and you can still “upgrade” for free) let alone sell it to anyone including business/enterprise.¬† Just the Corps I worked for\with over the years won’t touch Win10 with a 20′ pole (and thats at least a million+ copies).¬† That translates into reduced/poor sales of New Gen CPU’s and OEM boxes which translates into reduced profits which translates into p***** off investors which makes top management very nervous!!!

Look at zeffy’s Issues page and read the comments. It appears that not only are others offering their help, but also that zeppy is familiar with their suggestions. This would appear to bode well for the Zeppy Team to be able to stay one step ahead of Microsoft, or at least to be able to quickly develop new solutions.

Before the script, checking updates with Windows Update generated an instant “Unsupported hardware” message and .msu patches from the Catalog were blocked from installing.

After running the script (it detected I had KB4015546 installed), Windows Update gave me a list of updates when asked to check, no more “Unsupported hardware” message. I was also able to install .msu patches such as KB4014661.

So the script appears to work, at least on my spoofed Kaby Lake virtual machine.

2 users thanked author for this post.

Do you have a link or instructions how to spoof a CPU in VMware? I believe MrBrian has given instructions for spoofing Kaby Lake within VirtualBox, but I am using VMware Player (I do not know whether spoofing is possible at all in Player).

Do you have a link or instructions how to spoof a CPU in VMware? I believe MrBrian has given instructions for spoofing Kaby Lake within VirtualBox, but I am using VMware Player (I do not know whether spoofing is possible at all in Player).

Basically, you open your virtual machine’s vmx file using Notepad and add the lines I have indicated in the second link (there was a slight error in the first link). I use VMware Workstation 10.0.5 myself (the corresponding VMware Player version would be 6.0.5), and if you are using a similar or newer version I believe it should work.

1 user thanked author for this post.

I expect AMD is enjoying this stick poking exercise. Intel is probably disinterested. The OEMs are paying attention and probably grinning ear to ear.

I would bet that behind closed doors AMD, Intel and OEM‚Äôs are p***** off to the max with Microsoft over this tying of Kaby and Ryzen CPU‚Äôs to Windows 10. Face it MS can barely give Win10 away now (and you can still ‚Äúupgrade‚ÄĚ for free) let alone sell it to anyone including business/enterprise. Just the Corps I worked for\with over the years won‚Äôt touch Win10 with a 20‚Ä≤ pole (and thats at least a million+ copies). That translates into reduced/poor sales of New Gen CPU‚Äôs and OEM boxes which translates into reduced profits which translates into p***** off investors which makes top management very nervous!!!

Who knows what deals were or may have been done behind closed doors. Yet you may very well be right about AMD’s and Intel’s CEOs now and possibly becoming p***** off — once they realize that their product sales are being hurt by consumers who refuse to upgrade to the “Windows 10 Hyperbole Advertising and Telemetry Operating System” (WHATOS) which is continually riddled with bugs and features which may or may not work in the future after either minor or major updates are installed. The hyperbole part comes from Microsoft’s repeated hyperbolic advertising claims, before Windows 10 was released to OEM, that Microsoft was going to make Windows 10 the operating system which we consumers wanted. Yeah, right. Windows 10 has turned out to be anything but this since so many suggestions from testers were ignored by Microsoft. Yet on the bright side, at least we still have a Start button!

Many people rightfully complain that WHATOS appears to be forever stuck in a beta stage. I disagree. Instead I say that WHATOS, with each major update, reverts to alpha stage since things always get broken with each major update! After each major update, WHATOS once again reaches the beta stage once new minor updates are installed in order to fix broken functionality within WHATOS. All except two of two dozen computers in our office run Windows 7. The two other computers run Windows 10. Those two brand new computers which run Windows 10 frequently are unstable and result in lost work.

Are you all getting my pun? WHATOS is What Operating System? What Windows 10 can do today may not work tomorrow after installing minor or major updates for Windows 10! Yes, we consumers now are Microsoft’s beta testers for Windows 10! Windows 10 has nowhere the reliability of Windows 7 as an operating system for use on production machines. This is just one reason, of many, why Windows 7 is very much alive and well in business environments.

4 users thanked author for this post.

Yep, it’s courageous companies that decide to alienate a billion or so users of Windows 7 and 8.1.

Perhaps a helpful tweet and Facebook message to Intel and AMD would help them come to their senses. Something like… “No Kaby Lake/Ryzen support for Windows 7/8.1 = NO Kaby Lake/Ryzen CPUs for me! Enjoy the drop in sales!”

Hanlon's Razor: Never attribute to malice that which can be adequately explained by stupidity.

1 user thanked author for this post.

Yep, it‚Äôs courageous companies that decide to alienate a billion or so users of Windows 7 and 8.1. Perhaps a helpful tweet and Facebook message to Intel and AMD would help them come to their senses. Something like‚Ä¶ ‚ÄúNo Kaby Lake/Ryzen support for Windows 7/8.1 = NO Kaby Lake/Ryzen CPUs for me! Enjoy the drop in sales!‚ÄĚ

It is not so simple.¬† AMD and Intel most likely now find themselves in quite a quandary. Do they acknowledge that Microsoft is hurting their sales of newer processors since Microsoft has decided to only support these newer processors under the Windows 10 operating system which many people do not want or like, due to Windows 10’s unreliability, deeply embedded telemetry, and Windows 10’s built-in advertising?

This is a double edged sword.

One side of the sword: AMD and Intel promote their new CPUs as only Windows 10 Compatible. Yet this doesn’t work for the plethora of users who refuse to upgrade to the Windows 10 Advertising and Telemetry Operating System which is unreliable in terms of stability and functionality.

On the other side of the sword: AMD and Intel could take Microsoft to task in order to force Microsoft to support their new CPUs for the Windows 7 and 8.1 operating systems. The problem is this is that Microsoft has vowed to discontinue providing support after Microsoft’s stated end-of-life dates for these older Windows operating systems. In other words, by the time any such lawsuit on behalf of either AMD or Intel is decided, then it likely that Microsoft support for Windows 7 and Windows 8.1 will have already ended.

AMD and Intel are completely beholden to Microsoft’s sledge hammer policies. Neither can fight Microsoft in court since a court battle would last for years and would cost millions. Not only that, Microsoft ALWAYS appeals most lower court decisions in order to drag things out for years.

So at the end of the day, I don’t see either AMD or Intel doing anything other than taking a “suck it up and move forward” attitude and praying that Microsoft doesn’t take down the entire PC industry in Microsoft’s attempts to be a major player in the cell phone and advertising industries.

I will put it another way, based on Microsoft’ long history:

It takes Microsoft three (3) years to finally realize that they have been beating a dead horse with a stick and to no avail.

You all can quote me on that.

2 users thanked author for this post.

Now that we’ve covered the ethics and practical issues surrounding this patch, let’s ask ourselves two things:

As has already been asked, can Microsoft render this patch unusable with future MS Updates or changes to the updates mechanism in Windows? Related — Can unethical hackers turn this patch into a malware delivery system?

Second issue set — DRIVERS — Even if the processor can accept MS Updates for previous OS versions, this does not mean the hardware associated with these systems has Windows 7 or 8.1 drivers available. Has anyone looked into whether manufacturers of these systems will continue to issue drivers and driver updates which will allow older OS versions to work? Related, firmware and firmware updates — will these also be made available for the older Windows versions?

Hardware can only run an OS version for which firmware and drivers are available. Keeping MS Updates available is thus only part of the equation.

Very interesting read (even though it’s somewhat over my head and not fully digested, yet). Basically he dug through the recent patches, found where things are changed to lock out CPU’s, and reverse-engineered a way to patch the files so that you can then update your machine again.

Solutions

IsCPUSupported(void) is only ever called by IsDeviceServiceable(void), which is called by five other functions. Luckily, there are a couple easy ways to kill this CPU check.

Patch wuaueng.dll and change dword_600002EE948 (see this line) which is at file offset 0x26C948, from 0x01 to 0x00. This makes IsDeviceServiceable(void) jump over its entire body and return 1 (supported CPU) immediately. This is my preferred method. Note: these offsets are only for the Windows 7 x64 version.

Patch wuaueng.dll and nop out all the instructions highlighted here in IsDeviceServiceable(void), this will enable the usage of the ForceUnsupportedCPU of type REG_DWORD under the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Test\Scan (you will most likely have to create this registry key). Set this value to 0x00000001 to force unsupported CPUs, and back to 0x00000000 to change the behaviour back to default. You will probably need to restart your PC or restart the wuauserv service in order for changes to apply. This behaviour is undocumented and could be removed in future updates.

Caveats

The only downside of these solutions is you have to apply a new patch whenever wuaueng.dll gets updated.