Een kwetsbaarheid in de infrastructuur van Tesla maakte het mogelijk om controle over elke auto te krijgen.

Onthuld informatie over problemen bij het organiseren van de beveiliging van het Tesla-netwerk, waardoor de infrastructuur die met consumentenauto's communiceert volledig in gevaar kwam. De geïdentificeerde problemen maakten het met name mogelijk om toegang te krijgen tot de server die verantwoordelijk is voor het onderhouden van het communicatiekanaal met auto's en het versturen van opdrachten via een mobiele applicatie.

Hierdoor slaagde de aanvaller erin om root-toegang te krijgen tot het informatiesysteem van elke auto via de Tesla-infrastructuur of om op afstand besturingscommando's naar de auto te sturen. Met name de mogelijkheid om commando's naar de auto te sturen, zoals het starten van de motor en het ontgrendelen van de deuren, werd gedemonstreerd. Om toegang te krijgen, was alleen het VIN-nummer van de auto van het slachtoffer vereist.

De kwetsbaarheid werd begin 2017 ontdekt door beveiligingsonderzoeker Jason Hughes
(Jason Hughes), die Tesla onmiddellijk op de hoogte bracht van de problemen en de informatie die hij had ontdekt pas drieënhalf jaar na het incident openbaar maakte. Tesla heeft de problemen in 2017 binnen enkele uren na ontvangst van een melding over de kwetsbaarheid verholpen en vervolgens de beveiliging van zijn infrastructuur aanzienlijk verbeterd. De onderzoeker ontving een beloning van 50 Amerikaanse dollar voor het identificeren van de kwetsbaarheid.

Het onderzoek naar de infrastructuurproblemen van Tesla begon met het decompileren van de tools die van de site konden worden gedownload. toolbox.teslamotors.comTesla-gebruikers met een account op service.teslamotors.com kregen de mogelijkheid om alle modules voor ontwikkelaars te downloaden. De modules waren op de eenvoudigste manier versleuteld en de encryptiesleutels werden door dezelfde server verstrekt.

Nadat de onderzoeker de verkregen modules had gedecompileerd naar Python-code, ontdekte hij dat de code inloggegevens bevatte voor verschillende Tesla-diensten op het interne netwerk van het bedrijf, dat toegankelijk was via VPN. De code bevatte met name inloggegevens voor een gebruiker van een van de hosts in het subdomein "dev.teslamotors.com", dat zich op het interne netwerk bevond.

Tot 2019 gebruikte Tesla een VPN-pakket om auto's met hun diensten te verbinden. OpenVPN (later vervangen door een implementatie op basis van websockets) met behulp van een sleutel die voor elk voertuig werd gegenereerd. De VPN werd gebruikt ter ondersteuning van de mobiele app, het ophalen van een lijst met laadstations en andere soortgelijke diensten. De onderzoeker probeerde het netwerk te scannen dat toegankelijk was nadat hij zijn auto via VPN had verbonden en ontdekte dat het subnet dat toegankelijk was voor clients niet voldoende geïsoleerd was van het interne netwerk van Tesla. Dit omvatte toegang tot een host op het subdomein dev.teslamotors.com, waarvoor inloggegevens werden gevonden.

De gecompromitteerde server bleek een clusterbeheerknooppunt te zijn en was verantwoordelijk voor het leveren van applicaties aan andere servers. Bij het inloggen op de opgegeven host was het mogelijk om een ​​deel van de broncode van Tesla's interne services te verkrijgen, waaronder mothership.vn en firmware.vn, die verantwoordelijk zijn voor het verzenden van opdrachten naar auto's van klanten en het leveren van firmware. Wachtwoorden en inloggegevens voor toegang tot de PostgreSQL- en MySQL-databases werden ook op de server gevonden. Gaandeweg bleek dat toegang tot de meeste componenten mogelijk was zonder de inloggegevens in de modules; het was voldoende om een ​​HTTP-verzoek naar de Web API te sturen vanuit een subnet dat toegankelijk was voor clients.

Er werd onder andere een module op de server gevonden met daarin het bestand good.dev-test.carkeys.tar met sleutels voor de VPN die in het ontwikkelingsproces werd gebruikt. Deze sleutels bleken te werken en maakten verbinding mogelijk met de interne VPN van het bedrijf vpn.dev.teslamotors.com.
De code van de Mothership-service werd ook op de server gevonden, en door deze te bestuderen konden we verbindingspunten met diverse beheerservices bepalen. Het bleek dat de meeste gegevens van de beheerservices beschikbaar zijn in elke auto, mits verbonden met de gevonden VPN-sleutels voor ontwikkelaars. Door de services te manipuleren, was het mogelijk om dagelijks bijgewerkte toegangssleutels voor elke auto te extraheren, evenals kopieën van de inloggegevens van elke client.

Met de verstrekte informatie konden we het IP-adres bepalen van elke auto die via VPN was verbonden. Omdat het subnet vpn.dev.teslamotors.com niet goed was gescheiden door een firewall, konden we het IP-adres van de klant bereiken via eenvoudige routeringsmanipulaties en via SSH verbinding maken met hun auto met rootrechten, gebruikmakend van de eerder verkregen inloggegevens van de klant.

Bovendien maakten de ontvangen VPN-verbindingsparameters naar het interne netwerk het mogelijk om verzoeken naar elke auto te sturen via de web-API mothership.vn.teslamotors.com, die zonder aanvullende authenticatie werden geaccepteerd. Tijdens de tests was het bijvoorbeeld mogelijk om de huidige locatie van de auto te bepalen, de deuren te ontgrendelen en de motor te starten. Het VIN-nummer van de auto wordt gebruikt als identificatie voor het selecteren van het aanvalsdoel.

Bron: opennet.ru

Koop betrouwbare hosting voor sites met DDoS-bescherming, VPS VDS-servers 🔥 Koop betrouwbare websitehosting met DDoS-bescherming, VPS- en VDS-servers | ProHoster