Blokady Sprzętowe MDM: Wykrywanie Absolute Persistence (Computrace) i Microsoft Autopilot w Audycie ITAD
Kupujesz partię poleasingowych laptopów biznesowych z wyczyszczonymi dyskami SSD (NIST 800-88) i nienagannym stanem wizualnym. Uruchamiasz świeżą instalację Windows, podłączasz przewód Ethernet i po paru sekundach wita Cię komunikat: "Zarządzane przez organizację. Wprowadź służbowy adres e-mail". Zostałeś właścicielem aluminiowego przycisku do papieru. Oto kompendium inżynieryjne mechanizmów firmware, bezpieczników ROM oraz procedur weryfikacji offline OOBE (Shift + F10) zanim urządzenie dotknie jakiejkolwiek sieci.
⚡ Błyskawiczny Triaż i Kody Błędów w SpecInfo Decoder
Zidentyfikuj kody błędów POST, flagi BitLocker TPM oraz zdarzenia systemowe BSOD/WHEA w naszym zero-trust dekoderze laboratoryjnym.
1. Krzemowe Zakotwiczenie: Jak Działają Współczesne Blokady Korporacyjne
W dobie rozproszonych flot pracowniczych i modeli Zero-Trust działy IT nie polegają już na obrazach dysków (Ghost, Clonezilla). Współczesne zarządzanie opiera się na niezmiennych tożsamościach sprzętowych zakotwiczonych w strukturze płyty głównej i w chmurze producenta systemu operacyjnego.
A. Absolute Persistence (dawniej Computrace / LoJack for Laptops)
Absolute Persistence to technologia opracowana przez firmę Absolute Software, zintegrowana w kodzie źródłowym BIOS/UEFI niemal każdego laptopa biznesowego na świecie (Dell Latitude/Precision, Lenovo ThinkPad, HP EliteBook/ProBook, ASUS ExpertBook):
- Lokalizacja w kości SPI Flash: Moduł istnieje jako sterownik DXE (Driver Execution Environment) lub Option ROM zapisany bezpośrednio w układzie scalonym pamięci flash UEFI.
- Mechanizm wstrzykiwania do systemu (Persistence Engine): Podczas każdej fazy rozruchu komputera sterownik UEFI bada partycję systemową. Przed wystartowaniem jądra Windows (
ntoskrnl.exe), moduł modyfikuje procesautochk.exelub bezpośrednio upuszcza binaria agenta do kataloguC:\Windows\System32\. - Pliki binarne agenta: W systemie Windows pojawiają się pliki
rpcnet.exeorazrpcnetp.exe, a w rejestrze tworzona jest usługaRpcnetp. Jeśli użytkownik sformatuje dysk, zainstaluje inny system lub włoży fabrycznie nowy nośnik NVMe, BIOS przy pierwszym rozruchu Windows automatycznie ponownie wgra agenta. - Zdalne sterowanie (Beaconing): Agent co kilkadziesiąt minut nawiązuje szyfrowane połączenie wychodzące z serwerami telemetrycznymi Absolute (m.in. domeny
search.namequery.comoraz*.absolute.comna portach 80 i 443). Administrator poprzedniego właściciela może zdalnie:- Wymusić natychmiastowe zablokowanie ekranu hasłem korporacyjnym,
- Zdalnie wyczyścić dysk (Remote Wipe),
- Śledzić geolokalizację urządzenia na podstawie adresów IP i punktów dostępowych BSSID.
B. Microsoft Autopilot & Entra ID (Intune Zero-Touch Deployment)
Microsoft Autopilot nie wymaga żadnego agenta w BIOS. Opiera się na unikalnej tożsamości kryptograficznej zwanej Hardware Hash (Device Hardware Data):
- Struktura Hardware Hash: Jest to ciąg znaków o długości około 4000 bajtów (zakodowany w Base64), generowany przez algorytm Microsoftu. Składa się z ponad 12 parametrów sprzętowych płyty głównej:
- SMBIOS System UUID oraz numer seryjny płyty głównej (Motherboard Serial),
- Unikalny hash klucza publicznego TPM 2.0 Endorsement Key (EKPub),
- Identyfikator procesora (CPUID, Microcode Version, Stepping),
- Adresy MAC zintegrowanych kart sieciowych,
- Identyfikatory fabrycznych kontrolerów magistrali PCI Express i dysków.
- Chmurowy Rejestr Zero-Touch Deployment (ZTD): Gdy firma kupuje komputery od dystrybutora, numery seryjne i hashe trafiają bezpośrednio do tenanta Microsoft Intune / Entra ID danej organizacji.
- Faza OOBE i zanieczyszczenie profilu: Gdy na świeżej instalacji Windows 10/11 komputer uzyska dostęp do sieci, proces
CloudExperienceHostprzesyła Hardware Hash do serweraztd.dds.microsoft.com. Jeśli urządzenie figuruje w bazie, serwer odsyła plik konfiguracyjnyAutopilotDDSZTD.json, wymuszając branding korporacyjny i logowanie domenowe.
2. Weryfikacja Absolute Persistence w Menu BIOS/UEFI
Status modułu Absolute można zweryfikować bezpośrednio w menu konfiguracyjnym UEFI. Dostęp do tej opcji nie wymaga podłączania dysków ani instalacji systemu operacyjnego.
| Stan Modułu w BIOS | Znaczenie Techniczne w Firmware | Klasyfikacja ITAD & Ryzyko |
|---|---|---|
| Activated / Enabled | Moduł jest aktywny w Option ROM. Przy każdym rozruchu wstrzykuje procesy rpcnet.exe do systemu operacyjnego i raportuje do chmury. |
KRYTYCZNE RYZYKO. Sprzęt wciąż przypisany do aktywnej subskrypcji. Bezwzględny zwrot do sprzedawcy. |
| Deactivated / Disabled | Moduł jest uśpiony. Nie wstrzykuje agenta, ale może zostać aktywowany w przyszłości zdalnie lub przez menu BIOS (jeśli nie ma hasła). | WARUNKOWO DOPUSZCZALNY. Do użytku domowego akceptowalny, lecz w audycie korporacyjnym wymaga trwałego zablokowania. |
| Permanently Disabled | Wypalony bezpiecznik logiczny w NVRAM / SPI Flash. Kod modułu został trwale odcięty od logiki rozruchowej. | ZŁOTY STANDARD ITAD. 100% bezpieczeństwa. Brak możliwości ponownej aktywacji modułu na tej płycie. |
Ścieżki dostępu do ustawień u głównych producentów:
- Dell (Latitude / Precision / OptiPlex):
Wciśnij
F2podczas startu ➔ Przejdź do:Security➔Absolute(lubComputracew starszych modelach) ➔ Sprawdź pole Absolute Status. Jeśli widnieje Enabled, płyta jest zablokowana. Jeśli wybierzesz opcję Permanently Disable, BIOS wyświetli podwójne ostrzeżenie o nieodwracalności tej operacji. - Lenovo (ThinkPad):
Wciśnij
F1podczas startu ➔ Przejdź do:Security➔Security Features➔Absolute Persistence Module. W ThinkPadach dostępne są opcje: Enabled, Disabled oraz Permanently Disabled. - HP (EliteBook / ZBook / ProBook):
Wciśnij
F10podczas startu ➔ Przejdź do:Security➔Hard Drive Tools/Automatic Drive TablelubAbsolute Software.
3. Laboratoryjny Runbook OOBE: Weryfikacja Autopilot w 100% OFFLINE (Shift + F10)
W przeciwieństwie do Computrace, stanu przypisania do Microsoft Autopilot nie da się odczytać w BIOS. Wielu techników popełnia kardynalny błąd: podłącza kabel sieciowy na ekranie wyboru języka OOBE, aby sprawdzić, "czy wyskoczy okno logowania". Jeśli komputer jest przypisany do profilu Self-Deploying Mode, w tym momencie dochodzi do nieodwracalnego pobrania profilu dzierżawy.
Oto bezpieczna, autoryzowana procedura laboratoryjna pozwalająca na inspekcję tożsamości sprzętowej bez podłączania badanego urządzenia do sieci:
Krok 1: Przygotowanie środowiska audytowego
- Uruchom komputer z czystego pendrive'a instalacyjnego Windows 10/11.
- Zainstaluj system bez wprowadzania klucza licencyjnego na dysku testowym.
- Gdy instalator zrestartuje komputer i pojawi się pierwszy ekran OOBE (wybór kraju/regionu) — NIE PODŁĄCZAJ KABLA ETHERNET ANI NIE ŁĄCZ SIĘ Z WI-FI!
Krok 2: Wywołanie konsoli diagnostycznej OOBE
Na pierwszym ekranie OOBE wciśnij kombinację klawiszy:
Shift + F10 (na laptopach z klawiszem funkcyjnym: Fn + Shift + F10)
Otworzy się okno wiersza poleceń cmd.exe z najwyższymi uprawnieniami systemowymi (NT AUTHORITY\SYSTEM). Wpisz powershell i naciśnij Enter.
Krok 3: Ekstrakcja 4K Hardware Hash bez dostępu do internetu
Wielu administratorów próbuje używać polecenia Install-Script Get-WindowsAutoPilotInfo, które kończy się błędem z powodu braku połączenia z siecią. W systemie Windows 10/11 biblioteka WMI posiada wbudowaną natywną klasę CIM zawierającą pełen Hardware Hash.
Wpisz poniższy jednolinijkowy skrypt w konsoli PowerShell, aby wyciągnąć hash i zapisać go na podłączonym pendrivie (np. napęd D:):
# Natywna ekstrakcja Hardware Hash z lokalnego repozytorium WMI / CIM (100% Offline)
$Serial = (Get-CimInstance -ClassName Win32_BIOS).SerialNumber
$Model = (Get-CimInstance -ClassName Win32_ComputerSystem).Model
$DevDetail = Get-CimInstance -Namespace root/cimv2/mdm/dmmap -ClassName MDM_DevDetail_Ext01 -Filter "InstanceID='Ext' AND ParentID='./DevDetail'"
$Hash = $DevDetail.DeviceHardwareData
Write-Host "Pomyślnie wyodrębniono tożsamość sprzętową urządzenia:" -ForegroundColor Green
Write-Host "Numer Seryjny: $Serial" -ForegroundColor Cyan
Write-Host "Długość Hardware Hash: $($Hash.Length) znaków" -ForegroundColor Yellow
# Zapis do pliku CSV zgodnego ze standardem Microsoft Intune Import
$CsvContent = "Device Serial Number,Windows Product ID,Total Hardware Hash,Group Tag,Assigned User`n$Serial,,$Hash,ITAD-Audit,"
$TargetDrive = (Get-Volume | Where-Object { $_.DriveType -eq 'Removable' -and $_.DriveLetter } | Select-Object -First 1).DriveLetter
if ($TargetDrive) {
$OutPath = "${TargetDrive}:\Autopilot_HardwareHash_${Serial}.csv"
$CsvContent | Out-File -FilePath $OutPath -Encoding ascii
Write-Host "Plik CSV został pomyślnie zapisany na nośniku zewnętrznym: $OutPath" -ForegroundColor Green
} else {
$CsvContent | Out-File -FilePath "C:\Autopilot_Hash.csv" -Encoding ascii
Write-Host "Zapisano lokalnie w C:\Autopilot_Hash.csv (Brak wykrytego nośnika USB)" -ForegroundColor Yellow
}
Krok 4: Weryfikacja Hasha na odizolowanej stacji technika
Mając zapisany plik CSV z numerem seryjnym i Hardware Hash, przenosisz pendrive na stację roboczą technika podłączoną do internetu. Stan urządzenia weryfikuje się zewnętrznie:
- W portalu korporacyjnym / Microsoft Partner Center: Technik ITAD sprawdza przez moduł PowerShell
Microsoft.Graph.DeviceManagement.Enrollment, czy dany numer seryjny jest zarejestrowany w jakiejkolwiek dzierżawie:# Sprawdzenie tożsamości urządzenia w dzierżawie Microsoft Graph Connect-MgGraph -Scopes "DeviceManagementServiceConfig.Read.All" Get-MgDeviceManagementWindowsAutopilotDeviceIdentity -Filter "serialNumber eq '$Serial'" - Weryfikacja bezpośrednia (OOBE Network Sandbox): Jeśli musisz przetestować urządzenie na żywo, podłącz je do odizolowanej sieci VLAN / Hotspotu LTE. Jeśli na ekranie OOBE pojawi się logo lub nazwa domeny obcej firmy (np.
acme-corp.com) — urządzenie natychmiast odłącz od sieci i wyłącz zasilanie.
C:\Windows\System32\Provisioning\Autopilot\AutopilotDDSZTD.json oraz w rejestrze: HKLM\SOFTWARE\Microsoft\Provisioning\AutopilotProfiles. Skasowanie tego pliku w trybie awaryjnym pozwala ominąć ekran OOBE, ale nie rozwiązuje problemu tożsamości sprzętowej w chmurze Microsoftu — każdy kolejny format spowoduje ponowne zablokowanie systemu.
4. Wykrywanie Obecności Agentów w Zainstalowanym Systemie (Windows & Linux)
Jeśli kupiłeś komputer z gotowym systemem operacyjnym, obecność Computrace oraz powiązań MDM można sprawdzić bez wchodzenia do BIOS:
A. Diagnostyka Windows PowerShell (Computrace / Absolute)
Sprawdź obecność procesów, usług systemowych i plików w katalogu System32:
# Weryfikacja obecności agenta Absolute Persistence w Windows
$Processes = Get-Process -Name "rpcnet", "rpcnetp" -ErrorAction SilentlyContinue
$Service = Get-Service -Name "rpcnetp" -ErrorAction SilentlyContinue
$Files = Get-ChildItem -Path "$env:SystemRoot\System32\rpcnet*.exe" -ErrorAction SilentlyContinue
if ($Processes -or $Service -or $Files) {
Write-Host "[!] ALARM: Na urządzeniu wykryto aktywny agent Absolute Computrace!" -ForegroundColor Red
if ($Processes) { Write-Host " -> Aktywne procesy: $($Processes.Name -join ', ')" -ForegroundColor Yellow }
if ($Service) { Write-Host " -> Usługa systemowa: $($Service.Status)" -ForegroundColor Yellow }
if ($Files) { Write-Host " -> Pliki na dysku: $($Files.FullName -join ', ')" -ForegroundColor Yellow }
} else {
Write-Host "[✓] Brak aktywnych plików i procesów agenta rpcnet w systemie." -ForegroundColor Green
}
B. Diagnostyka w środowisku Linux (Live USB)
Uruchomienie dystrybucji Linux Live (Ubuntu, Fedora, Arch) pozwala na zbadanie tablic SMBIOS oraz zmiennych NVRAM bez obawy o uruchomienie agenta Windows:
# Odczyt tablic DMI / SMBIOS pod kątem obecności flag Absolute / Computrace
sudo dmidecode -t 11 # OEM Strings (często ujawnia konfigurację Computrace)
sudo dmidecode -t 1 # Weryfikacja UUID i Serial Number
# Przeszukanie zmiennych UEFI pod kątem śladów Absolute
ls -la /sys/firmware/efi/efivars/ | grep -i -E "computrace|absolute"
5. Kompleksowa Matryca Ryzyka ITAD
Podczas klasyfikacji partii sprzętu audytor laboratoryjny musi przypisać maszynę do jednej z poniższych kategorii decyzyjnych:
| Mechanizm Zabezpieczenia | Metoda Weryfikacji | Poziom Ryzyka | Klasyfikacja ITAD & Decyzja |
|---|---|---|---|
| Microsoft Autopilot (Entra ID) | Ekstrakcja Hardware Hash w OOBE (Shift+F10) / Weryfikacja Graph API | KRYTYCZNY | Blokada ITAD. Wymagany kontakt z dostawcą w celu wyrejestrowania z tenanta. Bez tego płyta kwalifikuje się jako złom elektroniczny. |
| Absolute: Activated | Zakładka Security w BIOS / Skan procesów rpcnetp.exe |
KRYTYCZNY | Odrzucenie partii. Ryzyko zdalnego zablokowania lub roszczeń prawnych o kradzież własności korporacyjnej. |
| Absolute: Deactivated | Zakładka Security w BIOS | ŚREDNI | Warunkowo dopuszczony. Zalecane przestawienie w BIOS na stan Permanently Disabled przed wydaniem klientowi. |
| Absolute: Permanently Disabled | Zakładka Security w BIOS (eFuse blown) | ZEROWY | Grade A (Czysty). Standard laboratoryjny. Moduł jest trwale martwy. |
| Intel vPro / AMT Configured | Menu Intel MEBx (Ctrl + P podczas POST) | ŚREDNI | Wymagany Unprovisioning. Zresetuj hasło MEBx w zworkach płyty lub wykonaj procedurę MEbx Unconfigure. |
| Hasło Supervisor w BIOS | Próba wejścia do ustawień UEFI (F2 / F10 / F1) | WYSOKI | Blokada konfiguracyjna. Uniemożliwia audyt, wyłączenie Computrace i zmianę kolejności bootowania. Zwrot do dostawcy. |
6. Procedura Reklamacyjna: Jak Odzyskać Sprzęt z Blokadą Autopilot
Jeśli podczas audytu partii wykryjesz laptopy zablokowane profilem Autopilot, autoryzowany serwis producenta (Dell, Lenovo, HP) odmówi wymiany płyty głównej. Zgodnie z wytycznymi Microsoftu wymiana płyty wymaga pisemnej zgody pierwotnego właściciela korporacyjnego zarejestrowanego w bazie.
Oficjalny protokół postępowania:
- Przygotowanie raportu niezgodności: Wygeneruj plik CSV z numerami seryjnymi i sumami Hardware Hash dla wszystkich zablokowanych sztuk.
- Identyfikacja dzierżawy (Tenant Name): Wpisz próbny adres e-mail na zablokowanym ekranie logowania Windows (np.
test@firma.com). W oknie logowania wyświetli się pełna nazwa korporacji lub jej domena Microsoft Entra ID. - Wezwanie dostawcy ITAD do usunięcia urządzeń: Skontaktuj się z brokerem lub sprzedawcą partii i zażądaj przekazania raportu do działu IT firmy źródłowej. Administrator dzierżawy musi wykonać następujące czynności w konsoli Microsoft Intune:
- Wejść do: Devices ➔ Windows ➔ Windows enrollment ➔ Devices (Windows Autopilot),
- Wyszukać urządzenie po numerze seryjnym,
- Kliknąć Delete (usunięcie tożsamości Autopilot z tenanta),
- Jeśli urządzenie jest widoczne w Intune, wykonać akcję Wipe / Retire.
- Czas propagacji: Synchronizacja serwerów Microsoft Zero-Touch Deployment trwa od 15 minut do 24 godzin. Po tym czasie ponowne uruchomienie instalatora Windows i przejście przez OOBE pozwoli na bezproblemowe utworzenie konta lokalnego lub domowego konta Microsoft.
7. Podsumowanie: 5 Złotych Zasad Audytora ITAD
- Zasada 1: Zawsze sprawdzaj BIOS przed instalacją systemu: Upewnij się, że Absolute Persistence ma status Permanently Disabled lub przynajmniej Deactivated.
- Zasada 2: Zero zaufania do czystych dysków SSD: Wymiana dysku ani format NIST 800-88 nie mają żadnego wpływu na blokady Autopilot i Computrace.
- Zasada 3: Weryfikuj Autopilot wyłącznie offline: Użyj skrótu
Shift + F10w fazie OOBE i wyciągnij Hardware Hash skryptem CIM bez podłączania przewodu sieciowego. - Zasada 4: Odizoluj sieć testową: Jeśli przeprowadzasz testy weryfikacyjne na żywo, zawsze używaj odseparowanej podsieci laboratoryjnej, aby zapobiec niekontrolowanej rejestracji sprzętu w obcych domenach.
- Zasada 5: Korzystaj z narzędzi SpecInfo: Sprawdzaj specyfikację sprzętu i kody błędów za pomocą Uniwersalnego Dekodera Błędów oraz weryfikuj procedury niszczenia i sanityzacji danych na karcie Runbook A4 Card 12 (ITAD & NIST SP 800-88).