
Yn hanesyddol, mae'r rhan fwyaf o weithwyr yn defnyddio bysellfyrddau diwifr a llygod o Logitech. Gan fynd i mewn i'n cyfrineiriau unwaith eto, fe wnaethom ni, arbenigwyr tîm Raccoon Security, ofyn i'n hunain: pa mor anodd yw hi i osgoi mecanweithiau diogelwch bysellfyrddau diwifr? Datgelodd yr astudiaeth ddiffygion pensaernïol a gwallau meddalwedd sy'n caniatáu mynediad at ddata mewnbwn. O dan y toriad mae'r hyn a gawsom.
Pam Logitech?
Yn ein barn ni, mae dyfeisiau mewnbwn Logitech ymhlith yr ansawdd uchaf a'r mwyaf cyfleus. Mae'r rhan fwyaf o'r dyfeisiau sydd gennym yn seiliedig ar y datrysiad Logitech yn dderbynnydd dongl cyffredinol sy'n eich galluogi i gysylltu hyd at 6 dyfais. Mae pob dyfais sy'n gydnaws â thechnoleg Uno Logitech wedi'i marcio â logo technoleg Uno Logitech. Hawdd i'w defnyddio Yn eich galluogi i reoli cysylltiad bysellfyrddau diwifr â'ch cyfrifiadur. Ymdrinnir â'r broses o gysylltu'r bysellfwrdd â dongl derbynnydd Logitech, yn ogystal â'r dechnoleg ei hun, er enghraifft, .

Derbynnydd Dongle gyda chefnogaeth Logitech Unifying
Gall y bysellfwrdd ddod yn ffynhonnell wybodaeth i ymosodwyr. Roedd Logitech, gan ystyried y bygythiad posibl, yn gofalu am ddiogelwch - defnyddiodd algorithm amgryptio AES128 yn sianel radio'r bysellfwrdd diwifr. Y meddwl cyntaf a allai fod gan ymosodwr yn y sefyllfa hon yw rhyng-gipio gwybodaeth allweddol pan gaiff ei throsglwyddo dros sianel radio yn ystod y weithdrefn rwymo. Wedi'r cyfan, os oes gennych allwedd, gallwch ryng-gipio signalau radio'r bysellfwrdd a'u dadgryptio. Fodd bynnag, anaml y bydd yn rhaid i'r defnyddiwr (neu hyd yn oed byth) uno'r bysellfwrdd, a bydd yn rhaid i haciwr â radio sganio aros am amser hir. Yn ogystal, nid yw popeth mor syml â'r broses rhyng-gipio ei hun. Yn yr astudiaeth ddiweddaraf ym mis Mehefin 2019, cyhoeddodd yr arbenigwr diogelwch Markus Mengs ar-lein am ddarganfod bregusrwydd mewn hen gadarnwedd o donglau USB Logitech. Mae'n caniatáu i ymosodwyr sydd â mynediad corfforol i ddyfeisiau gael allweddi amgryptio sianel radio a chwistrellu trawiadau bysell (CVE-2019-13054).
Byddwn yn siarad am ein hastudiaeth diogelwch o'r dongl Logitech yn seiliedig ar y NRF24 SoC o Nordic Semiconductor. Gadewch i ni ddechrau, efallai, gyda'r sianel radio ei hun.
Sut mae data yn “hedfan” mewn sianel radio
Ar gyfer dadansoddiad amledd amser o'r signal radio, defnyddiwyd derbynnydd SDR yn seiliedig ar y ddyfais Blade-RF yn y modd dadansoddwr sbectrwm (gallwch hefyd ddarllen am hyn ).

