Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Purism voorziet Librem-laptops van firmware- en OS-verificatie via Heads

Het bedrijf Purism, bekend van zijn Librem-laptops en -smartphone, heeft aangekondigd dat het in samenwerking met beveiligingsonderzoeker Trammel Hudson zijn laptops gaat voorzien van firmware- en OS-verificatie via de opensourcefirmware Heads.

De samenwerking tussen Hudson en Purism was al eerder bekendgemaakt, het bedrijf meldt nu dat de integratie van Heads in zijn Librem-laptops met een trusted platform module ook daadwerkelijk is geslaagd. Dit zou gebruikers in staat moeten stellen om controle uit te oefenen over het bootproces door zelf de code te kunnen inzien en desgewenst aan te passen. Met behulp van de tpm moet het mogelijk zijn om vast te stellen of een kwaadwillende aanpassingen heeft doorgevoerd aan het systeem, bijvoorbeeld in de vorm van een rootkit.

Voor de integratie waren volgens Purism veranderingen aan het hardwareontwerp nodig, naast aanpassingen van uefi-alternatief coreboot en het besturingssysteem. De installatie van Heads is niet eenvoudig en vergt het uit elkaar halen van een laptop. Daarnaast bestaat het risico het apparaat te bricken. Is de installatie eenmaal geslaagd, kunnen gebruikers tijdens het bootproces aan de hand van een totp-code en een authenticatie-app verifiėren dat er geen aanpassingen hebben plaatsgevonden aan het systeem.

Hudson omschrijft Heads zelf als de tegenhanger van de Linux-distributie Tails. Zijn project zou in tegenstelling tot Tails van pas komen als gebruikers gegevens op het systeem zelf moeten opslaan. Hij schrijft: "Heads is een opensource custom firmware en OS-configuratie voor laptops en servers die tot doel heeft iets betere fysieke beveiliging te bieden en gegevens op het systeem te beschermen." Of deze aanpassingen nuttig zijn, hangt volgens Hudson af van het dreigingsmodel, oftewel threat model, van de individuele gebruiker. Purism ging eerder al over tot het grotendeels uitschakelen van Intels Management Engine op zijn laptops.

CCC-presentatie uit 2016 van Hudson over Heads

Door Sander van Voorst

Nieuwsredacteur

28-02-2018 • 17:03

19 Linkedin Google+

Submitter: Jelv

Reacties (19)

Wijzig sortering
Ik ben helemaal niet vies van firmware flashen, seriele verbindingen of zelfs solderen. Maar dit durf ik niet aan.
Als mijn huidige thinkpad oud en afgeschreven is, maybe....
Mooi systeem voor high security overheidssystemen.

[Reactie gewijzigd door satunya op 28 februari 2018 18:43]

Using a chip clip and a SPI programmer

Waar vind men zoiets? Met handleiding, dan.
Vrijwel alle moderne computers gebruiken een SPI flashchipje op 3.3v. Die flash chips programmeren kan met veel verschillende tools, mijn voorkeur gaat uit naar "flashrom" icm een ondersteunde programmer: https://www.flashrom.org/Supported_programmers

Coreboot is geen BIOS of UEFI vervanger, maar een programma dat de eerste init van je computer kan doen. Na die eerste init (RAM controller configureren, registers instellen e.d.) start coreboot een payload naar keuze op. Google chromebooks gebruiken vrijwel allemaal Coreboot voor deze eerste stappen. Ondersteuning voor een nieuw moederbord inbouwen betekent veel low-level informatie over je moederbord uitzoeken, mits je chipset al ondersteund is. Kijken of je moederbord ondersteund wordt kan hier: https://www.coreboot.org/Supported_Motherboards

Tijdens het compileren van Coreboot kies je de payload(s) die je bij wilt voegen. De makkelijkst te gebruiken payload is "SeaBIOS". SeaBIOS implementeert een standaard BIOS interface, waarmee je een besturingssysteem naar keuze kunt starten (Windows of Linux).

Heads is ook een payload, maar in plaats van de BIOS interface emuleren neemt het een andere weg: heads zelf is een kale Linux kernel, die na verificatie via "kexec" jumpt naar de (geverifieerde) kernel van je OS.

Erg leuk speelgoed, maar om "even" een handleiding maken waarmee je "even" coreboot op je laptop of PC zet is niet te doen.

