Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Historikisht, shumica e punonjĂ«sve pĂ«rdorin tastiera dhe mausĂ« tĂ« padisave nga Logitech. NdĂ«rsa pĂ«rsĂ«ri po futnim fjalĂ«kalimet tona, ne – specialistĂ«t e ekipit Raccoon Security – u bĂ«mĂ« kuriozĂ« pĂ«r sa e lehtĂ« Ă«shtĂ« tĂ« kalohet mekanizmat e mbrojtjes sĂ« tastierave pa tel? Studimi i realizuar zbulojĂ« dobĂ«si arkitektonike dhe gabime software qĂ« lejojnĂ« qasje nĂ« tĂ« dhĂ«nat e futur. MĂ« poshtĂ« – çfarĂ« arritĂ«m ne.

Pse Logitech?

Sipas mendimit tonë, pajisjet e hyrjes nga kompania Logitech janë disa nga më cilësorët dhe të mira. Shumica e pajisjeve që kemi janë të bazuara në zgjidhjen Logitech. Unifying është një pranuese universale që lejon lidhjen e deri në 6 pajisje. Të gjitha pajisjet e kompatibilitetit me teknologjinë Logitech Unifying shënohen me logon përkatëse. E thjeshtë për t'u përdorur aplikacioni lejon menaxhimin e lidhjes së tastierave pa tel me kompjuterin. Procesi i detajuar i lidhjes së tastierës me pranuese Logitech, ashtu si dhe teknologjia e vet, është trajtuar, për shembull, këtu.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Pranuese me mbështetje për Logitech Unifying

Tastiera mund tĂ« bĂ«het njĂ« burim informacioni pĂ«r sulmuesit. Kompania Logitech, duke marrĂ« parasysh kĂ«rcĂ«nimin e mundshĂ«m, ka kujdesur pĂ«r sigurinĂ« – ka aplikuar algoritmin e enkriptimit AES128 nĂ« kanalin radio tĂ« tastierĂ«s pa tel. Mendimi i parĂ« qĂ« mund tĂ« vizitojĂ« sulmuesin nĂ« njĂ« situatĂ« tĂ« tillĂ« Ă«shtĂ« kapja e informacionit kritik nĂ« kohĂ«n e transmetimit tĂ« tij pĂ«rmes kanalit radio gjatĂ« procedurĂ«s sĂ« lidhjes. Sepse me njĂ« çelĂ«s Ă«shtĂ« e mundur tĂ« kapĂ«sh sinjalet radio tĂ« tastierĂ«s dhe t'i deshifrosh ato. MegjithatĂ«, pĂ«rdoruesit rrallĂ« (ose ndonjĂ«herĂ« kurrĂ«) i ndodh tĂ« lidhen me procedurĂ«n Unifying, dhe njĂ« haker me njĂ« pranuese radio skanuese do t'i duhet tĂ« presĂ« shumĂ« gjatĂ«. PĂ«r mĂ« tepĂ«r, nuk Ă«shtĂ« gjithçka kaq e thjeshtĂ« dhe me procesin e kapjes sĂ« sinjalit. NĂ« studimin e fundit nĂ« qershor 2019, eksperti i sigurisĂ« Markus Mengs publikoi nĂ« rrjet njĂ« mesazh zbĂ«rthimin e njĂ« dobĂ«sie nĂ« firmware-in e vjetĂ«r tĂ« USB-pranueseve Logitech. Ajo i lejon sulmuesve me qasje fizike nĂ« pajisje tĂ« marrin çelĂ«sat e enkriptimit tĂ« kanalit radio dhe tĂ« injektojnĂ« shtypje tĂ« çelĂ«save (CVE-2019-13054).

Ne do ta tregojmë studimin tonë mbi sigurinë e dongle Logitech të bazuar në SoC NRF24 nga Nordic Semiconductor. Do të fillojmë, ndoshta, me kanalin radio.

Si "fluturojnë" të dhënat në kanalin radio

Për analizën frekuencë-kohe të sinjalit radio, kemi përdorur një receptor SDR të bazuar në pajisjen Blade-RF në modalitetin e analizuesit të spektrit (për këtë mund të lexoni gjithashtu) këtu).

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Pajisja SDR Blade-RF