Dyfais SDR Blade-RF
Fe wnaethom hefyd ystyried y posibilrwydd o recordio pedroadau'r signal radio ar amledd canolraddol, y gellid wedyn ei ddadansoddi gan ddefnyddio technegau prosesu signal digidol.
Comisiwn y Wladwriaeth ar Amleddau Radio yn Ffederasiwn Rwsia i'w ddefnyddio gan ddyfeisiau amrediad byr, yr ystod amledd yw 2400-2483,5 MHz. Mae hwn yn ystod “boblogaidd” iawn, lle ni fyddwch yn dod o hyd i unrhyw beth: Wi-Fi, Bluetooth, pob math o reolaethau o bell, systemau diogelwch, synwyryddion diwifr, llygod ag allweddellau a dyfeisiau digidol diwifr eraill.

Sbectrwm y band 2,4 GHz
Mae'r amgylchedd ymyrraeth yn yr ystod yn eithaf cymhleth. Er gwaethaf hyn, roedd Logitech yn gallu darparu derbyniad dibynadwy a sefydlog trwy ddefnyddio'r protocol ShockBurst Gwell yn y trawsgludwr NRF24 ar y cyd ag algorithmau addasu amledd.
Mae sianeli mewn band yn cael eu gosod mewn safleoedd MHz cyfanrif fel y'u diffinnir yn Lled-ddargludydd Nordig NRF24 - cyfanswm o 84 sianel yn y grid amledd. Mae nifer y sianeli amledd a ddefnyddir ar yr un pryd gan Logitech, wrth gwrs, yn llai. Fe wnaethom nodi defnydd o bedwar o leiaf. Oherwydd lled band cyfyngedig y dadansoddwr sbectrwm signal a ddefnyddiwyd, ni ellid pennu'r union restr o safleoedd amledd a ddefnyddiwyd, ond nid oedd hyn yn angenrheidiol. Mae gwybodaeth o'r bysellfwrdd i'r dongl derbynnydd yn cael ei throsglwyddo yn y modd Burst (troadau byr ar y trosglwyddydd) gan ddefnyddio modiwleiddio amledd dau leoliad GFSK ar gyfradd symbolau o 1 Mbaud:

Signal radio bysellfwrdd mewn cynrychiolaeth amser
Mae'r derbynnydd yn defnyddio egwyddor cydberthynas derbyniad, felly mae'r pecyn a drosglwyddir yn cynnwys rhaglith a rhan cyfeiriad. Ni ddefnyddir codio sy'n gwrthsefyll sŵn; mae'r corff data wedi'i amgryptio â'r algorithm AES128.
Yn gyffredinol, gellir nodweddu rhyngwyneb radio bysellfwrdd diwifr Logitech fel rhywbeth cwbl anghydamserol ag amlblecsio ystadegol ac addasu amlder. Mae hyn yn golygu bod y trosglwyddydd bysellfwrdd yn newid y sianel i drosglwyddo pob pecyn newydd. Nid yw'r derbynnydd yn gwybod ymlaen llaw naill ai'r amser trosglwyddo na'r sianel amledd, ond dim ond eu rhestr sy'n hysbys. Mae'r derbynnydd a'r trosglwyddydd yn cyfarfod yn y sianel diolch i algorithmau osgoi amledd a gwrando cydgysylltiedig, yn ogystal â mecanweithiau cydnabod ShockBurst Gwell. Nid ydym wedi ymchwilio i weld a yw'r rhestr sianeli yn sefydlog. Yn ôl pob tebyg, mae ei newid oherwydd yr algorithm addasu amledd. Gellir gweld rhywbeth sy'n agos at y dull hercian amlder (tiwnio ffug-hap yr amlder gweithredu) yn y defnydd o adnodd amlder yr ystod.
Felly, o dan amodau ansicrwydd amledd amser, er mwyn sicrhau derbyniad gwarantedig o'r holl signalau bysellfwrdd, bydd angen i ymosodwr fonitro'r grid amledd cyfan o 84 safle yn gyson, sy'n gofyn am amser sylweddol. Yma mae'n dod yn amlwg pam mae bregusrwydd echdynnu allwedd USB (CVE-2019-13054) wedi'i leoli fel y gallu i chwistrellu trawiadau bysell, yn hytrach na chaniatáu i ymosodwr gael mynediad at ddata a gofnodwyd o'r bysellfwrdd. Yn amlwg, mae rhyngwyneb radio'r bysellfwrdd diwifr yn eithaf cymhleth ac yn darparu cyfathrebu radio dibynadwy rhwng dyfeisiau Logitech mewn amodau ymyrraeth anodd yn y band 2,4 GHz.
Golwg ar y broblem o'r tu mewn
Ar gyfer ein hastudiaeth, fe wnaethom ddewis un o'n bysellfyrddau Logitech K330 presennol a dongl Logitech Unifying.

