Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Historikoki, langile gehienek Logitech-en haririk gabeko teklatuak eta saguak erabiltzen dituzte. Gure pasahitzak berriro sartuta, Raccoon Security taldeko espezialistok galdetu genion geure buruari: zein zaila da hari gabeko teklatuen segurtasun mekanismoak saihestea? Ikerketak akats arkitektonikoak eta software akatsak agerian utzi ditu sarrerako datuetara sarbidea ahalbidetzen dutenak. Ebakiaren azpian dago lortu duguna.

Zergatik Logitech?

Gure ustez, Logitech sarrerako gailuak kalitate goreneko eta erosoenetakoak dira. Dauzkagun gailu gehienak Logitech soluzioan oinarritzen dira batzeko 6 gailu konektatzeko aukera ematen duen dongle hargailu unibertsala da. Logitech Unifying teknologiarekin bateragarriak diren gailu guztiak Logitech Unifying teknologiaren logotipoarekin markatuta daude. Erabiltzeko erraza ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Haririk gabeko teklatuen konexioa zure ordenagailura kudeatzeko aukera ematen du. Teklatua Logitech hargailu donglera konektatzeko prozesua, baita teknologia bera ere, estaltzen da, adibidez, Hemen.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Dongle hargailua Logitech Unifying laguntzarekin

Teklatua erasotzaileentzako informazio iturri bihur daiteke. Logitech-ek, balizko mehatxua kontuan hartuta, segurtasuna zaindu zuen - AES128 enkriptazio algoritmoa erabili zuen hari gabeko teklatuaren irrati-kanalean. Erasotzaile batek egoera honetan izan dezakeen lehenengo pentsamendua da lotura-prozeduran irrati-kanal batetik transmititzen denean funtsezko informazioa atzematea. Azken finean, gako bat baduzu, teklatuaren irrati-seinaleak atzeman eta deszifratu ditzakezu. Hala ere, erabiltzaileak oso gutxitan (edo inoiz ez) bateratu behar izaten du teklatua, eta eskaneatzen duen irratia duen hacker batek denbora luzez itxaron beharko du. Gainera, dena ez da hain erraza atzemate-prozesuarekin berarekin. 2019ko ekainean egindako azken ikerketan, Markus Mengs segurtasun adituak sarean argitaratu zuen mezua Logitech USB dongleen firmware zaharrean ahultasun bat aurkitzeari buruz. Gailuetarako sarbide fisikoa duten erasotzaileei irrati-kanalaren enkriptatze-gakoak lortzeko eta tekla-sakatzeak injektatzeko aukera ematen die (CVE-2019-13054).

Nordic Semiconductor-en NRF24 SoC-n oinarritutako Logitech dongle-ren segurtasun azterketari buruz hitz egingo dugu. Has gaitezen, beharbada, irrati katearekin berarekin.

Nola "hegan" egiten duten datuak irrati-kanal batean

Irrati-seinalearen denbora-maiztasuna aztertzeko, Blade-RF gailuan oinarritutako SDR hargailu bat erabili dugu espektro analizatzaile moduan (horri buruz ere irakur dezakezu Hemen).

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

SDR Blade-RF gailua

Irrati-seinalearen koadraturak tarteko maiztasun batean grabatzeko aukera ere aztertu genuen, gero seinale digitala prozesatzeko teknikak erabiliz aztertu ahal izateko.

Errusiar Federazioko Irrati Maiztasunen Estatu Batzordea baimenduta irismen laburreko gailuek erabiltzeko, maiztasun-tartea 2400-2483,5 MHz da. Oso β€œpopulatua” den barruti bat da, eta bertan ez duzu ezer aurkituko: Wi-Fi, Bluetooth, mota guztietako urrutiko aginteak, segurtasun sistemak, haririk gabeko detektagailuak, teklatudun saguak eta hari gabeko beste gailu digital batzuk.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

2,4 GHz bandako espektroa

Interferentzia ingurunea nahiko konplexua da. Hala eta guztiz ere, Logitech-ek harrera fidagarria eta egonkorra eskaintzeko gai izan zen Enhanced ShockBurst protokoloaren erabileraren bidez NRF24 transzisorean maiztasuna egokitzeko algoritmoekin batera.

