overzicht
bijna alle auto’ s worden momenteel geleverd met een sleutelhanger, waarmee u de deuren kunt openen en de auto kunt starten. Wanneer u een auto te kopen, het gemak is de dwingende functie. U kunt de sleutelhanger in uw zak laten, en nooit meer zorgen te maken over het hebben van een fysieke sleutel. Het klinkt geweldig.
de impliciete veronderstelling die u maakt is dat het sleutelhanger-systeem veilig is, en dat een willekeurige persoon met $50 hardware niet met uw auto weg kan rijden. Je hebt geen echte manier om te vertellen of de auto bedrijf deed een redelijke baan met hun systeem, dus je moet ze vertrouwen. Helaas is dat vertrouwen niet altijd gerechtvaardigd. Pas als mensen deze systemen proberen te hacken, komen de problemen naar boven. Problemen die minder scrupuleuze mensen misschien al hebben uitgebuit.
de sleutelhanger van uw auto
er zijn veel verschillende sleutelhanger-systemen. We beginnen met de sleutelhanger van mijn Prius uit 2006. Sleutelhangers gebruiken een Remote Keyless System (RKS). In de VS werken deze op 315 MHz, + / – 2,5 MHz. Mijn Prius sleutel bleek op 312.590 MHz te staan.De handzenders staan allemaal vermeld in de FCC database. Kijken naar nieuwe inzendingen is een van de manieren waarop mensen kunnen vertellen wanneer nieuwe automodellen komen. Deze zullen lang voor de officiële aankondiging verschijnen.
u kunt achterhalen welke frequentie uw sleutelhanger verzendt bij het gebruik van uw SDR en gqrx of SDR# gebruiken om het spectrum te bewaken. Wanneer u op een knop op de fob drukt, ziet u een korte sprong in het spectrum. Het kan nodig zijn om de frequentieband omhoog of omlaag te verschuiven met een paar MHz om het signaal te vinden, de mijne was bijna 2,5 MHz laag.
Eén woord van voorzichtigheid. Laat je niet meeslepen door op de knop te drukken! Het RKS systeem gebruikt een rolling pseudo-willekeurig gegenereerde code. Zowel de sleutelhanger als de auto blijven synchroon, zodat de auto de volgende code herkent. Echter, als de sleutelhanger krijgt te ver vooruit in de volgorde (100s van knop duwt) de auto zal het niet herkennen. Dat maakt de sleutel (en de auto) aanzienlijk minder nuttig!
als we het signaal vastleggen wordt het resultaat hieronder weergegeven
de totale breedte van de plot is 10 seconden, dus je kunt zien dat er een toetsaanslag kort na 2 seconden, en een andere kort na 5 seconden.
als we 100 ms vanaf 2 seconden plotten, kunnen we het digitale signaal zien dat we zoeken:
inzoomen op de eerste paar bits, krijgen we
de bits zijn gemakkelijk te identificeren. Een beslissingsdrempel van 15 geeft een bijna perfecte detectie. Als we dit doen, en dan het eerste deel van de digitale data plotten voor de twee toetsaanslagen, krijgen we dit
hoewel de twee beginnen hetzelfde,ze snel verschillen. Dit is gelukkig, want als het signaal elke keer hetzelfde was, zou je genoeg informatie hebben om mijn auto nu te stelen!
de gegevens zijn opnieuw on-off keying (OOK). Het is ook vrijwel zeker split fase (of Manchester) codering. In plaats van dat een” 1 “hoog is en een” 0 ” laag, codeert de informatie in de overgang van hoog naar laag of laag naar hoog. Dat betekent dat een” 0 “bit een stijgende overgang is, en een” 1 ” bit een dalende overgang. Een goede manier om split phase codering te herkennen is dat je slechts één of twee lage of hoge segmenten op een Rij kunt hebben. Het leuke van Manchester codering is dat elk symbool heeft een overgang,en deze zijn gemakkelijker te vinden dan wanneer het signaal is hoog of laag voor meerdere intervallen.
dit voorbeeld is OOK, het meest voorkomende voorbeeld voor auto-afstandsbedieningen. Sommigen gebruiken frequency-shift keying (FSK), waarbij elk bit als een andere frequentie wordt verzonden en de envelop constant is.
aanvallen op auto-afstandsbedieningen
er zijn veel verschillende aanvallen die tegen auto-afstandsbedieningen kunnen worden gebruikt, afhankelijk van hoe ze werken en wat voor soort Toegang u zoekt. De eenvoudigste laat je gewoon de auto openen. Meer grondige aanvallen geven u volledige controle door in principe het klonen van de afstandsbediening.
de meeste sleutelhangers gebruiken een rolling key. Dit produceert een nieuwe golfvorm die afhankelijk is van de ID van de sleutelhanger, een willekeurige seed, en hoe vaak de toets is ingedrukt. De auto houdt de laatste code bij die hij ontving, en weet wat de volgende honderden codes kunnen zijn. Als het detecteert een van de verwachte toekomstige codes het opent de auto. Als het een eerder gebruikte code krijgt, reageert het niet meer op de sleutelhanger. Voor de Prius moet je de “Chicken Dance” doen om het weer aan het werk te krijgen, mits je een andere werkende sleutelhanger hebt. Anders, je moet de dealer opnieuw de auto, voor vele honderden dollars. Ik heb dit een paar keer moeten doen, nu (om andere redenen).
er zijn verschillende aanvalslinies. Een is gewoon het opnemen van de sleutel fob-uitgang voor een paar knoppen drukt wanneer het uit de buurt van de auto, of de auto wordt geblokkeerd. Met opgenomen ongebruikte codes, kunt u de auto openen.
een andere methode is het reverse engineeren van de RKS-reeks. In het algemeen moet dit extreem moeilijk zijn. Er zijn echter verschillende situaties geweest waarin dit zeer eenvoudig is.
tot slot zijn er Auto ‘ s die open gaan wanneer de eigenaar dicht bij de auto komt. Dit is gebaseerd op een laag vermogenssignaal dat alleen kan worden ontvangen wanneer de sleutelhanger zeer dichtbij is. Dit kan worden verslagen door deze kleine signalen te versterken.
er zijn veel meer aanvallen, en deze zullen zich blijven vermenigvuldigen naarmate auto ‘ s complexer worden en meer ingebedde computersystemen hebben om achter aan te gaan. Je kunt er een paar bekijken voor volgende week.
Replay Attacks
de oudste en eenvoudigste aanpak was om de golfvorm op te nemen die een sleutelhanger uitstraalt (met behulp van uw rtl-sdr), en deze dan opnieuw af te spelen. Dit werkt goed voor oudere garagedeuraandrijvingen, die een vaste sleutel gebruikten. Er zijn nog steeds Auto ‘ s die er die sleutelhangers die werken op deze manier (sommige Pre-2000 Mercedes bijvoorbeeld).
voor sleutelhangers die een rollende sleutel gebruiken, kunt u nog steeds een replay attack gebruiken. Als u toegang tot de sleutelhanger kunt krijgen wanneer deze uit de buurt van de auto is en verschillende toetsaanslagen kunt opnemen, kunt u deze opnieuw afspelen om de auto open te hebben.
als u geen toegang tot de sleutelhanger kunt krijgen, is een tweede aanpak om een apparaat te maken dat de uitvoer van de sleutelhanger registreert wanneer deze wordt gebruikt, en tegelijkertijd de auto vastzet. Een standaard manier om dit te doen is om te luisteren naar de sleutel fob-overdracht, en dan beginnen jammen wanneer de foutcorrectie bits worden verzonden aan het einde. Op die manier sla je jezelf niet in de war. De auto herkent het pakket niet, maar u kunt de foutcorrectiebits opnieuw maken en de golfvorm later opnieuw verzenden.
ten slotte zorgt een stoorzender ervoor dat de afstandsbediening van begin de auto kan vergrendelen. Als de bestuurder niet attent is, kunnen ze weglopen van de auto en hem open laten staan.
Hertransmissieapparaten
dit alles hangt af van uw vermogen om zowel RF te verzenden als te ontvangen. Uw rtl-sdr ‘ s zijn slechts ontvangers, en doen een groot werk van het verwerven van signalen. Er zijn veel mogelijkheden om uit te zenden. Er zijn een aantal USB dongles die zijn gebaseerd op de ti CC111X chips die worden gebruikt in sleutelhangers, zoals deze
een interessante, meer flexibele aanpak maakt gebruik van uw Raspberry PI voor het genereren van RF door het verzenden van een zorgvuldig vervaardigde gegevensreeks naar de GPIO-poort. Dit wordt in detail beschreven, met video ‘ s, en links naar de code hier:
Raspberry PI transmitter
Hiermee kunt u vrijwel elke digitale pakketgolfvorm genereren die u wilt. Vermogensniveaus zijn meer dan voldoende voor het emuleren van een sleutelhanger. De rtl-sdr ‘ s zijn ook goed ondersteund op de Raspberry PI, zodat de twee samen geven u een totale sleutel fob hacken systeem voor $50 of zo, zoals we binnenkort zullen zien.
aanvallende Passive Keyless Entry and Start (Pkes) – systemen
veel hogere Auto ‘ s gebruiken een passief systeem om de auto te openen wanneer de bestuurder nadert. Een laag vermogen signaal wordt verzonden vanuit de auto als een uitdaging. De sleutelhanger reageert vervolgens met een authenticatie. Omdat het vermogen zo laag is, gaat de auto ervan uit dat de bestuurder in de buurt moet zijn als hij een reactie krijgt.
deze systemen kunnen worden gehackt door een repeater te bouwen die in de buurt van de auto is geplaatst. Het vangt het signaal van de auto op en zendt het opnieuw uit op hoger vermogen. De afstandsbediening kan overal zijn met in een paar honderd meter, en het zal nog steeds het signaal horen. De afstandsbediening reageert, en dat wordt weer vastgelegd door de repeater, en opnieuw verzonden. De auto denkt dat de sleutelhanger in de buurt is en opent de auto.
het leuke aan deze aanpak is dat je niets hoeft te weten over de sleutelhanger, behalve de frequentie. U hoeft niet te reverse engineer het protocol dat het gebruikt, je bent eigenlijk gewoon met behulp van de echte sleutel!
hier is een video van enkele care thieves die een Tesla stelen met deze aanpak
Passive Remote Attack, Tesla Model 3
Hoe kunt u dit risico verminderen?
aanvallen op het Rolling key systeem
de volgende aanvallen gaan achter het rolling key systeem zelf aan. De manier waarop dit over het algemeen werkt is dat de sleutelhanger een ID stuurt, samen met een teller van hoe vaak een toets is ingedrukt. Dit wordt gecodeerd en verzonden naar de auto wanneer u op de knop drukt.
als de encryptie is sterk, is het uiterst moeilijk om erachter te komen wat de userid en teller is. Er zijn verschillende interessante gevallen. Een daarvan is voor de 20 jaar van VW ’s (en Audi’ s, Porsche ‘ s, etc), die we hier zullen kijken. Een andere is voor Subarus, waar je deze week naar kunt kijken voor je opdracht.
een beschrijving van het VW RKS-systeem wordt hier gegeven
VW Hack
dit wijst op een bedraad artikel (dat helaas momenteel achter een paywall), en bevat een technisch document dat in detail gaat over hoe het werkt. De auteurs van de technische paper keek naar de VW RKS-systemen voor de laatste 20 jaar.
voor de meest recente systemen was de encryptie relatief sterk, gelijk aan een 90-bit sleutel. Echter, het blijkt dat ze dezelfde sleutel gebruikt in elke auto! 100 miljoen van hen!
de uitdaging is dan om erachter te komen wat de sleutel is, en wat het versleutelingsalgoritme is. De auto zelf helpt je dat op te lossen. Wanneer de knop wordt ingedrukt, ontvangt de auto het signaal en decodeert het vervolgens in de boordcomputer (ECU). De sleutel en het algoritme worden opgeslagen in de ECU-firmware. De auteurs kochten wat ecu ‘ s op EBay, gedownload de firmware, en reverse engineerde de encryptie (dit zijn gewoonlijk vrij eenvoudige bitwise verrichtingen die gemakkelijk zijn te identificeren). Met deze kennis, na het verkrijgen van het signaal van een enkele toets Druk, de gebruiker ID en teller kunnen worden gedecodeerd, en de sleutelhanger gekloond, waardoor volledige controle over de auto.
er zijn een paar interessante dingen hier. Men is dat elke vw-auto elke zeer belangrijke fob decodeert, zodat door de uitvoering van uw ECU te controleren, kunt u de gebruikersidentificatie en de teller voor alle auto ‘ s om u heen vinden. Er zijn meldingen van mensen met behulp van systemen als deze om andere merken van auto ‘ s te stelen, ook.
de reden dat alleen uw auto reageert op uw afstandsbediening is dat uw auto heeft een “Toestaan lijst” van Sleutel fob ID ‘ s waarop hij reageert. Dat is wat wordt ingesteld als je de auto weer aanmaakt.
dit alles klinkt behoorlijk alarmerend. Maar het wordt nog erger, zoals we volgende week zullen zien.
opdracht
u hebt deze week verschillende opties voor uw opdracht. Voor elk onderwerp, genereren ongeveer 5 dia ‘ s om uw gedachten of resultaten te beschrijven. Sign up here
Sign up Sheet
en upload uw dia ’s hier:
Week 5 dia’ s
1. Dit artikel betreft het Subaru RKS systeem. Lees het, bekijk de video ‘ s en beschrijf wat je vindt.
Subaru RKS
2. Heb je je ooit afgevraagd hoe die hotelkaarten werken? Dit artikel beschrijft een niet-RF hack die dezelfde ideeën exploiteert als de key fob-aanvallen.
Hotelkaarten
3. Waarom een auto stelen als je een bulldozer kunt hebben! Lees dit artikel en bekijk de video om te zien hoe dit werkt.
Hacking Industrial Machines
4. Er zijn veel andere auto hacks die er zijn. Kijk of je iets interessants kunt vinden en beschrijf het. Zoek naar verhalen waar je erachter kunt komen hoe het werkt. Entertainment systemen zijn een gemeenschappelijke wijze van toegang (controleer de Uconnect hack voor Jeeps). Tesla en hackers hebben een lang lopende kat-en-muis spel gaande. Er zijn hier veel interessante voorbeelden
5. Als je een Raspberry Pi hebt, kijk dan of je hem een signaal kunt laten uitzenden. Dit zou vrij eenvoudig moeten zijn. Gebruik de link hierboven. Ik stuur je een Raspberry Pi als je dit wilt proberen.
tot slot, als je nog niet hebt, stuur me dan een e-mail over hoe de klas gaat voor u. Ik waardeer het om je gedachten te horen. Bedankt!