Logitech K330
Gadewch i ni edrych y tu mewn i'r bysellfwrdd. Elfen ddiddorol ar y bwrdd i'w hastudio yw sglodyn SoC NRF24 o Nordic Semiconductor.

SoC NRF24 ar fwrdd bysellfwrdd diwifr Logitech K330
Mae'r firmware wedi'i leoli mewn cof mewnol, mae mecanweithiau darllen a dadfygio yn anabl. Yn anffodus, nid yw'r firmware wedi'i gyhoeddi mewn ffynonellau agored. Felly, penderfynasom fynd at y broblem o'r ochr arall - i astudio cynnwys mewnol y derbynnydd dongle Logitech.
Mae “byd mewnol” y derbynnydd dongl yn eithaf diddorol. Mae'r dongl yn hawdd ei ddadosod, mae'n parhau â'r datganiad NRF24 cyfarwydd gyda rheolydd USB adeiledig a gellir ei ail-raglennu o'r ochr USB ac yn uniongyrchol o'r rhaglennydd.

Logitech dongl heb tai
Gan fod yna fecanwaith safonol ar gyfer diweddaru'r firmware gan ddefnyddio (lle gallwch dynnu'r fersiwn firmware wedi'i ddiweddaru), nid oes angen edrych am y firmware y tu mewn i'r dongl.
Beth a wnaethpwyd: tynnwyd firmware RQR_012_005_00028.bin o gorff y cais Firmware Update Tool. Er mwyn gwirio ei gyfanrwydd, roedd y rheolydd dongl wedi'i gysylltu â chebl :