Banda bateko kanalak MHz-ko posizio osoetan jartzen dira, atalean definitutako moduan zehaztapenak NRF24 Nordic Semiconductor - guztira 84 kanal maiztasun sarean. Logitech-ek aldi berean erabiltzen dituen maiztasun-kanalen kopurua, noski, txikiagoa da. Gutxienez lauren erabilera identifikatu dugu. Erabilitako seinaleen espektro analizatzailearen banda-zabalera mugatua dela eta, erabilitako maiztasun-posizioen zerrenda zehatza ezin izan da zehaztu, baina hori ez zen beharrezkoa. Teklatutik hartzailearen donglera informazioa Burst moduan transmititzen da (igorlea piztutako bira laburrak) bi posizioko GFSK maiztasun modulazioa erabiliz, 1 Mbaud-eko ikur-tasa batean:

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Teklatuaren irrati-seinalea denbora irudikapenean

Hartzaileak harreraren korrelazio-printzipioa erabiltzen du, beraz, igorritako paketeak hitzaurre bat eta helbide zati bat ditu. Ez da zaratari erresistentea den kodeketa erabiltzen; datuen gorputza AES128 algoritmoarekin zifratzen da.

Oro har, Logitech haririk gabeko teklatuaren irrati-interfazea guztiz asinkronoa dela ezaugarritu daiteke multiplexazio estatistikoarekin eta maiztasun-egokitzapenarekin. Horrek esan nahi du teklatuaren transmisoreak kanala aldatzen duela pakete berri bakoitza transmititzeko. Hartzaileak ez du aldez aurretik ezagutzen ez transmisio-denbora ez maiztasun-kanala, baina haien zerrenda baino ez da ezagutzen. Hartzaileak eta igorleak kanalean elkartzen dira maiztasun koordinatuko saihesbide eta entzuteko algoritmoei esker, baita ShockBurst onarpen-mekanismo hobetuei esker. Ez dugu ikertu kanalen zerrenda estatikoa den. Seguruenik, haren aldaketa maiztasun-egokitzapen algoritmoari zor zaio. Frekuentzia-jauziaren metodotik hurbil dagoen zerbait (funtzionamendu-maiztasunaren sasi-ausazko sintonizazioa) ikus daiteke barrutiaren maiztasun-baliabidearen erabileran.

Horrela, denbora-maiztasunaren ziurgabetasun baldintzetan, teklatuaren seinale guztien harrera bermatua bermatzeko, erasotzaileak etengabe kontrolatu beharko du 84 posizioko maiztasun-sare osoa, eta horrek denbora handia behar du. Hemen argi geratzen da zergatik USB giltza erauzteko ahultasuna (CVE-2019-13054) iturrietan teklak sakatzeak injektatzeko gaitasun gisa kokatuta, erasotzaile batek teklatutik sartutako datuetarako sarbidea lortu beharrean. Jakina, hari gabeko teklatuaren irrati-interfazea nahiko konplexua da eta 2,4 GHz-ko bandako interferentzia baldintza zailetan Logitech gailuen arteko irrati-komunikazio fidagarria eskaintzen du.

Arazoari barrutik begirada bat

Gure azterketarako, gure Logitech K330 teklatuetako bat eta Logitech Unifying dongle bat aukeratu ditugu.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Logitech K330

Ikus dezagun teklatuaren barrura. Aztertzeko taulako elementu interesgarri bat Nordic Semiconductor-en SoC NRF24 txipa da.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

SoC NRF24 Logitech K330 haririk gabeko teklatuaren plakan

Firmwarea barne memorian dago, irakurketa eta arazketa mekanismoak desgaituta daude. Zoritxarrez, firmwarea ez da iturri irekietan argitaratu. Hori dela eta, arazoari beste alde batetik heltzea erabaki genuen - Logitech dongle hargailuaren barne-edukia aztertzea.

Dongle hargailuaren "barneko mundua" nahiko interesgarria da. Donglea erraz desmuntatzen da, NRF24 bertsio ezaguna darama USB kontrolagailu integratuta eta USB aldetik zein programatzailetik zuzenean birprogramatu daiteke.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Logitech dongle etxebizitzarik gabe

Erabiliz firmwarea eguneratzeko mekanismo estandar bat dagoenez Firmwarea eguneratzeko tresnaren aplikazioak (Bertatik eguneratutako firmware bertsioa atera dezakezu), ez dago dongle barruan firmwarea bilatu beharrik.

Zer egin zen: RQR_012_005_00028.bin firmwarea atera da Firmware Update Tool aplikazioaren gorputzetik. Bere osotasuna egiaztatzeko, dongle kontrolagailua kable batekin konektatu zen ChipProg-48 programatzaileari:

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Logitech donglea ChipProg 48 programatzailearekin konektatzeko kablea