Ne gjithashtu shqyrtuam mundësinë e regjistrimit të katësorëve të sinjalit radio në frekuencën e mesme, për ta analizuar më pas me metoda të përpunimit të sinjaleve digjitale.

Komisioni ShtetĂ«ror i Frekuencave Radio nĂ« FederatĂ«n Ruse Ă«shtĂ« lejuar pĂ«rdorimi i pajisjeve me rreze tĂ« vogla tĂ« veprimit nĂ« gamĂ«n e frekuencave 2400–2483,5 MHz. Kjo Ă«shtĂ« njĂ« gamĂ« shumĂ« "e populluar", ku mund tĂ« gjesh gjithçka: Wi-Fi, Bluetooth, tĂ« gjitha llojet e komandave tĂ« largĂ«ta, sistemeve tĂ« sigurisĂ«, njoftuesve pa tel, mice me tastiera dhe pajisje tĂ« tjera digjitale pa tel.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Spektri i segmentit të frekuencës 2,4 GHz

Situata e ndërhyrjeve në këtë gamë është mjaft e ndërlikuar. Por, megjithatë, kompania Logitech arriti të sigurojë një marrje të besueshme dhe të qëndrueshme duke përdorur protokollin Enhanced ShockBurst në transiverin NRF24 në kombinim me algoritmet e adaptimit të frekuencës.

Kanalet nĂ« gamĂ« janĂ« vendosur nĂ« pozita tĂ« numrave tĂ« plotĂ« MHz, siç Ă«shtĂ« pĂ«rcaktuar nĂ« specifikimet NRF24 Nordic Semiconductor – gjithsej 84 kanale nĂ« rrjetin e frekuencave. Numri i kanaleve tĂ« frekuencĂ«s qĂ« pĂ«rdoren njĂ«kohĂ«sisht nga Logitech Ă«shtĂ«, sigurisht, mĂ« i vogĂ«l. Ne identifikuam pĂ«rdorimin e tĂ« paktĂ«n katĂ«r. PĂ«r shkak tĂ« gamĂ«s sĂ« kufizuar tĂ« spektrit tĂ« analizuesit tĂ« sinjalit, lista e saktĂ« e pozita tĂ« frekuencĂ«s sĂ« pĂ«rdorur nuk u arrit tĂ« pĂ«rcaktohej, por nĂ« kĂ«tĂ« nuk kishte nevojĂ«. Informacioni nga tastiera nĂ« dongle-pranues transmetohet nĂ« modalitetin Burst (me aktivizime tĂ« shkurtra tĂ« transmetuesit) duke pĂ«rdorur modulimin e frekuencĂ«s me dy pozita GFSK nĂ« shpejtĂ«sinĂ« simbolike prej 1 Mbod:

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Sinjali radio i tastierës në përfaqësimin temporal

Receiveri përdor parimin e korrelacionit të marrjes, prandaj në paketën e dërguar janë të pranishëm një preambël dhe një pjesë adrese. Kodimi i qëndrueshëm ndaj ndërhyrjeve nuk aplikohet, trupi i të dhënave është i enkriptuar me algoritmin AES128.

NĂ« pĂ«rgjithĂ«si, ndĂ«rfaqja e radios sĂ« tastierĂ«s pa tel Logitech mund tĂ« karakterizohet si plotĂ«sisht asinkrone, me kompresion statistik dhe adaptim frekuencash. Kjo do tĂ« thotĂ« se transmetuesi i tastierĂ«s ndĂ«rron kanal pĂ«r tĂ« dĂ«rguar çdo paketĂ« tĂ« re. Pranuesi nuk e di paraprakisht as kohĂ«n e dĂ«rgesĂ«s, as kanalit tĂ« frekuencĂ«s, por e di vetĂ«m listĂ«n e tyre. Pranuesi dhe transmetuesi takohet nĂ« kanal pĂ«rmes algoritmeve tĂ« koordinuara tĂ« pĂ«rshkimit dhe pĂ«rgjojjes sĂ« frekuencave, si dhe mekanizmave tĂ« konfirmimeve Enhanced ShockBurst. Ne nuk e kemi hetuar nĂ«se lista e kanaleve Ă«shtĂ« statike. MĂ« shumĂ« gjasa, ndryshimi i saj Ă«shtĂ« i bazuar nĂ« algoritmin e adaptimit tĂ« frekuencĂ«s. Diçka qĂ« i ngjan metodĂ«s PPRÇ (pĂ«rshtatja e rastĂ«sishme e frekuencĂ«s sĂ« punĂ«s) shpĂ«rthyer nĂ« pĂ«rdorimin e burimeve tĂ« frekuencave tĂ« bandĂ«s.

