ID.nl logo
Huis

Intel AMT: Waarom je nooit helemaal de baas bent over je pc

Natuurlijk wil je zelf de controle over je pc houden. Maar zelfs als je een besturingssysteem kiest dat je controle niet afneemt - zoals Linux - ben je op een dieper systeemniveau nog niet de baas over je computer. Dit dankzij Intel AMT en de bijbehorende Management Engine.

In de beginjaren van de computer was het vanzelfsprekend dat je de broncode van je besturingssysteem en software kon inzien. Dat was ook nodig, want de meeste gebruikers waren toen zelf nog ontwikkelaars. Je had daardoor heel wat controle over je computer: je kon zelf bugs fiksen en de functionaliteit uitbreiden. Universiteiten en onderzoeksafdelingen in bedrijven creëerden die programma’s en deelden ze vrijelijk, of hardwareproducenten ontwikkelden ze en verspreidden ze gratis bij hun hardware.

Beetje bij beetje verloren computergebruikers die controle. De software-industrie werd volwassen en de ontwikkelingskosten stegen. Commerciële partijen begonnen geld te vragen voor softwarelicenties los van hardware en wilden niet dat anderen hun software konden bestuderen of aanpassen. Deze zogenaamde propriëtaire software werd de norm.

Al die tijd bleef er een kleine groep idealistische gebruikers ijveren voor controle over hun pc. In de jaren 1980 en 1990 ontstonden er bewegingen die vrije software en opensource software promoten. In 1991 bracht de Finse student Linus Torvalds de Linux-kernel ter wereld en momenteel blijven gebruikers van Linux-distributies en BSD-besturingssystemen een kleine harde kern vormen van computergebruikers die bewust niet met Windows of macOS werken omdat ze de controle over hun pc willen houden.

Al die inspanningen om voor opensourcesoftware te kiezen, zetten in de praktijk geen zoden aan de dijk. De huidige pc-hardware is immers zo gesloten als wat. Elke moderne pc met het Intel-platform is uitgerust met een microcontroller, de Management Engine, die volledige controle over de pc heeft, maar onafhankelijk van de processor werkt en zonder dat de processor of je besturingssysteem er ook maar iets van ziet.

Ook het BIOS (of tegenwoordig UEFI) is in moderne pc’s niet open, net zoals de firmware van allerlei chips in je computer. Al deze gesloten componenten in pc-hardware betekenen dat je eigenlijk nooit zelf volledig de controle over je pc hebt, zelfs al draai je Linux en opensourcesoftware. Voor gebruikers die graag weten wat er op hun systeem draait, is dit een nachtmerrie. Hoe weet je of je privacy en veiligheid met zo’n systeem voldoende beschermd zijn?

Intel Management Engine

In 2006 introduceerde processorfabrikant Intel zijn Intel Management Engine. Dit is eigenlijk een volledige computer in je computer. Sinds de Core i3/i5/i7-processoren die Intel in 2009 voor het eerst uitbracht, zit de Management Engine in de Platform Controller Hub, een chip die de processor ondersteunt bij zijn taken. Alle desktopsystemen, mobiele systemen en serversystemen vanaf midden 2006 met een Intel-processor zijn uitgerust met een Management Engine.

De Management Engine bestaat uit een processorkern, cachegeheugen voor code en data, een cryptografische coprocessor, een kleine hoeveelheid rom en ram, geheugencontrollers, en zelfs een DMA-controller (direct memory access) met volledige toegang tot het werkgeheugen van je systeem. De Management Engine kan niet alleen het werkgeheugen van de computer uitlezen, maar krijgt ook de bovenste 16 Mbyte van je ram gereserveerd voor eigen gebruik. Verder heeft de Management Engine ook netwerktoegang via de ethernetcontroller van je computer, zelfs met een eigen mac-adres.

©PXimport

Het opstartprogramma van de Management Engine staat op diens interne ROM en laadt een firmwaremanifest van de SPI-flashchip van de pc. Dit manifest bevat een lijst van firmwaremodules en is cryptografisch ondertekend met een sleutel van Intel.

