Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Historikisht, shumica e punonjësve përdorin tastierë me valë dhe minj nga Logitech. Duke futur edhe një herë fjalëkalimet tona, ne, specialistët e ekipit Raccoon Security, pyetëm veten: sa e vështirë është të anashkalosh mekanizmat e sigurisë së tastierës me valë? Studimi zbuloi të meta arkitekturore dhe gabime softuerike që lejojnë aksesin në të dhënat hyrëse. Poshtë prerjes është ajo që kemi marrë.

Pse Logitech?

Sipas mendimit tonĂ«, pajisjet hyrĂ«se Logitech janĂ« ndĂ«r mĂ« cilĂ«soret dhe mĂ« tĂ« pĂ«rshtatshmet. Shumica e pajisjeve qĂ« kemi janĂ« tĂ« bazuara nĂ« zgjidhjen Logitech unifikuese Ă«shtĂ« njĂ« marrĂ«s universal dongle qĂ« ju lejon tĂ« lidhni deri nĂ« 6 pajisje. TĂ« gjitha pajisjet e pajtueshme me teknologjinĂ« Logitech Unifying janĂ« shĂ«nuar me logon e teknologjisĂ« Logitech Unifying. LehtĂ« pĂ«r t'u pĂ«rdorur ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžĐ” Ju lejon tĂ« menaxhoni lidhjen e tastierave me valĂ« me kompjuterin tuaj. Procesi i lidhjes sĂ« tastierĂ«s me dongle marrĂ«s Logitech, si dhe vetĂ« teknologjia, mbulohet, pĂ«r shembull, kĂ«tu.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Marrës dongle me mbështetje Logitech Unifying

Tastiera mund tĂ« bĂ«het njĂ« burim informacioni pĂ«r sulmuesit. Logitech, duke marrĂ« parasysh kĂ«rcĂ«nimin e mundshĂ«m, u kujdes pĂ«r sigurinĂ« - pĂ«rdori algoritmin e kriptimit AES128 nĂ« kanalin radio tĂ« tastierĂ«s pa tel. Mendimi i parĂ« qĂ« mund tĂ« ketĂ« njĂ« sulmues nĂ« kĂ«tĂ« situatĂ« Ă«shtĂ« tĂ« pĂ«rgjojĂ« informacionin kryesor kur ai transmetohet pĂ«rmes njĂ« kanali radio gjatĂ« procedurĂ«s sĂ« lidhjes. NĂ« fund tĂ« fundit, nĂ«se keni njĂ« çelĂ«s, mund tĂ« pĂ«rgjoni sinjalet e radios sĂ« tastierĂ«s dhe t'i deshifroni ato. SidoqoftĂ«, pĂ«rdoruesi rrallĂ« (ose edhe kurrĂ«) duhet tĂ« unifikojĂ« tastierĂ«n, dhe njĂ« haker me njĂ« radio skanimi do tĂ« duhet tĂ« presĂ« njĂ« kohĂ« tĂ« gjatĂ«. PĂ«r mĂ« tepĂ«r, jo gjithçka Ă«shtĂ« aq e thjeshtĂ« me vetĂ« procesin e pĂ«rgjimit. NĂ« studimin e fundit nĂ« qershor 2019, eksperti i sigurisĂ« Markus Mengs publikoi nĂ« internet ŃĐŸĐŸĐ±Ń‰Đ”ĐœĐžĐ” nĂ« lidhje me zbulimin e njĂ« dobĂ«sie nĂ« firmware-in e vjetĂ«r tĂ« dongleve USB Logitech. Ai i lejon sulmuesit me qasje fizike nĂ« pajisje tĂ« marrin çelĂ«sat e enkriptimit tĂ« kanaleve tĂ« radios dhe tĂ« injektojnĂ« goditjet e tasteve (CVE-2019-13054).

Ne do të flasim për studimin tonë të sigurisë të dongle Logitech bazuar në NRF24 SoC nga Nordic Semiconductor. Le të fillojmë, ndoshta, me vetë kanalin e radios.

