Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Hitzaldiaren laburpena:

Gutako askorentzat, autoa inoiz egingo dugun erosketarik garestienetako bat da. Dena konektatuta dagoen munduan, naturala da gure autoa urrutitik kontrolatu nahi izatea: non aparkatu dugun abisua jaso, ateak blokeatzea ahaztu zaigula egiaztatu edo motorra urrunetik piztea barrualdea berotzeko edo hozteko. urteko garaiaren arabera.

Fabrikatzaile asko daude erosotasun eta lasaitasun hori eskaintzen duten aukerako alarma sistemak eskaintzen dituztenak. Baina zenbat fida gaitezke sistema horien hornitzaileek gure autoetarako sarbidea babesteko domeinu digitalean? Hitzaldi honetan, Jmaxxz-ek sistema horietako bat aztertu zuenean aurkitu zuenari buruz hitz egingo du.

Jmaxxz ezaguna da August Smart Lock etxeko sistema adimendunekin egindako lanagatik (DEFCON 24-n aurkezpena "Backdooring The Frontdoor"). Azken urteotan, bere arreta IoT gailuetan izan da. DEFCON 24 eta DEFCON 25-en "IoT village zero day" ataletan parte hartu zuen eta, azkenean, automobilgintza bigarren mailako merkatuko produktu bat esploratzeko garaia zela erabaki zuen: urruneko abiarazlea (aurrerantzean RS deitzen zaio).

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Beraz, nire izena J-Max da, programatzailea naiz lanbidez eta hackerra bokazioz. Blokeoarekin lotutako gauza guztietan parte hartzen dut, eta elkarrizketa honetan zehar nire iritzia soilik adierazten duten eta nire iraganeko, oraingo eta etorkizuneko enplegatzaileen iritziekin zerikusirik ez duten hainbat adierazpen entzungo dituzu. Seguruenik ulertu zenuenez, autoei buruz hitz egingo dugu, hots, urruneko abiarazleei eta alarma sistemei buruz. Has gaitezen aurrekari batzuekin, eta hori garrantzitsua da testuinguru honetan, askok horrelako sistemak alferrikako luxutzat hartzen dituztelako.
Beraz, bizi naizen tokian nahiko hotz egiten du eta nire lagunak Raynaud-en sindromea deitzen zaion gaixotasuna du. Hotzak eskuetako odol-hodien espasmoa eragiten du, hatzetara odol-jarioa nabarmen murrizten da eta izozte-zantzuak agertzen dira, ehunen nekrosia barne. Diapositibak normalean nolakoa den erakusten du.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Joan den azaroan, oraindik ez nuen erabaki zer oparituko nion Gabonetarako. Beraz, aireportutik atsekabetuta itzultzen da etxerako bidean bere autoa inoiz berotu delako. Momentu horretan, urrutiko motorra abiarazteko sistema bat emango niola konturatu nintzen eta aukerarik onena bilatzen hasi nintzen. Bihurtzen da urruneko abiarazteen merkatua nahiko handia dela, fabrikatzaile askok ez dutela beren produktuari buruzko informazio nahikoa ematen.