Als het opstartprogramma niet kan verifiëren of het manifest door die sleutel is ondertekend, weigert dit de firmware uit te voeren en wordt de Management Engine stopgezet. Het manifest bevat ook cryptografische hashes van de inhoud van de modules.

De kernel van de firmware is gebaseerd op het propriëtaire realtime besturingssysteem ThreadX van Express Logic. Tot de andere modules behoren een Java virtuele machine met Java-klassen voor cryptografie en veilige opslag, Intel Active Management Technology (AMT), Intel Boot Guard en Protected Audio Video Path of recenter Intel Insider. We gaan even kort op enkele van die laatste modules in.

Wake-on-Lan

De bekendste module van de Management Engine is Active Management Technology (AMT), dat onderdeel uitmaakt van Intels vPro-merk voor bedrijven. Het is een webserver die op de Management Engine draait en gebruikers op een afstand over een versleutelde verbinding toelaat om de pc te beheren, systeeminformatie te raadplegen en zelfs de computer uit- en in te schakelen. Dat inschakelen is zelfs mogelijk als de pc uitgeschakeld is (correcter: als die zich in de S3-slaaptoestand bevindt): die wordt dan via Wake-on-LAN gewekt. De Management Engine is immers actief zolang er stroom is.

Dat zijn heel krachtige mogelijkheden. Als er beveiligingsfouten in de Management Engine zitten, heeft dat dan ook grote gevolgen voor de veiligheid van je systeem. In 2009 al ontwikkelde Invisible Things Lab een exploit voor de Management Engine in de Intel Q35 chipset (geïntroduceerd in 2007). Ze slaagden erin om het beschermde deel RAM dat normaal gereserveerd is voor de Management Engine te remappen en daar een rootkit in te installeren.

In 2011 maakte beveiligingsonderzoeker Patrick Stewin daarvan gebruik om ter demonstratie een rootkit te installeren die alle toetsaanslagen continu registreerde en over het netwerk doorstuurde. Dat deed het door de toetsenbordbuffer in het RAM continu uit te lezen. En aangezien die rootkit op de volledig geïsoleerde Management Engine draait en niet op de processor zelf van de pc, kan antimalwaresoftware dit op geen enkele manier ontdekken.

Intel Boot Guard

Een extra Management Engine module die Intel in 2013 introduceerde in de Haswell-processoren is Intel Boot Guard. Een OEM (original equipment manufacturer) genereert dan een sleutelpaar en installeert de publieke sleutel in de processor. Die processor wil daarna dan alleen opstarten van firmware (BIOS/UEFI) die is ondertekend door de bijbehorende privésleutel, die alleen de OEM kent. Op zulke systemen is het dan onmogelijk om de firmware te vervangen door alternatieve, opensourcefirmware zoals coreboot of Libreboot. Als je zelf je pc samenstelt met een afzonderlijk moederbord en processor, heb je dit probleem overigens niet.

Minder bekend is dat de Management Engine ook een DRM-module (digital rights management) heeft voor audio en video. Vroeger heette die module Protected Audio Video Path (PAVP), maar sinds de Sandy Bridge-processoren wordt er gebruikgemaakt van Intel Insider. Deze DRM-modules werken gelijkaardig. De Management Engine ontvangt van het besturingssysteem van de processor een versleutelde mediastroom en een versleutelde sleutel, en ontcijfert de sleutel.

De Management Engine stuurt de versleutelde mediastroom dan samen met de gedecrypteerde sleutel naar de GPU, die de mediastroom met de sleutel decrypteert en afspeelt. Overigens maken ook andere modules van de Management Engine gebruik van de DRM-mogelijkheid, bijvoorbeeld om een pincode voor authenticatie op het scherm te tonen. Dat gebeurt volledig buiten het besturingssysteem om, zodat die pincode niet door software op de pc te onderscheppen is. Maar aan de andere kant betekent dit dat een rootkit in de Management Engine ook zaken op je scherm kan tonen waar je totaal geen controle over hebt.

