ElliotKillick / Mido

The Secure Microsoft Windows Downloader
https://elliotonsecurity.com
MIT License
533 stars 23 forks source link

[Bug] Windows 11 download returns error 403 #18

Open kroese opened 5 months ago

kroese commented 5 months ago

For a while (a month) I havent been able to download Windows 11 via Mido anymore. I can succesfully download all other versions (8, 10, etc) but not 11. It always returns HTTP error 403.

At first I thought I just had been blocked, but I tried from many different IP addresses and they all result in error 403. So I am starting to think the problem is not on my end, but some change in the query parameter format for example.

Can someone please confirm wether Win11 download is still working for them?

kroese commented 5 months ago

Possibly related: https://github.com/pbatard/Fido/issues/88#issuecomment-1932124133

kroese commented 5 months ago

I cannot reproduce this anymore.. Seems Microsoft changed something again, but at least it works now.

kroese commented 5 months ago

And the error has returned.. I still think it has something to do with https://github.com/pbatard/Fido/issues/88#issuecomment-1932124133

DLopezJr commented 4 months ago

Just tried this and I am also seeing the same 403 error code.

lj3954 commented 4 months ago

This is the same issue I found a couple of weeks ago. https://github.com/quickemu-project/quickemu/pull/1102

DLopezJr commented 4 months ago

@lj3954 I believe what you're directly referring to is the $iso_download_link variable.

Your commit in quickemu removes the truncating of the output to 512 characters.

So from this:

local iso_download_link="$(echo "$iso_download_link_html" | grep -o "https://software.download.prss.microsoft.com.*IsoX64" | cut -d '"' -f 1 | sed 's/&/\&/g' | tr -cd '[:alnum:][:punct:]' | head -c 512)"

to

local iso_download_link="$(echo "$iso_download_link_html" | grep -o "https://software.download.prss.microsoft.com.*IsoX64" | cut -d '"' -f 1 | sed 's/&/\&/g' | tr -cd '[:alnum:][:punct:]')"

I just confirmed this fixes the Windows 11 issue with Mido (by editing Line 391).

Although I do get a checksum error: (but this is most likely a separate issue?)

[!] 1 of the downloaded Windows media did NOT match the expected checksum! This means either that the media is a newer release than our current checksum (stored in Mido), was corrupted during download, or that is has been (potentially maliciously) modified! Please manually verify the Windows media before use: win11x64.iso

EDIT: Just saw @kroese pull request, which I can confirm works.