Cebl ar gyfer cysylltu dongl Logitech â rhaglennydd ChipProg 48
Er mwyn rheoli cywirdeb y firmware, fe'i gosodwyd yn llwyddiannus yng nghof y rheolwr a gweithio'n gywir, roedd y bysellfwrdd a'r llygoden wedi'u cysylltu â'r dongl trwy Logitech Unifying. Mae'n bosibl uwchlwytho firmware wedi'i addasu gan ddefnyddio'r mecanwaith diweddaru safonol, gan nad oes unrhyw fecanweithiau amddiffyn cryptograffig ar gyfer y firmware. At ddibenion ymchwil, gwnaethom ddefnyddio cysylltiad corfforol â'r rhaglennydd, gan fod dadfygio yn llawer cyflymach fel hyn.
Ymchwil cadarnwedd ac ymosodiad ar fewnbwn defnyddwyr
Mae'r sglodyn NRF24 wedi'i ddylunio yn seiliedig ar graidd cyfrifiadura Intel 8051 ym mhensaernïaeth draddodiadol Harvard. Ar gyfer y craidd, mae'r transceiver yn gweithredu fel dyfais ymylol ac fe'i gosodir yn y gofod cyfeiriad fel set o gofrestrau. Gellir dod o hyd i ddogfennau ar gyfer enghreifftiau o'r sglodion a'r cod ffynhonnell ar y Rhyngrwyd, felly nid yw'n anodd dadosod y firmware. Yn ystod peirianneg wrthdro, fe wnaethom leoleiddio'r swyddogaethau ar gyfer derbyn data trawiad bysell o'r sianel radio a'i drawsnewid yn fformat HID i'w drosglwyddo i'r gwesteiwr trwy'r rhyngwyneb USB. Gosodwyd y cod pigiad mewn cyfeiriadau cof am ddim, a oedd yn cynnwys offer ar gyfer rheoli rhyng-gipio, arbed ac adfer y cyd-destun gweithredu gwreiddiol, yn ogystal â chod swyddogaethol.
Mae'r pecyn o wasgu neu ryddhau allwedd a dderbynnir gan y dongl o'r sianel radio yn cael ei ddadgryptio, ei drawsnewid yn adroddiad HID safonol a'i anfon i'r rhyngwyneb USB fel o fysellfwrdd arferol. Fel rhan o’r astudiaeth, y rhan o’r adroddiad HID sydd o’r diddordeb mwyaf i ni yw’r rhan o adroddiad HID sy’n cynnwys beit o faneri addasydd ac amrywiaeth o 6 beit gyda chodau trawiad bysell (er gwybodaeth, gwybodaeth am HID). ).
Strwythur adroddiad 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;Yn union cyn trosglwyddo'r strwythur HID i'r gwesteiwr, mae'r cod wedi'i chwistrellu yn cymryd rheolaeth, yn copïo 8 bytes o ddata HID brodorol yn y cof ac yn ei anfon i'r sianel ochr radio mewn testun clir. Yn y cod mae'n edrych fel hyn:
//~~~~~~~~~ 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 ~~~~~~~~~~~~~~~~~~~~~~~~~<Mae'r sianel ochr wedi'i threfnu ar amlder a osodwyd gennym gyda nodweddion penodol y cyflymder trin a strwythur y pecyn.
Gweithrediad y transceiver yn y sglodion yn seiliedig ar graff cyflwr y mae'r protocol ShockBurst Gwell wedi'i integreiddio'n organig iddo. Canfuom yn union cyn trosglwyddo data HID i'r rhyngwyneb USB gwesteiwr, roedd y transceiver yn y cyflwr IDLE. Mae hyn yn ei gwneud hi'n bosibl ei ail-gyflunio'n ddiogel i weithredu mewn sianel ochr. Mae'r cod wedi'i chwistrellu yn rhyng-gipio rheolaeth, yn cadw'r cyfluniad traws-gipio gwreiddiol yn llawn ac yn ei newid i ddull trosglwyddo newydd ar y sianel ochr. Mae'r mecanwaith cadarnhau ShockBurst Gwell wedi'i analluogi yn y modd hwn; mae data HID yn cael ei drosglwyddo ar ffurf glir dros yr awyr. Dangosir strwythur y pecyn yn y sianel ochr yn y ffigur isod, cafwyd y diagramau signal ar ôl demodulation a chyn adfer cydamseriad cloc data. Dewiswyd y gwerth cyfeiriad er mwyn gallu adnabod y pecyn yn weledol yn hawdd.

Signal Byrstio Byrstio wedi'i Ddamodiwleiddio yn y Sianel Ochr
Ar ôl i'r pecyn gael ei drosglwyddo i'r sianel ochr, mae'r cod wedi'i chwistrellu yn adfer cyflwr y transceiver. Nawr mae'n barod eto i weithio fel arfer yng nghyd-destun y firmware gwreiddiol.
Yn y parthau amlder ac amledd amser, mae'r sianel ochr yn edrych fel hyn:

Cynrychiolaeth sbectrol ac amledd amser o'r sianel ochr
Er mwyn profi gweithrediad y sglodyn NRF24 gyda firmware wedi'i addasu, fe wnaethom ymgynnull stondin a oedd yn cynnwys dongl Logitech gyda firmware wedi'i addasu, bysellfwrdd diwifr a derbynnydd wedi'i ymgynnull ar sail modiwl Tsieineaidd gyda'r sglodyn NRF24.

Cylched rhyng-gipio signal radio bysellfwrdd diwifr Logitech