AMD

Ben je trouwens fan van AMD? Denk dan niet dat je veilig bent voor de bedreigingen van de Management Engine. Hoewel AMD niet van Intels oplossing gebruikmaakt, bevatten alle AMD-processoren sinds 2013 een Platform Security Processor, een ARM-kern met TrustZone-technologie. De werking daarvan is helemaal anders dan die van de Management Engine, maar deze processor doet iets heel gelijkaardigs.

De Platform Security Processor is op dezelfde ‘die’ (Engels, stukje printplaat of geleidend materiaal) als de hoofdprocessor ingebakken. Ze heeft toegang tot het volledige ram, de netwerkcontrollers en alle andere op de PCI-/PCI Express-bus aangesloten apparaten. De firmware is cryptografisch ondertekend door AMD. Als deze niet aanwezig is, blijft de processor van je pc zichzelf resetten en kun je er dus niet mee werken.

In een volgend artikel kijken we naar de mogelijkheden om de Management Engine eventueel uit te schakelen, dan wel naar de manieren om uit te wijken naar andere opties.

▼ Volgende artikel
Chrome Remote Desktop: ideaal voor ondersteuning op afstand
© ER | ID.nl
Huis

Chrome Remote Desktop: ideaal voor ondersteuning op afstand

Een apparaat op afstand bedienen hoeft geen geld te kosten en is verrassend eenvoudig. Of je nu bestanden wilt openen, technische problemen wilt oplossen of meerdere toestellen wilt beheren: met Chrome Remote Desktop kan het allemaal, gratis en zonder gedoe.

De helper begint

Een groot voordeel van Chrome Remote Desktop is de brede compatibiliteit: het werkt met Windows, macOS, Linux en ChromeOS. Bovendien is het veilig – verbindingen worden versleuteld – en je hebt alleen een Chrome-browser nodig. We beginnen aan de kant van degene die op afstand toegang wilt tot een andere computer, degene die ondersteuning biedt vanaf computer A. Op computer A opent de gebruiker Chrome en surft naar https://remotedesktop.google.com. Daar verschijnen twee opties: Dit scherm delen en Verbinding maken met een andere computer. Omdat computer A support wil geven aan een extern apparaat, kiest de gebruiker voor de tweede optie. In dat scherm verschijnt een veld om een toegangscode in te geven, de code volgt zo meteen.

Degene die support geeft, gebruikt het onderste vak.

Acties voor de hulpvrager

Op computer B, de computer die toegang zal verlenen, moet de gebruiker ook in Chrome surfen naar dezelfde website. Daar kiest hij voor de optie Dit scherm delen. Voordat dat mogelijk is, moet Chrome Remote Desktop eerst worden gedownload en geïnstalleerd. De gebruiker klikt daarvoor op de ronde blauwe knop met het witte downloadpijltje. Hiermee wordt een Chrome-extensie geïnstalleerd. Na de installatie verschijnt in het vak Dit scherm delen een blauwe knop met de tekst Code genereren. Wanneer de gebruiker daarop klikt, wordt een toegangscode van 12 cijfers aangemaakt. Die code geeft hij of zij door aan gebruiker A.

Wie support krijgt, moet de code via een berichtje of telefoontje doorgeven.

Scherm delen

Op computer A geeft de gebruiker de code op in Chrome Remote Desktop. Vervolgens wacht hij tot gebruiker B bevestigt dat A toegang mag krijgen tot zijn scherm. Zodra dat is gebeurd, verschijnt het volledige bureaublad van computer B in een nieuw Chrome-venster op computer A. Door dit venster schermvullend weer te geven, kan A probleemloos handelingen uitvoeren op de pc van B. Voor de veiligheid beschikken beide gebruikers over een knop om de sessie op elk moment te beëindigen. Uiteraard is een stabiele internetverbinding noodzakelijk. Daarnaast krijgen beide partijen de melding dat ze klembordsynchronisatie kunnen inschakelen. Hiermee wordt het mogelijk om eenvoudig tekst of bestanden te kopiëren en te plakken tussen beide apparaten.