Si "fluturojnë" të dhënat në një kanal radioje

Për analizën e frekuencës kohore të sinjalit të radios, ne përdorëm një marrës SDR të bazuar në pajisjen Blade-RF në modalitetin e analizuesit të spektrit (mund të lexoni gjithashtu për këtë këtu).

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Pajisja SDR Blade-RF

Ne kemi shqyrtuar gjithashtu mundësinë e regjistrimit të kuadrateve të sinjalit radio në një frekuencë të ndërmjetme, të cilat më pas mund të analizohen duke përdorur teknikat e përpunimit të sinjalit dixhital.

Komisioni ShtetĂ«ror pĂ«r Frekuencat e Radios nĂ« FederatĂ«n Ruse i pushuar nga puna pĂ«r pĂ«rdorim nga pajisjet me rreze tĂ« shkurtĂ«r, diapazoni i frekuencĂ«s Ă«shtĂ« 2400–2483,5 MHz. Ky Ă«shtĂ« njĂ« gamĂ« shumĂ« "e populluar", nĂ« tĂ« cilĂ«n nuk do tĂ« gjeni asgjĂ«: Wi-Fi, Bluetooth, tĂ« gjitha llojet e telekomandave, sistemet e sigurisĂ«, detektorĂ«t pa tel, minjtĂ« me tastierĂ« dhe pajisje tĂ« tjera dixhitale pa tel.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Spektri i brezit 2,4 GHz

Mjedisi i ndërhyrjes në gamë është mjaft kompleks. Përkundër kësaj, Logitech ishte në gjendje të siguronte pritje të besueshme dhe të qëndrueshme përmes përdorimit të protokollit të Enhanced ShockBurst në transmetuesin NRF24 në kombinim me algoritmet e përshtatjes së frekuencës.

Kanalet në një brez vendosen në pozicionet me numër të plotë MHz siç përcaktohet në specifikimet NRF24 Nordic Semiconductor - gjithsej 84 kanale në rrjetin e frekuencave. Numri i kanaleve të frekuencave të përdorura njëkohësisht nga Logitech është, natyrisht, më i vogël. Ne identifikuam përdorimin e të paktën katër. Për shkak të gjerësisë së brezit të kufizuar të analizuesit të spektrit të sinjalit të përdorur, lista e saktë e pozicioneve të frekuencës së përdorur nuk mund të përcaktohet, por kjo nuk ishte e nevojshme. Informacioni nga tastiera në dongle marrës transmetohet në modalitetin Burst (ndizet e shkurtër transmetuesi) duke përdorur modulimin e frekuencës me dy pozicione GFSK me një shpejtësi simbolike prej 1 Mbaud:

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Sinjali i radios së tastierës në paraqitjen e kohës

Marrësi përdor parimin e korrelacionit të marrjes, kështu që paketa e transmetuar përmban një preambulë dhe një pjesë adresash. Kodimi rezistent ndaj zhurmës nuk përdoret; trupi i të dhënave është i koduar me algoritmin AES128.

Në përgjithësi, ndërfaqja radio e tastierës wireless Logitech mund të karakterizohet si plotësisht asinkrone me multipleksim statistikor dhe përshtatje të frekuencës. Kjo do të thotë që transmetuesi i tastierës ndërron kanalin për të transmetuar çdo paketë të re. Marrësi nuk e di paraprakisht as kohën e transmetimit dhe as kanalin e frekuencës, por dihet vetëm lista e tyre. Marrësi dhe transmetuesi takohen në kanal falë algoritmeve të koordinuara të anashkalimit dhe dëgjimit të frekuencës, si dhe mekanizmave të njohjes së përmirësuar të ShockBurst. Ne nuk kemi hetuar nëse lista e kanaleve është statike. Ndoshta, ndryshimi i tij është për shkak të algoritmit të përshtatjes së frekuencës. Diçka afër metodës së kërcimit të frekuencës (akordim pseudo-rastësor i frekuencës së funksionimit) mund të shihet në përdorimin e burimit të frekuencës së diapazonit.

