Bug in Google Chrome OS maakt ingebouwde beveiligingssleutel kraakbaar

Google adviseert Chromebook-gebruikers hun apparaten bij te werken naar versie Chrome OS 75 om zo een ​​kritieke kwetsbaarheid op te lossen. De fout treft een experimentele Chrome OS-functie die procedures in zake tweefactor-authenticatie afhandelt.

Volgens Google-ingenieurs treft het beveiligingslek de zogeheten built-in security key. Er zit een fout in de firmware van H1-chips, die worden gebruikt voor het verwerken van het cryptografische deel van deze ingebouwde beveiligingssleutel, aldus ZDnet. Deze Chrome OS-functie stelt gebruikers in staat een Chromebook-apparaat te gebruiken als hardware-beveiligingssleutel. De functie kan worden gebruikt bij het inloggen op een website als onderdeel van tweestapsverificatie. Denk aan de melding die je op je Android-smartphone kan krijgen wanneer je wil inloggen via een browser op PC. 

Cryptografisch token

Door op de aan/uit-knop van de Chromebook te drukken, wordt er een cryptografisch token naar de website verstuurd. Hoewel dit vergelijkbaar is met hoe een klassieke hardwaresleutel normaal zou werken, zit het verschil in de manier waarop de gebruiker zijn Chromebook gebruikt als bewijs van eigendom en identiteit in plaats van een kleine USB-, NFC- of Bluetooth-sleutel.

Onderzoekers van Google hebben nu ontdekt dat de firmware van de H1-chip sommige bewerkingen verkeerd verwerkt en per ongeluk de lengte van sommige cryptografische handtekeningen verkort. Hierdoor zijn ze eenvoudiger te kraken. 

ECDSA-handtekeningen

“We hebben een kwetsbaarheid ontdekt in de firmware van de H1-beveiligingschip met betrekking tot het genereren van ECDSA-handtekeningen. De firmwarecode gebruikte incompatibele overdrachtsinstructies bij het doorgeven van een kritische geheime waarde aan het cryptografische hardwareblok. Het gevolg is dat geheime waarden van een specifieke structuur en met een aanzienlijk verlies van entropie in de geheime waarde (64 bits in plaats van 256 bits) worden gegenereerd”, aldus Google.

“We hebben bevestigd dat door het onjuist genereren van de geheime waarde deze kan worden hersteld, waardoor de onderliggende ECC-private sleutel kan worden verkregen. Zo kunnen aanvallers die een enkel paar handtekening en ondertekende gegevens hebben, de privésleutel effectief berekenen. Hierbij kan elke functionaliteit of protocollen, die het betreffende sleutelpaar gebruiken, worden verbroken.”

Aanvaller die één paar handtekening en ondertekende gegevens verkrijgen, zouden hierdoor de beveiligingssleutel van de gebruiker kunnen vervalsen. Dat is een actie waarbij ze geen toegang tot het Chrome OS-apparaat van de gebruiker nodig hebben.

Geen paniek

Reden tot paniek is er volgens Google niet. In het geval dat aanvallers erin slagen handtekeningen en de privésleutel te verkrijgen om andere handtekeningen te maken, zou er alleen nog maar sprake zijn van het verbreken van de tweede factor in het klassieke twee-factor authenticatieproces. Om in accounts in te breken, is namelijk ook het wachtwoord van een gebruiker nodig.

Alleen Chromebook-versies die de H1-chip en de ingebouwde beveiligingssleutel ondersteunen zouden zijn getroffen. Bovendien geldt het alleen voor gebruikers die eerder van de functie gebruik hebben gemaakt. Desalniettemin is het raadzaam een apparaat bij te werken naar Chrome OS 75.

Firmware fix