Kështu, në kushte të pasigurisë frekuencë-kohe për marrjen e garantuar të të gjithë sinjaleve të tastierës, një sulmues do t'i duhej të kontrollonte në mënyrë të vazhdueshme të gjithë rrjetin e frekuencave të bandës nga 84 pozita, që kërkon shpenzime të mëdha kohore. Këtu bëhet e qartë pse ndodhet vulnerabiliteti i nxjerrjes së çelësit përmes USB (CVE-2019-13054) në burime pozicionohet si një mundësi për injektimin e goditjeve të çelësit, dhe jo për qasjen e një sulmuesi në të dhënat që jepen nga tastiera. Sidoqoftë, është e qartë se ndërfaqja e radios së tastierës pa tel është mjaft e ndërlikuar dhe siguron një lidhje të besueshme radio midis pajisjeve Logitech në kushte të një mjedisi të vështirë ndërlikues në bandën 2.4 GHz.

Një vështrim në problemin nga brenda

Për hulumtimin, ne kemi zgjedhur një nga tastierat që kemi Logitech K330 dhe donglin Logitech Unifying.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Logitech K330

Le tĂ« hedhim njĂ« sy brenda tastierĂ«s. NjĂ« element interesant pĂ«r hulumtim nĂ« kĂ«rcej – çipi SoC NRF24 nga Nordic Semiconductor.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

SoC NRF24 në pllakën e tastierës pa tel Logitech K330

Firmware Ă«shtĂ« vendosur nĂ« memorien e brendshme, mekanizmat e leximit dhe debug janĂ« tĂ« fikur. PĂ«r fat tĂ« keq, firmware nuk Ă«shtĂ« botuar nĂ« burime tĂ« hapura. Prandaj, ne vendosĂ«m tĂ« qasemi nĂ« problem nga njĂ« kĂ«nd tjetĂ«r – tĂ« studiojmĂ« pĂ«rmbajtjen e brendshme tĂ« receptorit dongl Logitech.

Bota e brendshme e dongle-receptorit është e strukturuar mjaft interesant. Dongle është lehtësisht i hapshëm, ka në bord NRF24 të njohur me një kontrollor USB të integruar dhe mund të riprogramohet si nga ana e USB-së ashtu edhe direkt me programuesin.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Dongle Logitech pa garancinë

Duke qenë se ekziston një mekanizëm standard për përditësimin e firmware-it duke përdorur aplikacionin Firmware Update Tool (nga i cili mund të nxirret versioni më i ri i firmware-it), nuk është e nevojshme të kërkosh firmware-in brenda dongle-it.

ÇfarĂ« u realizua: firmware RQR_012_005_00028.bin u nxorr nga trupi i aplikacionit Firmware Update Tool. PĂ«r tĂ« verifikuar integritetin e saj, kontrollori i dongle-it u lidh me njĂ« kabllo me programuesin ChipProg-48:

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Kabllo e lidhjes së dongle-it Logitech me programuesin ChipProg 48

PĂ«r tĂ« kontrolluar integritetin e firmware-it, ajo u vendos me sukses nĂ« memorjen e kontrollorit dhe funksionoi siç duhet, tastiera dhe miu u lidhĂ«n me dongle-in pĂ«rmes Logitech Unifying. ËshtĂ« e mundur tĂ« ngarkohet njĂ« firmware e modifikuar duke pĂ«rdorur mekanizmin standard tĂ« pĂ«rditĂ«simit, pasi nuk ka mekanizma tĂ« sigurisĂ« kriptografike pĂ«r firmware-in. Ne, pĂ«r qĂ«llime studimi, pĂ«rdorĂ«m lidhjen fizike me programuesin, pasi kjo e bĂ«n debugimin shumĂ« mĂ« tĂ« shpejtĂ«.