Kështu, në kushtet e pasigurisë së frekuencës së kohës, për të siguruar marrjen e garantuar të të gjitha sinjaleve të tastierës, një sulmues do të duhet të monitorojë vazhdimisht të gjithë rrjetin e frekuencës prej 84 pozicionesh, gjë që kërkon një kohë të konsiderueshme. Këtu bëhet e qartë pse cenueshmëria e nxjerrjes së çelësit USB (CVE-2019-13054) në burime pozicionuar si aftësi për të injektuar tastierë, në vend që të fitoni aksesin e një sulmuesi në të dhënat e futura nga tastiera. Natyrisht, ndërfaqja radio e tastierës me valë është mjaft komplekse dhe siguron komunikim të besueshëm radio midis pajisjeve Logitech në kushte të vështira ndërhyrjeje në brezin 2,4 GHz.

Një vështrim i problemit nga brenda

Për studimin tonë, ne zgjodhëm një nga tastierat tona ekzistuese Logitech K330 dhe një dongle Logitech Unifying.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Logitech K330

Le të hedhim një vështrim brenda tastierës. Një element interesant në tabelë për t'u studiuar është çipi SoC NRF24 nga Nordic Semiconductor.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

SoC NRF24 në tastierën me valë Logitech K330

Firmware ndodhet në memorien e brendshme, mekanizmat e leximit dhe korrigjimit janë të çaktivizuar. Fatkeqësisht, firmware nuk është publikuar në burime të hapura. Prandaj, vendosëm t'i qasemi problemit nga ana tjetër - të studiojmë përmbajtjen e brendshme të marrësit dongle Logitech.

"Bota e brendshme" e marrësit të dongle është mjaft interesante. Dongle çmontohet lehtësisht, mban në bord lëshimin e njohur NRF24 me një kontrollues të integruar USB dhe mund të riprogramohet si nga ana USB, ashtu edhe direkt nga programuesi.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Dongle Logitech pa strehim

Meqenëse ekziston një mekanizëm standard për azhurnimin e firmuerit duke përdorur Aplikacionet e veglave të përditësimit të firmuerit (nga i cili mund të nxirrni versionin e përditësuar të firmuerit), nuk ka nevojë të kërkoni firmuerin brenda dongle.

ÇfarĂ« u bĂ«: firmware RQR_012_005_00028.bin u nxor nga trupi i aplikacionit Firmware Update Tool. PĂ«r tĂ« kontrolluar integritetin e tij, kontrolluesi i dongle u lidh me njĂ« kabllo te programuesi ChipProg-48:

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Kabllo për lidhjen e dongle Logitech me programuesin ChipProg 48

PĂ«r tĂ« kontrolluar integritetin e firmuerit, ai u vendos me sukses nĂ« kujtesĂ«n e kontrolluesit dhe funksionoi si duhet, tastiera dhe miu u lidhĂ«n me dongle pĂ«rmes Logitech Unifying. ËshtĂ« e mundur tĂ« ngarkoni firmware tĂ« modifikuar duke pĂ«rdorur mekanizmin standard tĂ« pĂ«rditĂ«simit, pasi nuk ka mekanizma mbrojtĂ«s kriptografik pĂ«r firmuerin. PĂ«r qĂ«llime kĂ«rkimore, ne pĂ«rdorĂ«m njĂ« lidhje fizike me programuesin, pasi korrigjimi i gabimeve Ă«shtĂ« shumĂ« mĂ« i shpejtĂ« nĂ« kĂ«tĂ« mĂ«nyrĂ«.

Hulumtimi i firmuerit dhe sulmi ndaj hyrjes së përdoruesit