Gebruiker A krijgt het volledige scherm van B in een Chrome-venster te zien.
▼ Volgende artikel
In drie stappen je eigen video als screensaver: zo doe je dat
© ID.nl
Huis

In drie stappen je eigen video als screensaver: zo doe je dat

De tijd dat een screensaver nodig was om je computerscherm te beschermen tegen inbranden, ligt ver achter ons. Vandaag is een screensaver vooral een manier om je computer een persoonlijk tintje te geven. Met een eenvoudige tool verander je je vakantiefilmpjes of familievideo's in een levendige screensaver die je scherm vult zodra de pc even pauze neemt.

Wat gaan we doen

We laten zien hoe je met PUSH Video Wallpaper een video omzet in een screensaver. Je kiest geschikte fragmenten, stelt een afspeellijst samen en activeert de screensaver in Windows. Daarna zie je precies hoe je de tool zo instelt dat hij alleen in ruststand draait.

Lees ook: Zo maak je je eigen AI-video met Bing Video Creator

Stap 1: Download PUSH VideoWallpaper

Voordat je een video als bureaubladachtergrond instelt, is het verstandig om eerst na te denken over de juiste clips. Voor een opvallend en toch rustig effect werkt een korte video die in een lus draait meestal het best. Met PUSH Video Wallpaper kun je bovendien een afspeellijst maken zodat meerdere clips elkaar automatisch opvolgen. Deze Windows-app is eenvoudig in gebruik en levert de beste resultaten. Je kunt video's afspelen vanaf de harde schijf, maar ook geanimeerde gifs en zelfs YouTube-fragmenten zijn mogelijk. Het programma is niet gratis: een licentie voor persoonlijk gebruik kost 9,95 euro en een thuislicentie voor vijf pc's 14,95 euro. Er is wel een gratis proefversie, waarbij alleen een klein watermerk rechtsonder zichtbaar is.

De eerste stap is het downloaden van PUSH Video Wallpaper (26 MB). Na het binnenhalen installeer je de tool met het bestand VideoWallpaper_setup.exe. Aan het einde van de installatie verschijnt een pop-up met de vraag of je PUSH Video Wallpaper meteen wilt starten en of je de app ook als schermbeveiliging wilt instellen. Vink beide opties aan en klik op Voltooien.

Selecteer zeker de optie Instellen als schermbeveiliging.

Stap 2: Instellingen

Via het pictogram in het systeemvak kun je met de rechtermuisknop de instellingen openen. Klik bovenaan op het kleine voorbeeldscherm om een afspeellijst samen te stellen. Er staan standaard enkele voorbeeldvideo's klaar. Verwijder die en voeg je eigen filmpjes toe die je als screensaver wilt gebruiken. Ga vervolgens terug naar het tandwieltje en schakel de optie Start with Windows uit. Klik ten slotte op Instellen als schermbeveiliging. De ontwikkelaar gaat ervan uit dat je de tool gebruikt als video-wallpaper. De screensaverfunctie is eigenlijk een extraatje. Door het automatisch opstarten uit te schakelen, gebruik je de app uitsluitend als screensaver en niet als dynamische bureaubladachtergrond.

Voeg de filmpjes toe aan de afspeellijst.

Stap 3: Als schermbeveiliger instellen

Herstart de pc en ga naar Instellingen / Persoonlijke instellingen / Vergrendelingsscherm / Schermbeveiliging. Hier kun je dan PUSH Video Screen Saver selecteren voor schermbeveiliging.

In de Persoonlijke instellingen selecteer je PUSH Video Wallpaper als schermbeveiliger.

Je video's naar een hoger niveau tillen?

Misschien is een vlogcamera iets voor jou!