Linux en veilig opstarten. Een fout die we niet kunnen herhalen

Linux en veilig opstarten

In de artículoenvio anterieure Ik herinnerde me een precedent met de eis van Microsoft om de module TPM-versie 2 te vereisen om Windows 11 te kunnen gebruiken. Ik verwijs naar de eis dat computers met vooraf geïnstalleerde Windows 8 UEFI gebruiken in plaats van BIOS voor de bootloader en dat de Secure Boot-module was voorgeïnstalleerd.  Nu ga ik het hebben over de, naar mijn mening, verkeerde manier waarop Linux met het probleem omging.

Linux en veilig opstarten

Secure Boot vereist dat elk programma dat wordt gestart een handtekening heeft die de authenticiteit ervan garandeert, opgeslagen in de database van het niet-vluchtige geheugen van het moederbord. Er zijn twee manieren om in die database te verschijnen. Of het nu wordt meegeleverd door de fabrikant of wordt meegeleverd door Microsoft.

De oplossing die wordt bereikt door sommige Linux-distributies met Microsoft was dat dit bedrijf de handtekening accepteerde van een binair bestand dat verantwoordelijk zou zijn voor het starten van de bootloader van elke distributie. Deze binaire bestanden zijn beschikbaar gesteld aan de gemeenschap.

Vervolgens zou de Linux Foundation een generieke oplossing lanceren die door alle distributies kan worden overgenomen.

Op zoek naar een betere oplossing, stelde een Red Hat-ontwikkelaar Linus Torvalds het volgende voor:

Hallo Linus,

Kunt u deze patch-set alstublieft toevoegen?

Biedt een functie waarmee sleutels dynamisch kunnen worden toegevoegd aan een kernel die in veilige opstartmodus draait. Om een ​​sleutel onder een dergelijke voorwaarde te laten laden, vereisen we dat de nieuwe sleutel wordt ondertekend door een sleutel die we al hebben (en die we vertrouwen), waarbij de sleutels die we "reeds hebben" de sleutels kunnen zijn die in de kernel zijn ingebed, die in de UEFI-database en die van de cryptografische hardware.

Nu zal "keyctl add" al X.509-certificaten verwerken die op deze manier zijn ondertekend, maar de ondertekeningsservice van Microsoft zal alleen uitvoerbare EFI PE-binaire bestanden ondertekenen.

We kunnen de gebruiker vragen om opnieuw op te starten in het BIOS, de sleutel toe te voegen en dan terug te schakelen, maar in sommige omstandigheden willen we dit kunnen doen terwijl de kernel draait.

De manier waarop we dit hebben opgelost, is door een X.509-certificaat met de sleutel in een sectie met de naam ".keylist" in een EFI PE-binair bestand in te sluiten en vervolgens het door Microsoft ondertekende binaire bestand op te halen.

Linus woord

Het antwoord van Linus (laten we niet vergeten dat het vóór zijn spirituele retraite was om zijn houding in relaties met andere mensen te heroverwegen), was het volgende:

KENNISGEVING: De volgende tekst bevat godslastering

Jongens, dit is geen wedstrijd om pikken te zuigen.

Als u de PE-binaire bestanden wilt gebruiken, gaat u verder. Als Red Hat zijn relatie met Microsoft wil verdiepen, is dat * jouw * probleem. Dat heeft niets te maken met de kernel die ik onderhoud. Het is gemakkelijk voor u om een ​​handtekening-engine te hebben die het PE-binaire bestand parseert, de handtekeningen verifieert en de resulterende sleutels ondertekent met uw eigen sleutel. De code, voor de liefde van God, is al geschreven, het zit in dat verdomde verzoek om opname.

Waarom zou ik me zorgen maken? Waarom zou de kernel zich druk maken om een ​​of andere idiote "we ondertekenen alleen PE-binaries" dom? We ondersteunen X.509, de standaard voor ondertekening.

Dit kan op gebruikersniveau. Er is geen excuus om het in de kernel te doen.

Linus

Mijn mening is dat Linus een keer gelijk had. In feite noch de Linux Foundation, noch de distributies hadden door Microsoft gechanteerd mogen worden.  Het is waar dat gebruikers verloren kunnen zijn gegaan. Maar, zoals later bleek, was Windows 8 een mislukking en bleef XP veel langer regeren.

De realiteit is dat wanneer Microsoft wordt geconfronteerd met een strijd, het wordt gedwongen zich aan de normen te houden. Het gebeurde toen ze faalde met SIlverlight en werd gedwongen om de webstandaard HTML 5 te gebruiken.Het gebeurde toen ze de ontwikkeling van de webweergave-engine moest opgeven en Edge op Chromium moest baseren.

We mogen ook niet vergeten dat het om programmeurs aan te trekken niets minder moest bevatten dan de mogelijkheid om Linux op Windows te draaien.

Linux-distributies zijn in een betere positie dan ooit om gebruikers een alternatief te bieden om perfect functionele hardware te blijven gebruiken.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   genezend zei

    Precies, niemand in het GNU / Linux-universum zou naar Microsoft of welk bedrijf dan ook moeten gaan, we moeten het verzet en de pleitbezorger zijn voor vrijheid in computergebruik, we hebben al genoeg aan de jails van mobiele telefoons, zodat we nu eisen moeten slikken die slechts één bedrijf profiteert.

  2.   ja zei

    Voor zover ik weet, hebben de beslissingen van Microsoft zelfs zijn eigen ecosysteem nooit geprofiteerd, het is gewoon een kwestie van marketing in de overtuiging dat als je tpm 2 niet kunt uitvoeren, je van computer zult veranderen om w 11 te kunnen draaien, als er iets is groot in Microsoft is het ego, de toekomst is Linux, niet Windows, en voor mij is de beslissing van Microsoft de beste om gebruikers dichter bij Linux te brengen

  3.   perez19 zei

    Ik ben dol op Linux, maar het gebrek aan veilige opstartondersteuning dwingt me om alleen Ubuntu te hebben die meer boog wil, jammer dat door een punt te maken om gelijke tred te houden met de huidige, ze gebruikers verliezen