Studimi i firmware-it dhe sulmi në inputin e përdoruesit

Çipi NRF24 Ă«shtĂ« projektuar mbi bĂ«rthamĂ«n e pĂ«rpunimit Intel 8051 nĂ« arkitkturĂ«n tradicionale Harvard. PĂ«r bĂ«rthamĂ«n, transiveri Ă«shtĂ« njĂ« pajisje periferike dhe Ă«shtĂ« vendosur nĂ« hapĂ«sirĂ«n adrese si njĂ« grup regjistrash. Dokumentacionin pĂ«r çipin dhe shembujt e kodit burimor mund tĂ« gjenden nĂ« internet, prandaj disasembilimi i firmware-it nuk paraqet vĂ«shtirĂ«si. GjatĂ« inxhinierisĂ« sĂ« kundĂ«rt ne lokalizuam funksionet pĂ«r marrjen e tĂ« dhĂ«nave rreth goditjeve tĂ« çelĂ«save nga kanali radio dhe konvertimin e tyre nĂ« formatin HID pĂ«r t'u transferuar nĂ« mikpritĂ«s pĂ«rmes ndĂ«rfaqes USB. NĂ« adresat e lira tĂ« memorjes u vendos kodi i injeksionit, i cili pĂ«rfshinte mjete pĂ«r kapjen e kontrollit, ruajtjen dhe rikthimin e kontekstit origjinal tĂ« ekzekutimit, si dhe kodin funksional.

Paketa e derguar nga dongli nga kanali radio të shtypjes ose çlirimit të çelësit dekristohet, shndërrohet në një raport standard HID dhe dërgohet në ndërfaqen USB si një tastierë e zakonshme. Në kuadër të studimit, për ne pjesa më interesante përbën raportin HID, e cila përmban bajtin e flagjeve-modifikues dhe një array me 6 bajta me kodet e shtypjes së çelësave (për referencë, informata rreth HID. këtu).

Struktura e raportit HID:

// 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;

Pikërisht para se të dërgohet struktura HID në host, kodi i injektuar merr kontrollin, kopjon në memorie 8 bajta të të dhënave HID origjinale dhe i dërgon ato në kanalin e anashkalimit në formë të hapur. Në kod, kjo duket kështu:

//~~~~~~~~~ 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 ~~~~~~~~~~~~~~~~~~~~~~~~~<

Kanalet anësor krijohen në frekuencën që ne kemi vendosur me karakteristika të caktuara të shpejtësisë së manipulimit dhe strukturës së paketës.

Funksionimi i transiverit në çipin NRF24 bazohet në grafikonin e gjendjeve, në të cilin është organikisht i integruar protokolli Enhanced ShockBurst. Ne zbuluam se pikërisht para se të dërgoheshin të dhënat HID në ndërfaqen USB të hostit, transiveri ndodhej në gjendjen IDLE. Kjo e bën të mundur ri-konfigurimin e tij të sigurt për funksionimin në kanalin anësor. Kodi i injektuar merr kontrollin, ruan konfigurimin origjinal të transiverit në masën e plotë dhe e transferon atë në një mënyrë të re për dërgimin në kanalin anësor. Mekanizmi i konfirmimeve të Enhanced ShockBurst në këtë mënyrë është i fikur, të dhënat HID dërgohen në formë të hapur në eter. Struktura e paketës në kanalin anësor paraqitet në figurën më poshtë, duke marrë epurat e sinjalit pas demodulimit dhe para rikthimit të sinjalizimit të dhënave. Vlera e adresës është zgjedhur për të lehtësuar identifikimin vizual të paketës.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Sinjali i demoduluar i paketës Burst në kanalin anësor

Pas përfundimit të dërgimit të paketës në kanalin anësor, kodi i injektuar rikthen gjendjen e transiverit. Tani ai është përsëri i gatshëm për të punuar në modin e zakonshëm në kontekstin e firmware origjinale.