Ez dizute esaten nola instalatu sistema edo zer tresna erabili gailua programatzeko. Niretzat arazo bat da hau nire autoa delako, nire urrutiko abiarazte eta tresna hauetarako sarbidea izan behar dudalako. Beraz, apur bat gehiago bilatu nuen eta Kanadako Fortin enpresa bat aurkitu nuen, horrelako abiarazleak ekoizten dituena eta borondatez beharrezko dokumentazio guztia eskaintzen duena. Produktu honekin finkatu eta urrutiko aginte egoki baten bila hasi nintzen. Izan ere, urruneko kontrol estandarra erabiltzen baduzu urruneko abiarazle batekin, bere ekintza-eremua urruneko kontrol estandarraren barrutira mugatuko da. Ondoko merkatuko urruneko kontrolagailuak eskaintzen dira, milia erditik milia eta erdi bitarteko tartean funtzionatzen dutenak. Kontsumitzaileen iritzien arabera, publizitate-itxura bat da, errealitatean distantzia askoz laburragoa delako. Hau da arazoa, nire lagunak bere autoaren motorra martxan jarri behar duelako aireportuko aparkalekuan, hegazkinetik jaitsi bezain laster, hau da, kilometro erdi ingurura.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Beraz, bikaina litzateke telefonoa atera, aplikazioa ireki eta Hasi sakatu balu. MyCar izeneko hirugarren produktu bat aurkitu nuen Fortin abiarazlearekin guztiz bateragarria dena. Hau SIM txartela eta GPS hargailu bat dituen giltza txiki bat da, zure autoan jarri eta urruneko abiarazlearekin konektatu dezakezuna. Ondoren, mugikorretarako aplikazio bat erabiliz, motorra urrunetik abiarazi, sarrailak desblokeatu eta antzekoak egin ditzakezu.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Hau bikaina izango zela pentsatu nuen: hegazkina lurreratu eta berehala, nire lagunak motorra martxan jarri dezake, eta kotxera iristen denerako, kabina epel egongo da jada.

Beraz, hitz egin dezagun pixka bat urruneko abiarazleak nola funtzionatzen duen. Horretarako, lehenik eta behin autoaren motorra nola abiarazten den ulertu behar duzu. Laurogeita hamarreko hamarkadaren erdialdera arte, autoen abiarazlea giltza eta etengailu konbinazio batean sarraila mekaniko tradizionala zen. Zirkuitu elektrikoa osatzeko giltza sartu eta buelta eman behar izan duzu. Orduan, "immobilizer" etiketatutako sarrailak ezagunak bihurtu ziren Estatu Batuetan. Konplikatua dirudi, baina sarraila elektroniko bat besterik ez da. Beraz, sarraila mekaniko bat duzu, hau da, sarraila elektronikoaren giltza, transponder bat dena eta irakur daitekeen informazio batzuk dituena. Eta sarraila elektronikoa ireki arte, autoa ez da martxan jarriko. Diapositibaren eskuinaldean 2 giltza ikusten dituzu: ezkerrekoa immobilizatzailerako da, eta eskuinekoa pizte-etengailu arrunterako. Sarrailaren osagai mekanikoak funtzionatzen ditu, ezkerreko giltzak sarraila elektronikoa desblokeatzen duen bitartean, autoaren motorra martxan jarriko duena.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Zergatik kontatzen dizut honetaz? Urruneko abiarazteak immobilizatzailearen bidez funtzionatzen du. Hurrengo diapositiban Fortin EVO One gailua immobilizatzailearekin konektatzeko diagrama bat ikusten duzu - ezkerreko behealdean IMO gisa izendatutako kontaktu pare bat ikusten duzu. Diagramaren goiko eskuinaldean bi lerro ikusten dituzu: CAN LOW eta CAN HIGH. Automozioko CAN busera konektatzeko kontaktuak dira. Urrutiko abiarazleak CAN busera konektatzeko arrazoia instalazioaren kostuak murriztea da, instalazioan konexio gutxiago erabiltzen direlako. Urruneko abiarazleak CAN buseko datuak irakur ditzake edo CAN busaren bidez komandoak bidal ditzake, honek urruneko motorra abiarazteko sistemaren instalazio denbora murrizten du.

Diagramaren goiko ezkerrean makinari buruzko informazioa kontrolatzearekin edo irakurtzearekin lotuta dauden GPIO sorta bat daude. Esaterako, blokeo-botoia sakatzean argiak distiratzen edo klaxona jotzea nahi duzu. Horrelako gauzak GPIO hauek erabiliz kontrola daitezke. Diagramaren beheko ezkerrean konektore handi eta trakets bat ikusten duzu; hau da blokeo mekanikoa saihesten duen interfazea. Hau da, ez duzu giltza piztean sartu eta piztu beharrik, interfaze honi esker, urruneko abiarazte-sistemaren erreleak sarraila elektrikoarekin zuzenean komunikatzeko aukera ematen baitu.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Hurrengo diapositibak urruneko abiarazle bat instalatzeko faseak erakusten ditu. Batez ere, zuzendaritza-zutabearen estalkia kentzean, DS unitatea instalatu eta konektatzean datza. Nahiko beldurgarria dirudi, baina egiteko erraza da.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Urruneko kontrolak berak Fortin-ek datu-lotura deitzen duenarekin konektatzen dira. Sistemak UART datu-transferentzia fisikoko protokolo jabeduna erabiltzen du - 9600 baud-eko abiaduran datuak trukatzen dituen transmisore asinkrono unibertsala. Fortin urruneko abiarazlea UART bus baten bidez konektatzen da diapositiban ikusten dituzun urruneko bi aginteetara.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

