Commit graph

2205 commits

Author SHA1 Message Date
Pete Batard
4d42b7a73a
[efi] further improve revoked UEFI bootloader reporting
* Do not report SBAT revocations unless we actually have a formal Secure Boot signed bootloader.
* Also reduce verbose log pollution by libcdio.
2024-10-10 13:37:55 +01:00
Pete Batard
5439ca8a83
[md5sum] fix md5sum computation for the setup wrapper
* Also fix a couple small memory leaks and potential NULL deref.
* Also report saved path when saving to image.
2024-10-10 13:04:58 +01:00
Pete Batard
ede52c57e6
[misc] improve revoked UEFI bootloader reporting
* Also fix SBAT not being properly parsed for PE32 executables.
* Also fix signature truncation in GetIssuerCertificateInfo() and fall back to
  returning signer data if issuer is not available (which is typically the case
  for GRUB signed bootloaders).
* Also fix status messages on user cancellation/proceeding.
2024-10-09 20:18:42 +01:00
Pete Batard
6b5837dbb5
[iso] add DBX certificate revocation validation and reporting
* This is currently only used to detect the use of 'Microsoft Windows Production PCA 2011'
  signed bootloaders.
* Because the cert is still in the process of being revoked, and Windows 11 24H2 still uses
  'Microsoft Windows Production PCA 2011' signed bootloaders by default, only report this if
  running in expert mode.
* Also fix non-reachable code in wue.c.
2024-10-09 13:21:42 +01:00
Pete Batard
fd5c366938
[wue] add experimental option to replace Windows bootloaders with the 24H2 _EX versions
* This aims at creating installation media that is compatible with systems where
  'Microsoft Windows Production PCA 2011' has been revoked.