Firmwarearen osotasuna kontrolatzeko, kontrolagailuaren memorian behar bezala jarri zen eta behar bezala funtzionatu zuen, teklatua eta sagua donglera konektatu ziren Logitech Unifying bidez. Aldatutako firmwarea eguneratzeko mekanismo estandarra erabiliz igo daiteke, ez baitago firmwarerako babes kriptografiko mekanismorik. Ikerketa helburuetarako, programatzailearekiko konexio fisikoa erabili dugu, modu honetan arazketa askoz azkarragoa baita.

Firmwarearen ikerketa eta erabiltzaileen sarreraren aurkako erasoa

NRF24 txipa Harvardeko arkitektura tradizionaleko Intel 8051 nukleo informatikoan oinarrituta diseinatu da. Nukleorako, transceptor-ak gailu periferiko gisa jokatzen du eta helbide-espazioan kokatzen da erregistro multzo gisa. Txiparen eta iturburu-kodeen adibideen dokumentazioa Interneten aurki daiteke, beraz, firmwarea desmuntatzea ez da zaila. Alderantzizko ingeniaritzan, irrati-kanaletik tekla sakatzearen datuak jasotzeko eta HID formatuan bihurtzeko funtzioak lokalizatu genituen USB interfazearen bidez ostalarira igortzeko. Injekzio-kodea memoria libreko helbideetan jarri zen, kontrola atzemateko, jatorrizko exekuzio-testuingurua gordetzeko eta leheneratzeko tresnak barne, baita kode funtzionala ere.

Irrati-kanaletik dongle-k jasotako gako bat sakatu edo askatzeko paketea deszifratzen da, HID txosten estandar batean bihurtzen da eta USB interfazera bidaltzen da teklatu arrunt batetik bezala. Azterketaren baitan, guretzat gehien interesatzen zaigun HID txostenaren zatia aldatzaile-marken byte bat eta 6 byte-ko array bat tekla sakatzearen kodeak dituen HID txostenaren zatia da (erreferentzia gisa, HIDari buruzko informazioa). Hemen).

HID txostenaren egitura:

// Keyboard HID report structure.
// See https://flylib.com/books/en/4.168.1.83/1/ (last access 2018 december)
// "Reports and Report Descriptors", "Programming the Microsoft Windows Driver Model"
typedef struct{
    uint8_t Modifiers;
    uint8_t Reserved;
    uint8_t KeyCode[6];
}HidKbdReport_t;

HID egitura ostalariari transmititu aurretik, injektatutako kodeak hartzen du kontrola, jatorrizko HID datuen 8 byte kopiatzen ditu memorian eta irratiaren alboko kanalera bidaltzen ditu testu garbian. Kodean honela ikusten da:

//~~~~~~~~~ Send data via radio ~~~~~~~~~~~~~~~~~~~~~~~~~>
// Profiling have shown time execution ~1.88 mSec this block of code
SaveRfState();                  // save transceiver state
RfInitForTransmition(TransmitRfAddress);        // configure for special trnsmition
hal_nrf_write_tx_payload_noack(pDataToSend,sizeof(HidKbdReport_t)); // Write payload to radio TX FIFO
CE_PULSE();                 // Toggle radio CE signal to start transmission
RestoreRfState();               // restore original transceiver state
//~~~~~~~~~ Send data via radio ~~~~~~~~~~~~~~~~~~~~~~~~~<

Alboko kanala manipulazio-abiaduraren eta pakete-egituraren zenbait ezaugarrirekin ezartzen dugun maiztasun batean antolatzen da.

Transceptor-aren funtzionamendua txipan NRF24 Enhanced ShockBurst protokoloa organikoki integratuta dagoen egoera grafiko batean oinarritzen da. Ostalari USB interfazera HID datuak transmititu baino lehen, transceptorea IDLE egoeran zegoela ikusi genuen. Horrek modu seguruan birkonfiguratzea ahalbidetzen du alboko kanal batean funtzionatzeko. Injektatutako kodeak kontrola atzematen du, jatorrizko transceptor konfigurazioa osorik gordetzen du eta transmisio modu berri batera aldatzen du alboko kanalean. Enhanced ShockBurst berrespen-mekanismoa desgaituta dago modu honetan; HID datuak forma argian transmititzen dira airean. Alboko kanaleko paketearen egitura beheko irudian ageri da, seinale-diagramak demodulazio ondoren eta datuen erlojuaren sinkronizazioa berreskuratu aurretik lortu ziren. Helbidearen balioa paketearen identifikazio bisuala errazteko aukeratu da.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Leherketa demodulatua alboko kanalean