DS instalatuta, horrelako gailuek autoaren segurtasunean nola eragin dezaketen pentsatu nuen. Jakina, DS-k ibilgegailua saihestu behar du, beraz, zenbateraino da segurua autoaren kontrola lapurtzeko edo atzemateko aukerari dagokionez? Hau ez da soilik sare zelular bidezko datu-transmisioari aplikatzen, baita urruneko hasierako seinaleari ere. Beraz, Interneten fabrikatzaileen informazioa bilatzen hasi nintzen erabilitako datuak transferitzeko protokoloari buruz eta foroetan amaitu nuen Fortinek protokolo hori emateari uko egin ziola idatzi zuen foroetan. Arrazoietako bat: β€œEz dugu informazio hori zabaltzen EVO ez delako afizionatuentzako jostailua, profesionalek erabiltzeko pentsatuta dago.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Profesionala izanik, mahaigainean nire makina eraikitzea erabaki nuen. Bigarren EVO sistema-unitate bat eskuratu nuen, autoa irudikatzen zuen zirkuitu plaka bat muntatu nuen, piztearen simulaziorako etengailuak gehitu nituen, balazta-pedalaren botoia eta LED sorta bat hainbat egoera erakusteko.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Hori guztia batuta, FTI datu-lotura monitorizatzeko gailua konektatu eta datu hauek biltzen hasi nintzen. Hasieran diapositibaren antzeko zerbait dirudi, eta ez dago guztiz argi zer gertatzen den hemen. Baina arretaz begiratuz gero, esan dezakezu zalantzarik gabe badagoela hemen nolabaiteko egitura.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Kontuan izan urrutiko aginteko botoi bat sakatzen dudan bakoitzean, antenak nire DSra bidaltzen duen mezua beti 0C-rekin hasten dela eta 0D-rekin amaitzen dela. Beraz, lortzen duguna zatitzen badugu, 0C hasiera eta 0D amaiera suposatuz, honelako zerbaitekin amaituko dugu.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Dagoeneko bada hemen argi eta garbi ikusten den egitura motaren bat, gertatzen ari dena jakin dezazun. Botoi zehatz bat sakatu ondoren agertzen den mezuaren jarraipena egiten denbora emanez, komandoen taula bat sortu ahal izan nuen, bakoitza ekintza zehatz bati zegokion. Hau da, urrutiko aginteko botoi bat sakatzen duzunean, antenak komando bat bidaltzen dio urrutiko abiarazte moduluari, itxura hau duena.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Hona hemen talde-egitura tipiko baten itxura.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Urruneko agintearen botoi bat sakatzen duzunean, antenak komando hori bidaltzen dio urruneko abiarazleari. 0C byte-k esnatzen du, eta ondoren 2 byte-k, transmisioaren norabidea adierazten baitute. Hau interesgarria da, UART-k dagoeneko seinalearen norabidea duelako, beraz, byte hauek "zabor" gisa markatu ditut, konstante gisa tratatu. Honen ostean byte bakarra dago erabiltzaileak exekutatu nahi duen komandoa adierazten duena. Hau izan daiteke ateak blokeatzea edo irekitzea, alarma itzaltzea, etab. Oro har, urrunetik egin nahi duzun guztia komando honekin lotuta dago. FF FF F1 karga karga mezua atera den urruneko antena identifikatzen duen helbide edo identifikatzaile bat da. DS unitateak identifikatzailea ezagutzen ez badu, komandoa ez da aintzat hartuko. DSk identifikatzailea onartzen badu, urrats anitzeko prozedura bat hasten da, hau da, piztean giltza dagoen egiaztatzea, motorra piztea edo itzaltzea, balazta-pedala sakatzea, etab. Izan ere, prozesu honek ez du garrantzi handirik, gailua une honetan IDa ikasten ari dela besterik ez da.

