All Projects → Jamesits → Dropwpbt

Jamesits / Dropwpbt

Licence: bsd-2-clause
Disables the Windows Platform Binary Table (WPBT) in your UEFI firmware.

Programming Languages

c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to Dropwpbt

Multibootusb
Create multiboot live Linux on a USB disk...
Stars: ✭ 1,042 (+482.12%)
Mutual labels:  uefi
Tomatboot
A UEFI 64bit Bootloader
Stars: ✭ 109 (-39.11%)
Mutual labels:  uefi
Znx
Operating system manager.
Stars: ✭ 127 (-29.05%)
Mutual labels:  uefi
Vbiosfinder
Extract embedded VBIOS from (almost) any BIOS Update
Stars: ✭ 64 (-64.25%)
Mutual labels:  uefi
Uefi Jitfuck
A JIT compiler for Brainfuck running on x86_64 UEFI
Stars: ✭ 83 (-53.63%)
Mutual labels:  uefi
Tofita
🍬 All-new kernel for @GreenteaOS
Stars: ✭ 112 (-37.43%)
Mutual labels:  uefi
Secure Boot
UEFI SecureBoot for ArchLinux
Stars: ✭ 48 (-73.18%)
Mutual labels:  uefi
Sbctl
💻 Secure Boot key manager
Stars: ✭ 142 (-20.67%)
Mutual labels:  uefi
Mu plus
Microsoft Core UEFI Value
Stars: ✭ 95 (-46.93%)
Mutual labels:  uefi
Sbupdate
Generate and sign kernel images for UEFI Secure Boot on Arch Linux
Stars: ✭ 119 (-33.52%)
Mutual labels:  uefi
Uefi
Fast and lightweight yet another UEFI implementation
Stars: ✭ 79 (-55.87%)
Mutual labels:  uefi
Veracrypt Dcs
VeraCrypt EFI Bootloader for EFI Windows system encryption (LGPL)
Stars: ✭ 81 (-54.75%)
Mutual labels:  uefi
Rpi3
Raspberry Pi 3 UEFI Firmware Images
Stars: ✭ 117 (-34.64%)
Mutual labels:  uefi
Yubikey Full Disk Encryption Secure Boot Uefi
Tutorial to create full disk encryption with YubiKey, encrypted boot partition and secure boot with UEFI
Stars: ✭ 62 (-65.36%)
Mutual labels:  uefi
Build
Armbian Linux build framework
Stars: ✭ 1,827 (+920.67%)
Mutual labels:  uefi
Debootstick
Generate a bootable live image from any Debian/Ubuntu filesystem tree.
Stars: ✭ 48 (-73.18%)
Mutual labels:  uefi
Refind Minimal
A stunningly clean theme for the rEFInd UEFI boot manager.
Stars: ✭ 1,585 (+785.47%)
Mutual labels:  uefi
Mu basecore
Project mu BaseCore
Stars: ✭ 149 (-16.76%)
Mutual labels:  uefi
Lenovo Thinkpad T450 Macos Catalina
Lenovo ThinkPad T450 || macOS Catalina || Hotpatched || Broadwell || *** iMessage: [email protected] ***
Stars: ✭ 132 (-26.26%)
Mutual labels:  uefi
Liveusb Builder
A script suite to create multiboot USB stick for GNU/Linux distributions
Stars: ✭ 118 (-34.08%)
Mutual labels:  uefi

dropWPBT

Disables the Windows Platform Binary Table (WPBT) in your firmware. This program use a non-permenant, non-destructive method to remove the table from system memory, so it should be executed every time the computer is rebooted before Windows bootloader starts.

Usage

Requirements

  • amd64 architecture
  • UEFI firmware
  • disabled Secure Boot

Installation

With a 3rd-party bootloader

Put dropWPBT.efi to a location where it will be executed every time before Windows starts.

  • rEFInd: ESP:\EFI\refind\drivers_x64
  • OpenCore: ESP:\EFI\OC\Drivers
  • Clover: ESP:\EFI\CLOVER\drivers\UEFI

You can also load it using UEFI shell's startup.nsh, or even manually.

Without an external bootloader

This method is for advanced users. You need to be familiar with how UEFI works. The commands below is just for reference, do not blindly copy and paste!

dropWPBT-loader.efi can act as a bootloader itself. To install, launch a cmd.exe with Administrator privilege and type something like this:

mountvol T: /S
mkdir T:\EFI\boot
cp dropWPBT-loader.efi T:\EFI\boot\bootx64.efi
bcdedit /set {bootmgr} path \EFI\boot\bootx64.efi
mountvol T: /D

FAQ

What is WPBT?

Windows Platform Binary Table (WPBT) is an ACPI table in your firmware allowing your computer vendor to run a program every time Windows (8 or later) boots. This is a convenient method for computer vendors to force the installation of a service program or an anti-theft software, but this also means your fresh installed Windows will have potentially unwanted 3rd party programs running straight on the first boot, and you, the end user, would have no control over it. Also, firmware is not updated as frequently as your OS or software, which means if there is a security vulnerability in the WPBT-loaded program, a fair number of users might never get the update.

A lot PC vendors (Lenovo, ASUS, Huawei, etc.) are known to utilize WPBT table to run their own programs on the consumer's computer.

How to verify if my computer have a WPBT?

You can use one of the following software:

Note that they might not work if you enabled HVCI.

Alternatively you can search for C:\Windows\system32\wpbbin.exe. This program might delete itself after running so this is not a reliable evidence.

Is there any alternative methods to disable the WPBT?

From Windows

This is an undocumented feature, use it at your own risk. To disable WPBT execution from a running Windows, set the following registry key:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
"DisableWpbtExecution"=dword:00000001

How to set a registry key on the first boot before session manager starts is left as an exercise to the reader. (Hint: One possible method is to set this registry key in a WIM file using BiscuitTin/Disable-WpbtExecution.)

For more information, see sminit.c.

From a 3rd-party Bootloader

Hackintosh-oriented bootloaders such as OpenCore have their own config for deleting ACPI tables which does exactly the same thing as this program. Please see their documentation.

From the Firmware

Some vendors provide an option to disable WPBT in the firmware settings on some models.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].