Çipi NRF24 Ă«shtĂ« projektuar bazuar nĂ« bĂ«rthamĂ«n informatike Intel 8051 nĂ« arkitekturĂ«n tradicionale tĂ« Harvardit. PĂ«r bĂ«rthamĂ«n, marrĂ«si vepron si njĂ« pajisje periferike dhe vendoset nĂ« hapĂ«sirĂ«n e adresave si njĂ« grup regjistrash. Dokumentacioni pĂ«r shembujt e çipit dhe kodit burimor mund tĂ« gjendet nĂ« internet, kĂ«shtu qĂ« çmontimi i firmuerit nuk Ă«shtĂ« i vĂ«shtirĂ«. GjatĂ« inxhinierisĂ« sĂ« kundĂ«rt, ne lokalizuam funksionet pĂ«r marrjen e tĂ« dhĂ«nave tĂ« shtypjes sĂ« tastierĂ«s nga kanali i radios dhe konvertimin e tyre nĂ« formatin HID pĂ«r transmetim nĂ« host pĂ«rmes ndĂ«rfaqes USB. Kodi i injektimit u vendos nĂ« adresat e memories sĂ« lirĂ«, tĂ« cilat pĂ«rfshinin mjete pĂ«r pĂ«rgjimin e kontrollit, ruajtjen dhe rivendosjen e kontekstit origjinal tĂ« ekzekutimit, si dhe kodin funksional.

Paketa e shtypjes ose lëshimit të një çelësi të marrë nga dongle nga kanali i radios deshifrohet, konvertohet në një raport standard HID dhe dërgohet në ndërfaqen USB si nga një tastierë e zakonshme. Si pjesë e studimit, pjesa e raportit HID që është më me interes për ne është pjesa e raportit HID që përmban një bajt me flamuj modifikues dhe një grup prej 6 bajte me kode të shtypjes së tastierës (për referencë, informacione rreth HID këtu).

Struktura e raportit të 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;

Menjëherë përpara transmetimit të strukturës HID te hosti, kodi i injektuar merr kontrollin, kopjon 8 bajt të të dhënave origjinale HID në memorie dhe i dërgon ato në kanalin anësor të radios në tekst të qartë. Në kod 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 ~~~~~~~~~~~~~~~~~~~~~~~~~<

Kanali anësor është i organizuar në një frekuencë që ne vendosim me karakteristika të caktuara të shpejtësisë së manipulimit dhe strukturës së paketës.

Funksionimi i transmetuesit në çip NRF24 bazohet në një grafik gjendjeje në të cilin protokolli i Enhanced ShockBurst është i integruar organikisht. Ne zbuluam se menjëherë përpara transmetimit të të dhënave HID në ndërfaqen USB pritës, marrësi ishte në gjendje IDLE. Kjo bën të mundur rikonfigurimin e sigurt për të funksionuar në një kanal anësor. Kodi i injektuar kap kontrollin, ruan plotësisht konfigurimin origjinal të marrësit dhe e kalon atë në një mënyrë të re transmetimi në kanalin anësor. Mekanizmi i konfirmimit të Enhanced ShockBurst është i çaktivizuar në këtë modalitet; të dhënat HID transmetohen në formë të qartë përmes ajrit. Struktura e paketës në kanalin anësor është paraqitur në figurën më poshtë, diagramet e sinjalit janë marrë pas demodulimit dhe para rivendosjes së sinkronizimit të orës së të dhënave. Vlera e adresës u zgjodh për lehtësinë e identifikimit vizual të paketës.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Sinjali i demoduluar i shpërthimit të shpërthimit në kanalin anësor

Pasi paketa të transmetohet në kanalin anësor, kodi i injektuar rikthen gjendjen e marrësit. Tani është përsëri gati për të punuar normalisht në kontekstin e firmuerit origjinal.

Në domenet e frekuencës dhe frekuencës së kohës, kanali anësor duket kështu:

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Paraqitja spektrale dhe frekuenca kohore e kanalit anësor

Për të testuar funksionimin e çipit NRF24 me firmuerin e modifikuar, ne montuam një stendë që përfshinte një dongle Logitech me firmware të modifikuar, një tastierë me valë dhe një marrës të montuar në bazë të një moduli kinez me çipin NRF24.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Qarku i përgjimit të sinjalit të radios me tastierë pa tel Logitech

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Moduli i bazuar në NRF24