"Handleiding" voor de liefhebbers:
(Disclaimer: voor veel systemen heb je extra stappen, zijn dingen anders en werkt onderstaande niet volledig. Handleiding komt geheel zonder garanties.)
- Kijk of je moederbord al ondersteund is. (zoniet: kijk of je chipset en super i/o chip al ondersteund zijn, dan heb je kans dat je met een maand lang avondjes klussen ondersteuning kan bouwen)
- Download Coreboot (de laatste GIT versie)
- Indien je geen Intel graphics hebt heb je waarschijnlijk de VGABIOS nodig van je grafische kaart.
- "make menuconfig"
- Kies je moederbord, voeg je VGABIOS file toe indien nodig.
- Kies SeaBIOS als payload.
- Bouw de toolchain voor jouw platform (voor intel en AMD wil je de x86 toolchain, NIET de x64 toolchain. Coreboot draait zelf altijd in 32-bit mode en start daarna je OS in 64-bit mode).
"make crossgcc-i386 CPUS=<aantal cores in je development machine>"
- Flash "build/coreboot.rom" naar de SPI flash chip

Zie ook de Coreboot wiki: https://www.coreboot.org/Welcome_to_coreboot
Zeer nuttige informatie, bedankt! De 'chip clip' waar men over spreekt is simpelweg te vinden op Ebay?
De footprint van de meeste flashchips is tegenwoordig SOIC-8 (waarin 8 staat voor het aantal pinnetjes, je hebt ook SOIC-16 chips). Clips daarvoor zijn via ebay en aliexpress heel goedkoop te krijgen ("soic 8 clip" in de zoekbalk en je vind ze...)

Naast een clip, wat in feite niets meer is dan een stukje plastic met metalen pinnetjes heb je ook nog een programmer nodig. Een programmer kan van alles zijn, zolang het maar SPI spreekt op de juiste spanning (of in sommige gevallen LPC, maar dat begint zeldzaam te worden).

Programmers komen in vele soorten en maten, ik heb zelf goede ervaringen met mijn Pickit 2 (is eigenlijk een programmer voor Microchip PIC microcontrollers) traag maar stabiel en een FT2232 gebaseerd ding uit China. Maar er bestaan nog vele andere alternatieven, voor zowel programmeer hardware als software.
HP doet dit al ongeveer 6 jaar in de zakelijke EliteBook lijn vanuit de hardware met een embedded security controller. Is ook op te rapporteren via SCCM. Alleen niet open source dus.
1. BIOS en firmware check pre-OS en gedurende het draaien van het systeem via HP Sure Start.
2. Monitort in OS of virusscanner, firewall of andere kritische toe te wijzen processen nog wel draaien (vanuit HW security controller dus) met Sure Run
3. Zet ieder browser tabblad in een aparte micro-vm via Sure Click. Vanuit diezelfde embedded security controller dus.
4. HW matige pre-OS multi-factor authenticatie vanuit weer diezelfde security controller. Dit is gebaseerd op Intel Authenticate v3. Daar heb je dan dus wel een vPro processor voor nodig.

Wij draaien met HP EliteBooks en gebruiken HP MIK SCCM plugin om dit netjes allemaal te beheren en te controleren op compliancy.
Leuk, maar het verschil is dat je die implementatie niet kunt vertrouwen.

Heads en ook coreboot zijn Vrije Software. De code van deze stukjes firmware zijn online beschikbaar en te controleren. Dat is dus niet zo bij HP's firmware.
Maar, in tegenstelling tot de closed source HP oplossing, dus ook fouten in te zoeken door kwaadwillenden.
Ja want in closed source is het onmogelijk om fouten te vinden.

https://en.wikipedia.org/wiki/Security_through_obscurity is geen oplossing.
Dat zeg ik niet.
Ik zeg alleen dat je bij open source alles tot je beschikking hebt.
Om die reden kunnen ook alle security experts er naar kijken en exploits melden of zelfs fixes aandragen. Blijft beter dan het stil houden van je zwaktes.
Kunnen ja, maar doen ze het ook?
Ja en nee, het hangt af van het project. Soms is er een bountie van de maker.of een ander project. Specifieke security dingen hebben vaak meer aandacht gekregen dan normale software. Ik zou verwachten dat hier wel goed naar gekeken is.

Het open sourcen toont ook een stukje vertrouwen: vaak is het sterkste argument om iets niet te open sourcen dat het werkt maar kwalitatief slecht is. Dat wil je natuurlijk echt horen over een security feature... NOT.