Modiwl yn seiliedig ar NRF24
Ar y fainc, gyda'r bysellfwrdd yn gweithredu'n normal, ar ôl ei gysylltu â dongl Logitech, gwelsom drosglwyddo data clir am drawiadau bysell yn y sianel radio ochr a throsglwyddiad arferol data wedi'i amgryptio yn y prif ryngwyneb radio. Felly, roeddem yn gallu darparu rhyng-gipiad uniongyrchol o fewnbwn bysellfwrdd defnyddiwr:

Canlyniad rhyng-gipio mewnbwn bysellfwrdd
Mae'r cod wedi'i chwistrellu yn cyflwyno ychydig o oedi wrth weithredu'r firmware dongle. Fodd bynnag, maent yn rhy fach i'r defnyddiwr sylwi arnynt.
Fel y gallwch ddychmygu, gellir defnyddio unrhyw fysellfwrdd Logitech sy'n gydnaws â thechnoleg Uno ar gyfer y fector ymosodiad hwn. Gan fod yr ymosodiad yn targedu'r derbynnydd Uno sydd wedi'i gynnwys gyda'r mwyafrif o fysellfyrddau Logitech, mae'n annibynnol ar y model bysellfwrdd penodol.
Casgliad
Mae canlyniadau'r astudiaeth yn awgrymu defnydd posibl o'r senario a ystyriwyd gan ymosodwyr: os yw haciwr yn disodli'r dioddefwr gyda derbynnydd dongl ar gyfer bysellfwrdd diwifr Logitech, yna bydd yn gallu darganfod y cyfrineiriau i gyfrifon y dioddefwr gyda'r holl ddilynwyr. canlyniadau. Peidiwch ag anghofio ei bod hefyd yn bosibl chwistrellu trawiadau bysell, sy'n golygu nad yw'n anodd gweithredu cod mympwyol ar gyfrifiadur y dioddefwr.
Beth os yn sydyn y gall ymosodwr addasu cadarnwedd unrhyw dongl Logitech trwy USB o bell? Yna, o donglau â bylchau rhyngddynt, gallwch greu rhwydwaith o ailadroddwyr a chynyddu'r pellter gollyngiadau. Er y bydd ymosodwr “cyfoethog yn ariannol” yn gallu “gwrando” ar fewnbwn bysellfwrdd a phwyso allweddi hyd yn oed o adeilad cyfagos, bydd offer derbyn radio modern gyda systemau hynod ddetholus, derbynyddion radio sensitif gydag amseroedd tiwnio amledd byr ac antenâu cyfeiriadol iawn yn caniatáu iddynt. i “wrando” ar fewnbwn bysellfwrdd a phwyso bysellau hyd yn oed o adeilad cyfagos.

Offer radio proffesiynol
Gan fod sianel trosglwyddo data diwifr bysellfwrdd Logitech wedi'i diogelu'n eithaf da, mae angen mynediad corfforol i'r derbynnydd ar y fector ymosodiad a ddarganfuwyd, sy'n cyfyngu'n fawr ar yr ymosodwr. Yr unig opsiwn amddiffyn yn yr achos hwn fyddai defnyddio mecanweithiau amddiffyn cryptograffig ar gyfer y firmware derbynnydd, er enghraifft, gwirio llofnod y firmware wedi'i lwytho ar ochr y derbynnydd. Ond, yn anffodus, nid yw NRF24 yn cefnogi hyn ac mae'n amhosibl gweithredu amddiffyniad o fewn pensaernïaeth gyfredol y ddyfais. Felly gofalwch am eich donglau, oherwydd mae'r opsiwn ymosodiad a ddisgrifir yn gofyn am fynediad corfforol iddynt.

Mae Raccoon Security yn dîm arbennig o arbenigwyr o Ganolfan Ymchwil a Datblygu Vulcan ym maes diogelwch gwybodaeth ymarferol, cryptograffeg, dylunio cylchedau, peirianneg wrthdroi a chreu meddalwedd lefel isel.
Ffynhonnell: hab.com