Mezuaren amaieran byte bat dago checksum batekin eta komandoaren amaiera adierazten duen byte bat. Protokoloak nola funtzionatzen duen ulertzen dugunean, zer egin dezakegu horri buruz? Gaiari buruzko bideo pare bat ditut. Zoritxarrez, arrazoiren batengatik bideoa soinurik gabe dago, beraz, pantailan gertatzen ari dena kontatuko dizuet. Tresna-paneleko karkasaren zuzendaritza-zutabearen ezkerraldean Fortin protokoloa ulertzen duen Particle.IO firmwarea duen elektronika duen kutxa zuri bat dago. Punta urdina duen kablea antena da. Gauza honek autoaren barrutik urruneko abiarazte-unitatearekin elkarreragiteko aukera ematen dit eta ordenagailu eramangarriaren pantailan zer gertatzen den ikusteko.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Beraz, blokeoa desblokeatzeko komandoa bidaltzen dut kotxera baina ez du funtzionatzen DSak ez baitu antena honen berri. Esan dudan bezala, hau UART bat besterik ez da, zeinaren propietatea bi noranzkoko komunikazioa onartzen duena, eta horri esker urrunetik autoaren egoerari buruzko informazioa lor dezakezu. Adibidez, motorra fisikoki martxan jarri edo gelditzen bazen, DS unitateak dagokion mezua bidaliko dio urrutiko agintearen antenari. Kasu honetan, mezuak antena horren helbidea izango du.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Arazoa da komunikazioa UART protokoloa erabiliz egiten dela, eta UART busera konektatzen den edonork mezu jakin bat bidaltzen den helbidea ikus dezakeela, beraz, nire firmwareak lehendik dagoen antena baten helbidea klonatzeko gaitasuna du, nik egiten dut. dagokion komandoarekin.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Mezu bat sortzeko, autoaren atea ireki besterik ez duzu behar. Ikus dezakezunez, DS-ak atea irekita zegoela mezu bat bidaltzen dio antenari, eta alarma berehala pizten da.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Alarma desaktibatzeko, "desblokeatu" komandoa bidaltzen dut, ondoren alarma soinua itzali eta autoa desblokeatzen da. Nire hitza hartu beharko duzu, ezin izan baitugu bideo hau soinuarekin erreproduzitu. Saia gaitezen berriro bideoa erreproduzitzen.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Bada, soinua agertu da (itzultzailearen oharra: pantailan soinua duen bideo bera erreproduzitzen da). Beraz, ikusi duzu nola DS komandoa bidali eta alarma piztu nuen, dena giltzarik gabe. Orain saia gaitezen autoa era berean abiarazten; horretarako, ikusi hurrengo bideoa.

Normalean, "hasi" idazten baduzu eta motorra abiarazten saiatzen bazara, ez du funtzionatuko. Arrazoia da eskuzko transmisioko autoa dela eta urruneko abiarazte sistemek prozedura berezi bat dutela horrelako autoetarako. Kasu honetan, urruneko abiaraztearen botoia sakatu behar duzu giltza piztean dagoela eta motorra martxan dagoen bitartean. Orduan giltza atera dezakezu, autotik atera, atea itxi eta ondoren DS-ak motorra itzali eta atea blokeatu egingo du. Hau egiten da gidatzen ari zaren bitartean autoak urrutiko abiarazteari erantzutea saihesteko, arriskutsua delako. Hala ere, hau ez da erabateko segurtasun-eginbide bat. Hau nahiko erraza da frogatzen EVO urruneko abiarazte-unitateari begiratuta. Eskuzko transmisioarekin funtzionatzeko diseinatuta dagoen begizta horia ikusten duzu. Mozten bada, bloke hori transmisio automatikoa duen auto baterako erabil daiteke. Unitatearen diseinu honek aukera ematen du ezarpen berezirik ez erabiltzeko DS transmisio mota ezberdineko autoetan instalatzean.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Beraz, sistemak ez zion erantzun "hasi" komandoari, beraz bloke hau berriro jarriko dut eta hari hau moztuko dut konexioa hausteko. Orain, "hasi" komandoa errepikatzen baduzu, soinu-seinale bat entzungo da eta autoaren sistemen egoera-adierazleak argituko dira tresna-panelean, giltza bat sarrailan sartzen denean gertatzen den bezala.

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 1. zatia