Zeker bij security features zou ik zeggen dat het naļef is om het te vertrouwen als het niet open source is. Security is moeilijk en bedrijven investeren altijd het minimum. Echte securitie is duur en als je het gesloten houd kun je met een veel lagere investering gewoon hetzelfde beloven zonder te hoeven leveren. Geen goede combinatie, zeker gezien ze natuurlijk geen garanties geven. Mooie marketing praatjes maar het blijft daar vaak bij.

En hou er rekening mee dat 99.9% van de hacks nooit publiek wordt dus goede kans dat ze er jarenlang mee weg komen. En dat weet HP ook. Dus ja, naļef.
Dan hoop ik als er AI komt om exploitable bugs te vinden wij (als open source community) ook beschikking over krijgen. :)
Volgens mij doet google dat al met ai op allerlei software van hun zelf en concurrentie. Ze geven je dan een termijn om bugs te fixen voor dat een lek gepubliceerd wordt. Soort van dwang middel om een bedrijf z'n bugs te laten fixen
dat is het hele idee.
op veel (tech) universiteiten is het onderdeel van de lessen om security issues op te sporen in opensource projecten.

juist omdat het open source is kunnen derden code controleren... en zo nodig zelf patchen. zonder op de leverancier te hoeven wachten... die er soms voor kiest om het niet of veel te laat op te lossen.

Goed voorbeeld hier van is Google die nu al een paar keer security issues heeft gevonden in microsoft software.. dat netjes melden en dan nog worden ze niet gepatched. Google kiest er voor om na een bepaalde tijd dit dan maar publiekelijk te maken zodat getroffen gebruikers in ieder geval weten dat ze kwetsbaar zijn zodat ze dan maar een soort workaround kunnen maken op een andere manier (aangezien ze zelf dus niets aan de code in kwestie kunnen aanpassen).

maw, het zijn dus juist vaak de gaten in propriėtaire software die jaren onopgemerkt blijven en misbruikt worden door blackhats... en overheden..

wat betreft die intel managent engine / ATM / bios firmware is het enge dat al heb je je hele OS dichtgetimmerd en encrypted dat derde partijen zoals Intel (en wie weet allemaal nog meer nu recentelijk de eerste exploits naar buiten zijn gekomen) ten alle tijden gewoon remote toegang hebben tot je pc.. ook al staat deze uit!

die management engine is een complete aparte microcontroller die volledige toegang heeft tot de hardware, netwerk en geheugen buiten het OS om.
Deze module is ook NIET uit te zetten tegenwoordig. Ja het kan gedeeltelijk als je heel erg technisch bent ( https://hardenedlinux.git...bridge_and_ivybridge.html ) maar het garandeert nog steeds niet dat het helemaal uit staat. En dan hebben we het nog niet eens over het propriėtaire BIOS.

als je pc aan staat is het dus mogelijk om op afstand het geheugen uit te lezen maar ook bv al het netwerk verkeer te loggen ongeacht of je een hele dikke firewall hebt geinstalleerd.
en aangezien de code van die firmware niet te in te zien is en met een sha2048 is versleuteld weet dus maar weinig mensen wat het verder allemaal nog meer kan.

dit is dus de reden dat er nu bedrijven zoals purism ontstaan die proberen een pc echt veilig te maken.

dus ja, opensource geeft je alle mogelijkheden om security holes te vinden maar het geeft je ook alle mogelijkheden om het daadwerkelijk veilig te maken dan wel te controleren of het veilig is en wat de software precies doet en dat is iets wat je never ever ooit kan bereiken met gesloten software.
Veel fouten worden ook gevonden met blackbox / fuzzing methoden. Waarbij de sources helemaal niet gebruikt worden.
Soms is een fout niet een onderdeel van een source... maar een combinatie van factoren over heel veel sources heen, en dan is fout zoeken mbv. fuzzing nog altijd makkelijker dan sources door graven.

Dus niet beschikbaar zijn van sources is geen bescherming.

Op dit item kan niet meer gereageerd worden.


Apple iPhone XS Red Dead Redemption 2 LG W7 Google Pixel 3 XL OnePlus 6T (6GB ram) FIFA 19 Samsung Galaxy S10 Google Pixel 3

Tweakers vormt samen met Tweakers Elect, Hardware.Info, Autotrack, Nationale Vacaturebank en Intermediair de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2018 Hosting door True