Në fushat e frekuencës dhe frekuencë-kohe, kanali anësor duket siç është paraqitur në figurë:

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Prezantimi spektral dhe frekuencë-kohe i kanalit anësor

Për të verifikuar funksionimin e çipit NRF24 me firmware të modifikuar, ne kemi ndërtuar një platformë që përfshin një dongl Logitech me firmware të modifikuar, një tastierë pa tel dhe një marrës të ndërtuar mbi një modul kinez me çipin NRF24.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Skema e kapjes së radiosignalit të tastierës Logitech

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Moduli i bazuar në NRF24

Në platformë, gjatë punës normale të tastierës pasi e lidhëm me donglin Logitech, vëzhguam transmetimin e të dhënave të hapura për shtypjen e çelësave në një radiosigkal të anashkalueshëm dhe transmetimin normal të të dhënave të enkriptuara në ndërfaqen kryesore të radios. Kështu, arritëm të sigurojmë kapjen direkte të hyrjes së përdoruesit nga tastiera:

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Rezultati i kapjes së hyrjes së tastierës

Kodi i injektuar sjell vonesa të vogla në funksionimin e firmware-it të donglit. Megjithatë, ato janë shumë të vogla për t'u vërejtur nga përdoruesi.

Siç e kuptoni, për një vektor të tillë sulmi mund të përdoret çdo tastierë Logitech që është e përputhshme me teknologjinë Unifying. Duke qenë se sulmi është i orientuar ndaj marrësit Unifying, i cili përfshihet në shumicën e tastierave Logitech, ai nuk varet nga modeli specifik i tastierës.

Përfundim

Rezultatet e kërkimit sugjerojnë mundësinë e përdorimit të skenarit të shqyrtuar nga sulmuesit: nëse një haker zëvendëson marrësin dongl të një tastiere Logitech për viktimën, ai mund të zbulojë fjalëkalimet e llogarive të viktimës me të gjitha pasojat që vijnë. Nuk duhet haruar se është gjithashtu e mundur të injektohen shtypjet e çelësave, çka do të thotë se ekzekutimi i kodit të rastësishëm në kompjuterin e viktimës nuk paraqet ndonjë vështirësi.

Dhe nëse ndonjëherë sulmuesi është në gjendje të modifikojë me distancë firmware-in e ndonjë dongli Logitech përmes USB? Pastaj, nga donglat e afërta mund të krijohet një rrjet ritransmetuesish dhe të rritet distanca e rrjedhjes. Megjithëse një sulmues "financiarisht i pajisur" mund të përdorë mjete moderne të pranimit të radios me sisteme të larta selektiviteti, pranues sensitiv me kohë të gjatë për ripërcaktimin e frekuencës dhe antena të ngushta për të "dëgjuar" hyrjen nga tastiera dhe për të shtypur çelësat edhe nga ndërtesa përballë.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Pajisje profesionale për pranimin e radios

DukePaske kanali i transmetimit të dhënave të Logitech-it është mjaft i sigurt, prandaj vektori i sulmit të gjetur kërkon akses fizik në receptor, duke e kufizuar shumë sulmuesin. Opcioni i vetëm për mbrojtje në këtë rast mund të ishte përdorimi i mekanizmave të mbrojtjes kriptografike për firmuerin e receptorit, për shembull, verifikimi i nënshkrimit të firmuerit të ngarkuar në anën e receptorit. Por, për fat të keq, NRF24 nuk e mbështet dhe në kuadër të arkitekturës aktuale të pajisjes, realizimi i mbrojtjes është i pamundur. Pra, kujdesi për donglet e tuaja, sepse varianti i përshkruar i sulmit kërkon akses fizik në to.

Ruani donglar tuaja: hulumtimi mbi sigurinë e marrësve të tastierave Logitech

Raccoon Security – njĂ« ekip i specializuar ekspertĂ«sh nga NTÇ «Vulkan» nĂ« fushĂ«n e sigurisĂ« informatike praktike, kriptografisĂ«, elektronikes, zhvillimit tĂ« software-it, dhe krijimit tĂ« softuerit tĂ« nivelit tĂ« ulĂ«t.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster