informoj pri en organizado de protekto en la reto Tesla, kiu ebligis tute kompromiti la infrastrukturon, kiu interagas kun konsumantaj aŭtoj. Precipe, la identigitaj problemoj ebligis akiri aliron al la servilo respondeca pri konservado de komunika kanalo kun aŭtoj kaj sendado de komandoj transdonitaj per movebla aplikaĵo.
Kiel rezulto, la atakanto sukcesis akiri radikan aliron al la informsistemo de iu ajn aŭto per la Tesla infrastrukturo aŭ malproksime transdoni kontrolkomandojn al la aŭto. Interalie, la kapablo sendi komandojn kiel ekfunkciigo de la motoro kaj malŝlosado de pordoj al la aŭto estis pruvita. Por akiri aliron, ĉio kio estis postulata estis scio pri la VIN-numero de la aŭto de la viktimo.
La vundebleco estis identigita komence de 2017 fare de sekureca esploristo Jason Hughes
(), kiu tuj informis Tesla'n pri la problemoj kaj publikigis la informojn, kiujn li malkovris nur tri jarojn kaj duonon post la okazaĵo. Oni rimarkas, ke Tesla en 2017 riparis la problemojn ene de horoj post ricevi sciigon pri la vundebleco, post kio ĝi radikale plifortigis la protekton de sia infrastrukturo. Por identigi la vundeblecon, la esploristo ricevis rekompencon de 50 mil usonaj dolaroj.
La analizo de problemoj kun la infrastrukturo de Tesla komenciĝis per la malkompilo de la iloj ofertitaj por elŝuto de la retejo. . Uzantoj de Tesla aŭtoj kun konto en la retejo service.teslamotors.com ricevis la ŝancon elŝuti ĉiujn modulojn por programistoj. La moduloj estis ĉifritaj en la plej simpla maniero, kaj la ĉifradaj ŝlosiloj estis donitaj de la sama servilo.
Malkompilinte la rezultajn modulojn en Python-kodon, la esploristo malkovris, ke la kodo enhavis enigitajn akreditaĵojn por diversaj Tesla-servoj situantaj sur la interna reto de la kompanio, kiu estis alirita per VPN. Precipe, en la kodo ni povis trovi la uzantajn akreditaĵojn de unu el la gastigantoj en la subdomajno "dev.teslamotors.com" situanta en la interna reto.
Ĝis 2019, Tesla uzis VPN-pakaĵon por konekti aŭtojn al siaj servoj. OpenVPN (poste anstataŭigita per efektivigo bazita sur retkonektilo) uzante ŝlosilon generitan por ĉiu veturilo. La VPN estis uzata por subteni la poŝtelefonan aplikaĵon, preni liston de ŝargstacioj, kaj aliajn similajn servojn. La esploristo provis skani la reton alireblan post konekto de sia aŭto per VPN kaj malkovris, ke la subreto alirebla por klientoj ne estis adekvate izolita de la interna reto de Tesla. Tio inkluzivis aliron al gastiganto en la subdomajno dev.teslamotors.com, por kiu oni trovis akreditaĵojn.
La kompromitita servilo rezultis esti cluster-administra nodo kaj respondecis pri liverado de aplikoj al aliaj serviloj. Ensalutinte en la specifitan gastiganton, ni povis akiri parton de la fontkodo por internaj Tesla-servoj, inkluzive de mothership.vn kaj firmware.vn, kiuj respondecas pri elsendo de komandoj al klientaŭtoj kaj liverado de firmvaro. Pasvortoj kaj ensalutoj por aliri la PostgreSQL kaj MySQL DBMS ankaŭ estis trovitaj sur la servilo. Dum la vojo, montriĝis, ke aliro al la plej multaj el la komponantoj povas esti akirita sen la akreditaĵoj trovitaj en la moduloj, montriĝis, ke sufiĉas sendi HTTP-peton al la Reta API de la subreto alirebla por klientoj.
Interalie, modulo estis trovita sur la servilo, ene de kiu estis dosiero good.dev-test.carkeys.tar kun VPN-ŝlosiloj uzataj dum la evoluprocezo. La specifitaj ŝlosiloj rezultis funkcii kaj permesis nin konekti al la interna VPN de la kompanio vpn.dev.teslamotors.com.
Ankaŭ sur la servilo troviĝis la patrina servokodo, kies studo ebligis determini konektopunktojn al multaj administradservoj. Oni trovis, ke la plej multaj el ĉi tiuj administraj servoj estas disponeblaj en iu ajn aŭto, se ligite per la trovitaj VPN-ŝlosiloj por programistoj. Per manipulado de la servoj, eblis ĉerpi alirŝlosilojn ĝisdatigitajn ĉiutage por iu ajn aŭto, kaj ankaŭ kopiojn de la akreditaĵoj de iu ajn kliento.
La specifita informo ebligis determini la IP-adreson de iu ajn aŭto, kun kiu konekto estis establita per VPN. Ĉar la subreto vpn.dev.teslamotors.com ne estis ĝuste apartigita de la fajroŝirmilo, per simplaj enrutaj manipuladoj eblis atingi la IP de la kliento kaj konekti al sia aŭto per SSH kun radikaj rajtoj, uzante la antaŭe akiritajn akreditaĵojn de la kliento.
Krome, la akiritaj parametroj por la VPN-konekto al la interna reto ebligis sendi petojn al iuj aŭtoj per la Reta API mothership.vn.teslamotors.com, kiuj estis akceptitaj sen plia aŭtentigo. Ekzemple, dum provoj eblis pruvi la determinon de la nuna loko de la aŭto, malŝlosi la pordojn kaj startigi la motoron. La VIN-numero de la veturilo estas utiligita kiel identigilo por elekti atakcelon.
fonto: opennet.ru