Momentuz piztean giltzarik gabe urrunetik martxan jar dezakegun auto bat dugu, baina DS modulua ez da behar dugun guztia. Egoera normalean, oraindik ezin izango duzu urrunetik abiatutako auto batean joan, baina saiatu gaitezen hala ere.

Bolantearen blokeoa desgaitzeko, ohiko giltza bat sartu behar duzu pizte-giltzarrapoan, transpondedorerik ez duena. Ikusten denez, nahikoa da motorra martxan jarri aurretik giltza posiziora eramatea, eta Subaru Impreza bolantea erabat libreki biratzen hasten da.

Hala ere, giltzarik ez baduzu, balazta-pedala sakatzen duzunean autoa gelditu egingo da. Nahiko erraza da muga hori gainditzea. Asmatu behar duzu autoak nola esaten dion urruneko abiarazleari balazta jarrita dagoela. EVO moduluaren karkasaren atzeko aldean kolore askotako hainbat ataka ikusten dituzu - CAN buseko kablea hemen konektatuko da. Nahikoa da kable hau DS unitatetik kentzea autoa urrunetik martxan jarri ondoren, eta ez du erantzungo balazta-pedala sakatzeari. Unitate hau direkzio-zutabearen estalkiaren azpian dagoenez, ordenagailu eramangarriaren bidez "hasiera" komandoa ematen dut, autoa martxan jartzen da, atea ireki, autotik irten eta CAN bus konektorea kentzen dut EVO unitatetik. Ikusten duzuenez, autoaren motorra martxan dago, baina oraindik ez dugu giltzarik piztean.

Orain balazta-pedala sakatzen baduzu ez da ezer gertatuko EVOk ez dakielako sakatuta egon denik. Horren ostean, bolantearen atzean sartu, balazta sakatu, engranaje-makila "Drive" posiziora eraman eta autoa mugitzen hasiko da. Hori guztia inolako giltzarik gabe egiten da.

21:40

Jardunaldia DEFCON 27. Zure autoa nire autoa da. 2. zatia

Iragarki batzuk πŸ™‚

Eskerrik asko gurekin geratzeagatik. Gustuko dituzu gure artikuluak? Eduki interesgarri gehiago ikusi nahi? Lagun iezaguzu eskaera bat eginez edo lagunei gomendatuz, Garatzaileentzako hodeiko VPS 4.99 $-tik aurrera, sarrera-mailako zerbitzarien analogo paregabea, guk zuretzat asmatu duguna: VPS (KVM) E5-2697 v3 (6 Nukleoak) 10GB DDR4 480GB SSD 1Gbps 19Gbps-ri buruzko egia osoa XNUMX $-tik edo zerbitzari bat nola partekatu? (RAID1 eta RAID10-ekin erabilgarri, 24 nukleoraino eta 40 GB DDR4 arte).

Dell R730xd 2 aldiz merkeagoa Amsterdameko Equinix Tier IV datu-zentroan? Hemen bakarrik 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 telebista 199 $-tik aurrera Herbehereetan! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - 99 $-tik aurrera! Irakurri buruz Nola eraiki azpiegitura korporazioa. klasea Dell R730xd E5-2650 v4 zerbitzarien erabilerarekin 9000 euroko balioa duten zentimo baten truke?

Iturria: www.habr.com

Gehitu iruzkin berria