Voor volledige sanering zijn zowel een firmware-fix als een retiring key pairs nodig, die kwestbare handtekeningen hebben gegenereerd. Met onderstaand stappenplan kan een volledige sanering worden uitgevoerd:

  1. Update naar Chrome OS 75 of hoger om een ​​fix voor de H1-chipfirmware te ontvangen. H1-firmwareversies met een versienummer van 0.3.14 en eerder bevatten het beveiligingslek. Versies 0.3.15 en hoger zijn niet kwetsbaar. De firmwareversie H1 staat op de chrome: // systeempagina onder cr50_version, met name de RW-lijn.
  2. Maak een lijst van je accounts op websites waar u een beveiligingssleutel hebt geregistreerd, die is gegenereerd door de ingebouwde beveiligingssleutelfunctie van Chrome OS.
  3. Maak de registratie van de ingebouwde beveiligingssleutel van Chrome OS voor al deze services ongedaan. Exacte instructies verschillen per service, maar meestal zijn er ‘accountinstellingen’ of ‘beveiligingsinstellingen’ die geregistreerde beveiligingssleutels weergeven en u de optie geven beveiligingssleutels te verwijderen of af te afmelden. Het is niet nodig om wachtwoorden of andere accountbeveiligingsinstellingen te wijzigen.
  4. Bekijk recente succesvolle aanmeldingen bij services om te bepalen of er iets verdachts is (optioneel).
  5. Als u de melding ‘Interne beveiligingssleutel vereist opnieuw instellen’ heeft ontvangen, klik je op ‘Opnieuw instellen’ in de melding om te voorkomen dat deze opnieuw wordt weergegeven.

Getroffen apparaten

Gebruikers kunnen de Chrome OS // -versiepagina bezoeken om te zien welk model codenaam hun apparaat heeft en vergelijken met onderstaande lijst:

  • akali360 – Acer Chromebook Spin 13 (CP713-1WN)
  • akali – Acer Chromebook 13  (CB713-1W)
  • alan – HP Chromebook 11 G6 EE
  • aleena – Acer Chromebook 315
  • ampton – ASUS Chromebook Flip C214
  • apel – ASUS Chromebook C204
  • astronaut – Acer Chromebook 11 (C732)
  • babymako – ASUS chromebook C403
  • babymega – ASUS Chromebook C223
  • babytiger – ASUS Chromebook C523
  • barla – HP Chromebook 11A G6 EE
  • basking – ASUS Chromebook C213NA/C213SA
  • bigdaddy – HP Chromebook 14 / HP Chromebook 14 G5
  • blacktip360 – CTL chromebook NL7T-360
  • blacktip – CTL chromebook NL7
  • blacktiplte – CTL Chromebook NL7 LTE
  • blue – Acer Chromebook 15 CB315-1H / 1HT
  • bobba360 – Acer Chromebook Spin 511
  • bobba – Acer Chromebook 311
  • bob – ASUS Chromebook Flip C101PA
  • bruce – Acer Chromebook Spin 15 CP315-1H / 1HT
  • careena – HP Chromebook 14 db0000-db0999
  • dru – Acer Chromebook Tab 10 (D651N / D650N)
  • druwl – CTL Chromebook Tab Tx1
  • dumo – ASUS Chromebook Tablet CT100
  • electro – Acer Chromebook Spin 11 (R751T / CP511)
  • epaulette – Acer Chromebook 514
  • eve – Google Pixelbook
  • fleex – Dell Chromebook 3100
  • grabbiter – Dell Chromebook 3100 2in1
  • kasumi360 – Chromebook Spin 311 (R721T)
  • kasumi – Chromebook 311 (C721)
  • kench – HP Chromebox G2
  • lava – Acer Chromebook Spin 11 (CP311-1H & CP311-1HN)
  • liara – Lenovo 14e Chromebook
  • meep – HP Chromebook x360 11 G2 EE
  • mimrock – HP Chromebook 11 G7 EE
  • nasher360 – Dell Chromebook 11 2-in-1 5190
  • nasher – Dell Chromebook 11 5190
  • nautiluslte – Samsung Chromebook Plus (LTE)
  • nautilus – Samsung Chromebook Plus (V2)
  • nocturne – Pixel Slate
  • orbatrix – Dell Chromebook 3400
  • pantheon – Yoga C630 Chromebook
  • phaser360 – Lenovo 300e/500e Chromebook 2nd Gen

 

Lees ook: Chrome 76 bèta blokkeert Flash helemaal en verbergt incognito tegen betaalmuren