* Doesn't work, since the bootloaders being applied by the first stage installer come
  from \sources\install.wim[#]\windows\system32\Recovery\Winre.wim[#]\Windows\Boot\
  (instead of \sources\boot.wim[#]\Windows\Boot\ as one would naturally expect) and
  Microsoft botched the ones they included there by using completely vulnerable (and
  therefore revoked) ones.
  See https://github.com/pbatard/rufus/issues/2244#issuecomment-2400380839.
* Still, I sure haven't gone through this excruciating ACL bullshit for nothing, so
  you get an experimental option, behind the expert mode curtain.
2024-10-09 00:45:12 +01:00
Pete Batard
c800448c62
[wue] add setup wrapper to add bypasses for in-place upgrades of Windows 11 24H2
* Per https://forums.mydigitallife.net/threads/win-11-boot-and-upgrade-fix-kit-v5-0-released.83724/
  Windows 11 24H2 requires new registry bypasses to be applied to perform in-place upgrade on
  non officially supported platforms, and those need to be enacted before running setup.exe.
* In order to streamline this, and because those registry bypasses require elevation, we rename
  setup.exe to setup.dll and add our own setup.exe wrapper to set the registry and then call the
  original setup.exe (through setup.dll).
* See https://github.com/pbatard/rufus/issues/2568
* Also fix some MinGW build warnings.
* Also fix the annoyance of TortoiseGit/Notepad++ altering the copyright symbol of rufus.rc.
2024-10-06 13:42:07 +01:00
Pete Batard
98a42a235f
[wue] add setup wrapper project for Windows 11 24H2 in-place upgrades 2024-10-05 20:21:47 +01:00
Pete Batard
3e840a94ce
[wue] set password not to expire when creating a local account
* Looks like using the 'net user USERNAME /logonpasswordchg:yes" might have the side effect
  of setting the main user account to expire after a few months. So to alleviate that, we'll
  just set the system policy to use passwords that never expire.
* Also clean up the PE parsing code and fix 2 Coverity warnings.
* Also fix typos, misprints and ditch the UNRELIABLE timestamp.acs.microsoft.com server.
2024-10-05 11:03:42 +01:00
Pete Batard
15c28434c0
[iso] add Microsoft SVN revocation validation and reporting
* See https://github.com/pbatard/rufus/issues/2244#issuecomment-2243661539
* Note that we don't use the GUID but the resource name for bootmgr.efi, as trying to figure
  out where the heck the relevant GUID is located in the PE code is not worth the effort.
* Also add internal fallback for sbat_level.txt if the user can't access our remote version.
* Also improve PE section lookup.
2024-10-05 01:05:55 +01:00
Pete Batard
c5d61f6696
[iso] add SBAT revocation validation and reporting 2024-10-03 20:25:19 +01:00
Pete Batard
f453dc272b
[misc] fix a potential double free and avoid nonsensical error messages
* buf could be freed twice in iso.c.
* Using HRESULT_CODE(error_code) in WindowsErrorString() could lead to "Error: SUCCESS" messages.
* Closes #2524.
* Also try to address potential issues that appear to have been seen in the wild.
2024-09-30 17:38:47 +01:00
Pete Batard
248a37e308
[cmd] fix hogger invocation for PowerShell
* Closes #2556.
* Also update issue template, dependabot frequency and signing cert references.
* Also harmonize segment addressing code in mbr.S.
2024-09-14 12:21:22 +01:00
Jakub Zieciak
0ee7d7a2c0
[loc] update Polish translation 2024-08-17 16:13:30 +01:00
Maksim Bondarenkov
07d6e07694
[iso] fix MSVC-only definition
* It should be defined for MSVC only. This fixes UCRT build.
* Closes #2540.
2024-08-17 16:10:58 +01:00
Dmytro Hissa
20881ceea6
[loc] fix the translation of 'cancel' for Ukrainian 2024-07-25 13:32:11 +01:00
Pete Batard
d5302c0bad
[misc] fix Coverity warnings
* Also use a new if_not_assert() construct where possible.
2024-07-19 13:46:42 +01:00
Pete Batard
78608c35fe
[wue] fix TimeZone option not being applied to the right parent
* Closes #2519.
* Also update MinGW's base WINVER to Windows 10.
2024-07-15 17:35:08 +01:00
Mohmed abdel-fattah
9b3c11122b
[misc] reinstate delay-loading of wininet and virtdisk DLLs
* Per #2272 and #1877, MinGW has issues when delay loading libraries, but
  it is possible to apply a workaround to alleviate them, by redefining
  DECLSPEC_IMPORT before including the corresponding headers.
* This is a bit more tricky to accomplish for virtdisk, as MinGW's windows.h
  header does include virtdisk.h on its own (rather than expect a formal
  include as MSVC does), so we have to prevent the virtdisk.h inclusion
  first, by defining a macro, and then apply our workaround.
* Per ea87573f-65ea-44a2-b4bb-ca96c0a136ab%40akeo.ie/#msg58793876
  we are hoping that this should be a temporary workaround and that the root
  cause of the issue will be fixed in binutils.
* Closes #2513.
2024-07-13 17:43:40 +01:00
Pete Batard
10d33c6658
[wue] add TimeZone to regional options replication
* Closes #2499.
2024-07-08 13:56:15 +01:00
Pete Batard
83b1e73062
[dev] add exception for Samsung uSD Card devices
* Closes #2506.
2024-07-08 13:22:37 +01:00
Pete Batard
6d29120b38
[wue] add 'Local' to the list of disallowed local account names
* Closes #2493.
* Also add 'KRBTGT' as it is mentioned at https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-default-user-accounts#default-local-accounts-in-active-directory
  along with 'Administrator' and 'Guest' and is probably disallowed too.
2024-07-08 13:13:21 +01:00
wallrik
7c6dbdc1ce
[msic] update Windows To Go docs link
* Old link is still fine, but we might as well point to the Windows 10 version.
* Closes #2511.
2024-07-08 11:01:47 +01:00
Mark Peek
6f764ab637
[dev] allow the use of FreeBSD bhyve virtual disks
* Closes #2504.
2024-07-08 10:59:48 +01:00
Pete Batard
bdff2dc45c
[core] work around Windows' moronic behaviour for mounted VHDs
* If you attempt to read past the end of a mounted VHD, not only will Windows happily
  return data that doesn't exist (instead of returning End of Disk), but it will also
  corrupt the existing data!
* So, to appease the capricious Windows gods, we now make sure that we never attempt
  to read (or write) past the boundaries of the source or target when writing images.
* This should address the last issue from #2468.
* Also set version to rufus-next and make some small improvement in winio.h.
2024-06-03 12:58:37 +01:00
Dayking Cheng
ae3c65e7f8
[loc] update Chinese Traditional translation to latest 2024-05-26 11:50:42 +01:00
Pete Batard
9551655103
Rufus 4.5 (Build 2180)
* "Yeah, well, I'm gonna go build own translations, with blackjack (Google translate), and hookers (DeepL)!"
2024-05-22 12:02:44 +01:00
Pete Batard
59fd550c46
[core] do not set the UEFI:NTFS partition to ESP type
* As usual, Microsoft products are so poorly designed that they can't deal with
  multiple instances of one thing. In this case, if the Windows installer sees
  two ESPs after you select the drive where you want to install Windows and it
  creates its own ESP there, it will fail during the "CopyinG Windows Files"
  step.
* So make sure that the UEFI:NTFS partition is *not* set to ESP type, even
  though it is really an ESP, which is something that we used to do, but that
  got reverted in 0f23c47184.
2024-05-22 09:56:38 +01:00
Hugo Carvalho
fcf5e2eede
[loc] update Portuguese (Portugal) translation to latest 2024-05-20 22:59:53 +01:00
Pete Batard
a50d390767
[ui] don't preserve the UEFI runtime validation setting between sessions
* I don't think we want to make this setting permanent for the time being as
  this may result in drawbacks like people using the UEFI Shell going through
  an unwanted MD5Sum check because they forgot to turn it off.
2024-05-20 11:08:49 +01:00
Ana Pevac
c5ade8c811
[loc] update Slovenian translation to latest 2024-05-20 10:41:46 +01:00
Костянтин Сергійович
1d4eea4926
[loc] update Ukrainian translation to latest 2024-05-16 11:11:23 +01:00
Pete Batard
e596e1a550
[loc] update Pollock to prevent an issue with Outlook and whitespaces 2024-05-14 16:49:04 +01:00
Riku Brander
49be8c34b5
[loc] update Finnish translation to latest 2024-05-14 16:36:18 +01:00
Aldis Tutins
3fdf6e121f
[loc] update Latvian translation to latest 2024-05-14 16:25:46 +01:00
a1346054
97d69d84c6
[misc] correct author's name
* Closes #2477.
2024-05-13 17:07:59 +01:00
Pete Batard
45423becd5
[vhd] fix VHDX being inadvertently saved as VHD
* Addresses the error reported in #2468.
* Also use memmove instead of memcpy where overlapping data is involved.
2024-05-12 13:06:23 +01:00
Martin Kubánik
fb43dc8957
[loc] update Slovak translation to latest 2024-05-12 12:26:17 +01:00
Roberto Boriotti
d12e845b9a
[loc] update Italian translation to latest 2024-05-12 12:14:48 +01:00
Miloš Ljubičić
236b4e60eb
[loc] update Serbian translation to latest 2024-05-11 11:40:56 +01:00
Jakub Zieciak
b2f06d746b
[loc] update Norwegian and Polish translations 2024-05-10 11:21:38 +01:00
Ben Gamer
8727d3b3f6
[loc] update Croatian translation to latest 2024-05-10 11:13:29 +01:00
Marco A. Ramirez Madrid
ef2cac008d
[loc] update Spanish translation to latest 2024-05-10 11:08:51 +01:00
Csizmadia Gábor
9476bb41ad
[loc] update Hungarian translation to latest 2024-05-10 10:47:34 +01:00
五月雨
412f1c63da
[loc] update Japanese translation to latest 2024-05-10 10:42:13 +01:00
Christos Alvanos
0c38268665
[loc] update Greek translation to latest 2024-05-10 10:39:25 +01:00
Pete Batard
03d46b3d87
[misc] silence a benign log warning
* Also update ChangeLog for 4.5 BETA.
2024-05-08 15:44:32 +01:00
Pete Batard
d0bc05077a
[misc] improve size based constants
* Make them more explicit by ensuring that they use a size suffix.
* Also improve whitespace consistency.
* Also make sure that we display the search for conflicting process message
  in the status on a search operation that may timeout.
2024-05-07 12:53:40 +01:00
Pete Batard
180a61736c
[misc] move the revoked UEFI bootloader prompt before the ISO → ESP one
* Also fix a potential buffer overflow when displaying the detailed HDD vs UFD score due to the
  safe_sprintf() macro re-evaluating the expression passed as parameter.
* Also refactor and clean up the the safe_###() macros to avoid similar issues.
* Also use FOF_NO_UI as flag for SHDeleteDirectoryExU(), which may alleviate some Alt-D errors.
2024-05-06 19:47:36 +01:00
Pete Batard
2106be0c3b
[iso] fix an assertion with mt86plus_7.00_64.grub.iso
* Also fix a couple typos in Brazilian Portuguese translation.
2024-05-06 19:39:26 +01:00
Marcos Mello
ddc7f1b89d
[loc] update Portuguese (Brazilian) translation to latest 2024-05-03 20:12:35 +01:00