Paketea alboko kanalera transmititu ondoren, injektatutako kodeak transceptor-aren egoera berrezartzen du. Orain berriro prest dago jatorrizko firmwarearen testuinguruan normalean lan egiteko.

Maiztasun eta denbora-maiztasun domeinuetan, alboko kanalak honela dauka:

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Alboko kanalaren irudikapen espektrala eta denbora-maiztasuna

NRF24 txiparen funtzionamendua probatzeko, firmware aldatutako Logitech dongle bat, haririk gabeko teklatua eta NRF24 txipa duen modulu txinatar batean oinarrituta muntatutako hargailu bat biltzen zituen stand bat muntatu genuen.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Logitech haririk gabeko teklatuaren irrati-seinalea atzemateko zirkuitua

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

NRF24 oinarritutako modulua

Aulkian, teklatua normal funtzionatzen zuela, Logitech dongle-ra konektatu ondoren, alboko irrati-kanalaren tekla sakeei buruzko datu argien transmisioa eta irrati-interfaze nagusian zifratutako datuen transmisio normala ikusi genuen. Horrela, erabiltzailearen teklatuaren sarrera zuzenean atzematea eman ahal izan dugu:

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Teklatuaren sarrera atzematearen emaitza

Injektatutako kodeak dongle firmwarearen funtzionamenduan atzerapen txikiak eragiten ditu. Hala ere, txikiegiak dira erabiltzaileak ohartzeko.

Imajina dezakezun bezala, Unifying teknologiarekin bateragarria den Logitech teklatu oro erabil daiteke eraso-bektore honetarako. Erasoa Logitech teklatu gehienekin batera sartutako Unifying hargailua helburu duenez, teklatu eredu zehatzetik independentea da.

Ondorioa

Ikerketaren emaitzek iradokitzen dute erasotzaileek kontuan hartutako eszenatokia erabil dezaketela: hacker batek biktima Logitech haririk gabeko teklatu baterako dongle hargailu batekin ordezkatzen badu, orduan biktimaren kontuen pasahitzak aurkitu ahal izango ditu ondoriozko guztiarekin. ondorioak. Ez ahaztu tekla sakatzea ere posible dela, eta horrek esan nahi du ez dela zaila biktimaren ordenagailuan kode arbitrarioa exekutatzeko.

Zer gertatuko litzateke bat-batean erasotzaile batek USB bidez Logitech dongleren firmwarea urrunetik alda badezake? Ondoren, hurbil dauden dongleetatik, errepikagailuen sare bat sor dezakezu eta ihesaren distantzia handitu. Erasotzaile "finantzario aberatsa" batek teklatuaren sarrera eta teklak sakatu ondoko eraikin batetik ere "entzuteko" gai izango diren arren, sistema oso selektibodun irrati-harrerako ekipamendu modernoek, maiztasun laburreko sintonizazio denbora laburreko irrati-hargailu sentikorrek eta norabide osoko antenen aukera emango dute. teklatuaren sarrera "entzuteko" eta teklak sakatu ondoko eraikin batetik ere.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Irrati-ekipo profesionala

Logitech teklatuaren haririk gabeko datuen transmisio kanala nahiko ondo babestuta dagoenez, aurkitutako eraso-bektoreak hargailurako sarbide fisikoa behar du, eta horrek erasotzailea asko mugatzen du. Kasu honetan babes-aukera bakarra hargailuaren firmwarerako babes kriptografiko mekanismoak erabiltzea izango litzateke, adibidez, hartzailearen aldean kargatutako firmwarearen sinadura egiaztatzea. Baina, zoritxarrez, NRF24-k ez du hau onartzen eta ezinezkoa da babesa ezartzea egungo gailuaren arkitekturan. Beraz, zaindu zure dongleak, deskribatutako eraso aukerak haietarako sarbide fisikoa eskatzen duelako.

Zaindu zure dongleak: Logitech teklatuaren hargailuaren segurtasun azterketa

Raccoon Security Vulcan Ikerketa eta Garapen Zentroko aditu talde berezi bat da, informazioaren segurtasun praktikoaren, kriptografiaren, zirkuituen diseinuaren, alderantzizko ingeniaritza eta behe-mailako software-sorkuntzaren arloan.

Iturria: www.habr.com

Gehitu iruzkin berria