Në stol, me tastierën që funksiononte normalisht, pasi e lidhëm me donglein e Logitech, vëzhguam transmetimin e të dhënave të qarta për goditjet e tasteve në kanalin e radios anësore dhe transmetimin normal të të dhënave të koduara në ndërfaqen kryesore të radios. Kështu, ne ishim në gjendje të siguronim përgjim të drejtpërdrejtë të hyrjes së tastierës së përdoruesit:

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Rezultati i përgjimit të hyrjes së tastierës

Kodi i injektuar sjell vonesa të vogla në funksionimin e firmuerit të dongle. Megjithatë, ato janë shumë të vogla që përdoruesi t'i vërë re.

Siç mund ta imagjinoni, çdo tastierë Logitech që është në përputhje me teknologjinë Unifying mund të përdoret për këtë vektor sulmi. Meqenëse sulmi synon marrësin Unifying të përfshirë në shumicën e tastierave Logitech, ai është i pavarur nga modeli specifik i tastierës.

Përfundim

Rezultatet e studimit sugjerojnë përdorimin e mundshëm të skenarit të konsideruar nga sulmuesit: nëse një haker zëvendëson viktimën me një marrës dongle për një tastierë pa tel Logitech, atëherë ai do të jetë në gjendje të zbulojë fjalëkalimet në llogaritë e viktimës me të gjitha ato që pasojnë. pasojat. Mos harroni se është gjithashtu e mundur të injektoni tastierë, që do të thotë se nuk është e vështirë të ekzekutoni kodin arbitrar në kompjuterin e viktimës.

Po sikur papritmas një sulmues të mund të modifikojë nga distanca firmuerin e çdo dongle të Logitech nëpërmjet USB? Më pas, nga dongles të vendosura ngushtë, mund të krijoni një rrjet përsëritësish dhe të rrisni distancën e rrjedhjes. Megjithëse një sulmues "i pasur financiarisht" do të jetë në gjendje të "dëgjojë" hyrjen e tastierës dhe shtypjen e tasteve edhe nga një ndërtesë fqinje, pajisjet moderne të pritjes së radios me sisteme shumë selektive, marrës të ndjeshëm radio me kohë të shkurtër sintonizimi me frekuencë dhe antena shumë të drejtuara do t'i lejojnë ato. për të "dëgjuar" hyrjen e tastierës dhe shtypjen e tasteve edhe nga një ndërtesë fqinje.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Pajisje profesionale radio

Meqenëse kanali i transmetimit të të dhënave me valë të tastierës Logitech është mjaft i mbrojtur, vektori i sulmit të gjetur kërkon qasje fizike në marrës, gjë që kufizon shumë sulmuesin. Opsioni i vetëm i mbrojtjes në këtë rast do të ishte përdorimi i mekanizmave të mbrojtjes kriptografike për firmuerin e marrësit, për shembull, kontrollimi i nënshkrimit të firmuerit të ngarkuar në anën e marrësit. Por, për fat të keq, NRF24 nuk e mbështet këtë dhe është e pamundur të zbatohet mbrojtja brenda arkitekturës aktuale të pajisjes. Pra, kujdesuni për dongles tuaj, sepse opsioni i sulmit të përshkruar kërkon qasje fizike në to.

Kujdesuni për donglet tuaj: Studimi i sigurisë së marrësit të tastierës Logitech

Raccoon Security është një ekip i veçantë ekspertësh nga Qendra e Kërkimit dhe Zhvillimit Vulcan në fushën e sigurisë praktike të informacionit, kriptografisë, dizajnit të qarkut, inxhinierisë së kundërt dhe krijimit të softuerit të nivelit të ulët.

Burimi: www.habr.com

Bleni njĂ« host tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, serverĂ« VPS VDS đŸ”„ Bleni hosting tĂ« besueshĂ«m tĂ« faqeve tĂ« internetit me mbrojtje DDoS, servera VPS VDS | ProHoster