Hiljuti on Itaalia ja Ühendkuningriigi vahel jagatud teadlaste kolmik avaldas raamatu krüptograafilise ebakindluse kohta, mille nad leidsid laialt tuntud nutikas lambipirnis.
Tundub, et teadlased valisid oma sihtseadme, TP-Link Tapo L530E, selle põhjal, et "praegu [] enimmüüdud Amazon Itaalias" nii et me ei tea, kuidas teised nutikad pirnid kokku jooksevad, kuid nende raportis on meile niikuinii palju õpetada.
Teadlased ütlevad, et:
Võtsime kohusetundlikult ühendust TP-Linkiga nende haavatavuse uurimisprogrammi (VRP) kaudu, teatades kõigist neljast leitud haavatavusest.
Nad tunnustasid neid kõiki ja teatasid meile, et hakkasid töötama paranduste kallal nii rakenduse kui ka pirni püsivara tasemel, plaanides need õigel ajal välja anda.
Kas heas või halvas (töö autorid ei ütle, kas avalikustamiskuupäevad olid TP-Linkiga kokku lepitud, nii et me ei tea, kui kaua ettevõte on oma plaastrite kallal töötanud), on teadlased nüüd paljastanud, kuidas nende rünnakud töötavad, ehkki ilma kopeeritavate ja kleepitavate ründekoodideta, mida koduhäkkerid saaksid oma äranägemise järgi ära kasutada.
Seetõttu arvasime, et paberit tasub uurida.
Traadita ühenduse seadistamine
Nagu paljud nn nutikad seadmed, on ka Tapo L530E loodud nii, et seda saab Wi-Fi kaudu kiiresti ja lihtsalt seadistada.
Kuigi juhtmevaba konfiguratsioon on tavaline isegi akutoitel seadmete puhul, mida saab laadida ja seadistada sisseehitatud USB-portide kaudu (nt kaamerad ja jalgrattatarvikud), ei ole lambipirnidel üldiselt USB-porte, seda ruumi ja ohutuse huvides. põhjustel, arvestades, et need on mõeldud vooluvõrku ühendamiseks ja pistikupessa jätmiseks.
Kui lülitate Tapo L530E lambipirni seinalülitist korduvalt ühe sekundi jooksul sisse ja välja, saate selle sundida seadistusrežiimile (ilmselt vilgub pirn automaatselt kolm korda, andes teada, millal see on seadistamiseks valmis).
Nagu enamik automaatselt konfigureeritavaid seadmeid, muudab see nutipirn end Wi-Fi pääsupunktiks, millel on vormis kergesti äratuntav võrgunimi Tapo Bulb XXXX
, kus X-d moodustavad numbrijada.
Seejärel loote oma nutitelefoni rakenduses ühenduse selle ajutise pääsupunktiga, mis pole parooliga kaitstud.
Seejärel ütlete pirnile, kuidas luua ühendus nii parooliga kaitstud koduse WiFi-võrgu kui ka TP-Linki pilvekontoga, misjärel saab pirni püsivara taaskäivitada ja ühendada end Internetiga, võimaldades teil seda hallata. telefoni rakendusest.
Pirn võib liituda koduvõrguga, mis tähendab, et saate sellega kodus viibides otse oma WiFi kaudu ühendust võtta, isegi kui teie Interneti-teenuse pakkuja on sel ajal võrguühenduseta.
Ja pirn saab Interneti kaudu ühenduda teie pilvekontoga, nii et saate sellele kaudselt oma pilvekonto kaudu käsklusi saata, kui olete teel, näiteks tulede sisse- ja väljalülitamiseks, kui hilinete tagasi jõudmisega. et jätta mulje, et keegi on kodus.
Ettevaatust petturid
Tõenäoliselt võite arvata, kuhu see läheb.
Kui teie telefoni rakendusel pole seadistusprotsessi ajal krüptograafiliselt tugevat viisi kindlaks teha, kas see on tõesti ühendatud ehtsa lambipirniga…
…siis lähedal asuv ründaja, kes lihtsalt juhtub võltsingu käivitama Tapo Bulb XXXX
pääsupunkt õigel hetkel võib meelitada teid saatma need olulised seadistussaladused nende "võltsipirni" seadmesse, mitte päris asjasse, jäädvustades nii teie Wi-Fi parooli kui ka teie TP-Linki konto üksikasjad.
Hea uudis on see, et teadlased märkasid, et nii Tapo rakendus kui ka L530E püsivara sisaldasid elementaarset ohutuskontrolli, mis aitab rakendusel ja teie pirnidel üksteist usaldusväärselt leida, vähendades seega ohtu, et rakendus ähmastab teie paroolid, kui seda peaks tegema. mitte.
Kuid halb uudis on see, et selleks kasutatakse protokolli kas sa oled tõesti pirn? vahetus oli selgelt mõeldud vigade vältimiseks, mitte rünnakute ärahoidmiseks.
Lahedalt öeldes leiab rakendus oma võrgus kõik lambipirnid, edastades spetsiaalsed UDP-paketid porti 20002 ja vaadates, millised seadmed vastavad, kui neid on.
Et aidata kõigil kuulamispirnidel otsustada, et an oled sa seal? päring tuli Tapo rakendusest, mitte mõnest muust tundmatust tootest või teenusest, mis juhtub kasutama ka porti 20002, päring sisaldab seda, mida žargoonis nimetatakse võtmega räsi.
. Ma olen siin! lambipirni vastus sisaldab sama tüüpi võtmega kontrollsummat, mis aitab rakendusel välja filtreerida ootamatud ja soovimatud UDP-vastused.
Lihtsamalt öeldes on võtmega räsi kontrollsumma, mis ei põhine mitte ainult UDP-paketi andmetel, vaid ka mõnel täiendaval võtmebaidil, mis on samuti volditud kontrollsummasse.
Kahjuks kasutab Tapo protokoll oma kontrollsumma jaoks fikseeritud võtmebaite, kusjuures sama võti on ühendatud rakendusse ja iga Tapo pirni püsivarasse.
Teisisõnu, kui keegi on dekompileerinud kas rakenduse või lambipirni püsivara või mõlemad ja taastanud selle "võtme", peaksite eeldama, et igaüks ja kõik teavad, mis see on, muutes needkas sa oled seal?/Ma olen siin! sõnumeid on tühine võltsida.
Mis veelgi hullem, teadlased leidsid, et neil pole vaja midagi dekompileerida, sest see mitte eriti salajane “võti” on vaid 32 bitti pikk, mis tähendab, et kui seada oma Tapo pirn häälestusrežiimi ja seejärel toide oled sa seal? sõnumeid kasutades kõiki 232 võimalike kontrollsummavõtmete puhul, siis lõpuks vajutate õigele klahvile nn toores jõud.
See on krüptograafiline ekvivalent ketaste keeramisele, et proovida rattalukul iga kombinatsiooni, näiteks 000
et 999
, kuni veab ja lukk avaneb. (Keskmiselt avate luku pärast poolte võimalike kombinatsioonide proovimist, kuid see ei võta kunagi rohkem kui 1000 korda.)
Tegelikult polnud neil vaja 2 saata32 sõnumid rakendusest lambipirnile, et võti lahti murda.
Jäädvustades ainult ühe teadaoleva ehtsa sõnumi, milles on kehtiv võtmega räsi, saavad nad seejärel võrguühenduseta testida kõiki võimalikke võtmeid, kuni nad koostavad sõnumi, millel on sama võtmega räsi, mis nende salvestatud sõnumil.
See tähendab, et jõhkra jõu rünnak võib toimuda protsessori kiirusel, mitte ainult Wi-Fi võrgu pakettkiirusel, ja teadlased väidavad, et "Meie seadistuses õnnestus toore jõu rünnak alati keskmiselt 140 minutiga."
(Eeldame, et nad proovisid seda korduvalt lihtsalt selleks, et kontrollida, kas nende krakkimiskood töötab õigesti, kuigi kõigi Tapo pirnide jagava juhtmega võtmega oleks piisanud juba nende esimesest mõrast.)
Kuni sa räägid turvaliselt, ei huvita mind, kes sa oled
Järgmine krüptograafiline probleem ilmnes lambipirni seadistamise protsessi järgmises etapis ja see oli sarnane viga.
Pärast lambipirni tunnistamist ehtsaks võtmega-räsi-, millel-tegelikult-võtit-pole-olemise alusel, lepib rakendus kokku seansivõtmega, et krüpteerida oma liiklust „ehtsa” pirniga...
…aga ei suuda taaskord kontrollida, kas võtmekokkulepe toimus päris pirni või petisega.
Seansivõtme kokkuleppimine on oluline, sest see tagab, et keegi teine võrgus ei saa Wi-Fi ja Tapo paroole nuhkida, kui need seejärel Tapo rakendusest Tapo lambipirnile saadetakse.
Kuid võtmelepingu enda kinnitusprotsessi puudumine on natuke nagu HTTPS-i kaudu veebisaidiga ühenduse loomine ja siis ei viitsita teha isegi kõige elementaarsemat veebisertifikaati, mille see tagasi saadab: teie liiklus on edastamisel turvaline, kuid võib siiski sattuda otse kelmi kätte.
Tapo rakendus tuvastab end lambipirni (või selle arvates lambipirni) jaoks, saates sellele RSA avaliku võtme, mida teine ots kasutab juhuslikult genereeritud AES-võtme krüpteerimiseks, et seansi ajal vahetatud andmeid kaitsta.
Kuid lambipirni seade ei paku Tapo rakendusse tagasi mingit identifitseerimist, isegi mitte kontrollsummat juhtmega 32-bitise võtmega.
Seega ei jää rakendusel muud üle, kui nõustuda seansivõtmega, teadmata, kas see pärines tõelisest lambipirnist või petturist.
Nende kahe vea kombineeritud tulemus on see, et teie võrgu ründaja võib teid esmalt veenda, et nende petlik pääsupunkt oli ehtne lambipirn, mis ootab seadistamist, ja meelitada teid seega valesse kohta ja seejärel veenda teid seda saatma. teie enda Wi-Fi ja Tapo paroolide krüptitud koopia.
Irooniline, et need lekkinud paroolid oleksid tõesti kõigi eest kaitstud, välja arvatud petturi, kellel on petturlik pääsupunkt.
Arv-kasutatud üks kord, mida kasutatakse ikka ja jälle
Kahjuks on rohkemgi.
Kui me eespool ütlesime "Need lekkinud paroolid oleksid tõesti turvalised," see ei olnud päris õige.
Varem kirjeldatud võtmekokkuleppe protsessi käigus loodud seansivõtit ei käsitleta õigesti, kuna programmeerijad tegid AES-i kasutamisel vea.
Kui rakendus krüpteerib iga lambipirnile saadetud päringu, kasutab see krüpteerimisrežiimi nimega AES-128-CBC.
Me ei selgita CBC-d (šifriploki aheldamine), kuid mainime lihtsalt, et CBC-režiim on loodud nii, et kui krüpteerite sama andmepaki rohkem kui üks kord (nt korduvad päringud lülitage valgus sisse ja lülitage valgus välja, kus päringu algandmed on iga kord samad), ei saa te iga kord sama väljundit.
Kui iga tuli põleb ja tuli kustu taotlus tuli välja identne, siis kui ründaja oli arvanud, mida a Lülita see välja pakett nägi välja selline, et nad mitte ainult ei suuda neid pakette tulevikus dekrüpteerimata ära tunda, vaid ka neid samu pakette uuesti esitada, ilma et oleks vaja teada, kuidas neid esmalt krüptida.
Kuna see juhtub, tugineb CBC-põhine krüptimine tõhusalt krüpteerimisprotsessi "külvimisele" iga andmepaki jaoks, segades esmalt unikaalse, juhuslikult valitud andmeploki krüpteerimisprotsessi, luues seega unikaalse krüpteeritud andmete jada ülejäänud andmetes. tükist.
Need "seemne" andmed on tuntud žargoonis IV, lühendina initsialiseerimisvektor, ja kuigi see ei ole mõeldud salajaseks, peab see olema iga kord ettearvamatult erinev.
Lihtsamalt öeldes: sama võti + kordumatu IV = kordumatu šifriteksti väljund, kuid sama võti + sama IV = ennustatav krüptimine.
Kahjuks genereerisid TP-Linki kodeerijad IV samal ajal, kui nad lõid oma AES-i seansivõtme, ja kasutasid seejärel sama IV-d ikka ja jälle iga järgneva andmepaketi jaoks, isegi kui varasemaid andmeid korrati täpselt.
See on krüptograafiline ei-ei.
Kas ma saatsin kuus pakki või ainult viis?
Viimane krüptograafiline probleem, mille teadlased avastasid, on see, mis võib turvalisust kahjustada isegi siis, kui initsialiseerimisvektori probleem on lahendatud, nimelt see, et vanu sõnumeid saab hiljem taasesitada nii, nagu need oleksid uued, olenemata sellest, kas ründaja teab, mida need tähendavad või mitte.
Tavaliselt on seda tüüpi kordusrünnak Seda käsitletakse krüptoprotokollides mingi järjenumbri või ajatempli või mõlema abil, mis sisalduvad igas andmepaketis, et piirata selle kehtivust.
Nagu kuupäev rongipiletil, mis annab sulle ära, kui proovite seda kaks päeva järjest kasutada, isegi kui piletit ei tühistata kunagi piletiautomaati või piletikontrolöri poolt, järjenumbrid ja ajatemplid andmepakettides teenivad kahte olulist eesmärki.
Esiteks ei saa ründajad täna liiklust salvestada ja seda hiljem hõlpsalt taasesitada ning tekitada kaost.
Teiseks saab veatut koodi, mis saadab korduvalt taotlusi kogemata, näiteks vastuste katkemise või võrgukinnituste puudumise tõttu, usaldusväärselt tuvastada ja kontrollida.
Mida teha?
Kui kasutate Tapo lambipirni, hoidke silmad lahti TP-Linki püsivara värskenduste jaoks, mis neid probleeme lahendavad.
Kui olete programmeerija, kes vastutab võrguliikluse ja võrgupõhiste toodete seadistamise eest, Loe läbi uurimistöö veendumaks, et te pole sarnaseid vigu teinud.
Pidage meeles järgmisi reegleid:
- Krüptograafia ei tähenda ainult saladust. Krüpteerimine on vaid üks osa krüptoloogilisest "pühast kolmainsusest". konfidentsiaalsus (krüpteeri see), autentsus (kontrollige, kes on teises otsas) ja terviklikkuse (veenduge, et keegi poleks seda teel rikkunud).
- Veenduge, et kõik ühekordsed võtmed või IV-d oleksid tõeliselt ainulaadsed. Levinud žargooni termin nuntsius, mida kasutatakse seda tüüpi andmete jaoks, on lühend sõnadest üks kord kasutatud number, sõna, mis tuletab selgelt meelde, et IV-sid ei tohi kunagi uuesti kasutada.
- Kaitske kordusrünnakute eest. See on selle tagamise eriline aspekt autentsus ja terviklikkuse eespool mainisime. Ründaja ei tohiks olla võimeline jäädvustama teie praegu esitatavat taotlust ja seda hiljem pimesi taasesitada, ilma et teda märgataks. Pidage meeles, et ründaja ei pea sõnumist aru saama, kui ta suudab seda uuesti esitada ja potentsiaalselt kaost tekitada.
- SEO-põhise sisu ja PR-levi. Võimenduge juba täna.
- PlatoData.Network Vertikaalne generatiivne Ai. Jõustage ennast. Juurdepääs siia.
- PlatoAiStream. Web3 luure. Täiustatud teadmised. Juurdepääs siia.
- PlatoESG. Autod/elektrisõidukid, Süsinik, CleanTech, Energia, Keskkond päikeseenergia, Jäätmekäitluse. Juurdepääs siia.
- PlatoTervis. Biotehnoloogia ja kliiniliste uuringute luureandmed. Juurdepääs siia.
- ChartPrime. Tõsta oma kauplemismängu ChartPrime'iga kõrgemale. Juurdepääs siia.
- BlockOffsets. Keskkonnakompensatsiooni omandi ajakohastamine. Juurdepääs siia.
- Allikas: https://nakedsecurity.sophos.com/2023/08/22/smart-light-bulbs-could-give-away-your-password-secrets/
- :on
- :on
- :mitte
- : kus
- $ UP
- 1
- 125
- 15%
- 25
- 32
- 700
- a
- Võimalik
- MEIST
- üle
- absoluutne
- aktsepteerima
- aktsepteerimine
- juurdepääs
- tarvikud
- konto
- tunnustatud
- Täiendavad lisad
- aadress
- AES
- pärast
- jälle
- vastu
- kokkulepitud
- Kokkulepe
- Materjal: BPA ja flataatide vaba plastik
- Lubades
- mööda
- Ka
- Kuigi
- alati
- am
- Amazon
- an
- ja
- mistahes
- midagi
- app
- OLEME
- AS
- aspekt
- eeldab
- At
- rünnak
- Reageerib
- autor
- autorid
- auto
- automaatselt
- keskmine
- vältima
- ära
- tagasi
- background-image
- Halb
- põhineb
- põhiline
- alus
- BE
- sest
- olnud
- BEST
- Parem
- vahel
- Natuke
- pimesi
- Blokeerima
- piir
- mõlemad
- põhi
- Rahvusringhääling
- toores jõud
- sisseehitatud
- kuid
- by
- kutsutud
- tuli
- Kaamerad
- CAN
- lüüa
- Püüdmine
- mis
- põhjuste
- keskus
- sertifikaat
- laetud
- kontrollima
- kontroll
- valik
- valitud
- selgelt
- Cloud
- kood
- värv
- kombinatsioon
- kombinatsioonid
- kombineeritud
- ühine
- ettevõte
- konfiguratsioon
- konfigureeritud
- Võta meiega ühendust
- seotud
- ühendamine
- kontakt
- kontrollitud
- veenma
- parandada
- võiks
- Kursus
- cover
- pragu
- looma
- loodud
- loomine
- krüptograafia
- andmed
- kuupäev
- Kuupäevad
- Päeva
- otsustama
- kirjeldatud
- kavandatud
- detailid
- tuvastatud
- seade
- seadmed
- erinev
- numbrit
- otse
- avalikustamine
- Ekraan
- do
- ei
- Ei tee
- Ära
- langes
- kaks
- ajal
- iga
- Ajalugu
- kergesti
- tõhusalt
- kumbki
- teine
- krüpteeritud
- krüpteerimist
- lõpp
- piisavalt
- tagama
- tagab
- tagades
- täielikult
- Samaväärne
- asutatud
- Isegi
- lõpuks
- Iga
- täpselt
- näide
- Välja arvatud
- vahetamine
- vahetatud
- Selgitama
- Ekspluateeri
- silmad
- asjaolu
- võlts
- toitmine
- filtreerida
- leidma
- esimene
- fikseeritud
- vigu
- Järel
- eest
- Sundida
- võltsima
- vorm
- avastatud
- neli
- Alates
- tulevik
- üldiselt
- loodud
- ehtne
- saama
- saamine
- Andma
- antud
- Go
- Goes
- läheb
- hea
- arvas ära
- olnud
- Pool
- Käed
- juhtub
- kahju
- hash
- Olema
- võttes
- kõrgus
- aitama
- siin
- Tulemus
- Avaleht
- hõljuma
- Kuidas
- Kuidas
- HTTPS
- i
- Identifitseerimine
- identifitseerib
- if
- oluline
- in
- lisatud
- hõlmab
- kaudselt
- teavitatakse
- selle asemel
- Internet
- sisse
- ISP
- küsimustes
- IT
- Itaalia
- ITS
- ise
- erikeel
- liituma
- lihtsalt
- ainult üks
- hoidma
- Võti
- võtmed
- Teadma
- Teades
- teatud
- viimane
- Hilja
- pärast
- kõige vähem
- lahkus
- taset
- valgus
- lambid
- nagu
- LIMIT
- Kuulamine
- Pikk
- Vaatasin
- otsin
- masin
- tehtud
- tegema
- Tegemine
- juhtima
- palju
- Varu
- max laiuse
- keskmine
- vahendid
- tähendas
- mainitud
- ainult
- sõnum
- kirjad
- protokoll
- puuduvad
- viga
- vigu
- Segamine
- viis
- hetk
- rohkem
- kõige
- peab
- nimi
- nimelt
- Vajadus
- vajav
- võrk
- Võrgu nimi
- võrguliiklus
- võrgupõhine
- mitte kunagi
- Sellegipoolest
- Uus
- uudised
- järgmine
- ei
- mitte ükski
- normaalne
- nüüd
- number
- numbrid
- of
- maha
- offline
- Vana
- on
- kunagi
- ONE
- ainult
- avatud
- or
- et
- Muu
- meie
- välja
- Tulemus
- väljund
- üle
- enda
- paketid
- Paber
- osa
- Parool
- paroolid
- Paikade
- Paul
- täitma
- telefon
- Koht
- planeerimine
- Platon
- Platoni andmete intelligentsus
- PlatoData
- mängima
- mängis
- rohke
- Ühendatud
- Punkt
- Pops
- positsioon
- võimalik
- Postitusi
- potentsiaalselt
- ennustatav
- vältida
- eelmine
- tõenäoliselt
- Probleem
- jätkama
- protsess
- Toodetud
- Toode
- Programm
- Programmeerija
- Programmeerijad
- kaitstud
- protokoll
- protokollid
- anda
- pakkudes
- avalik
- avaliku võtme
- eesmärkidel
- panema
- kiiresti
- juhuslikult genereeritud
- pigem
- Töötlemata
- valmis
- reaalne
- tõesti
- põhjustel
- hiljuti
- ära tundma
- rekord
- vähendamine
- suhteline
- vabastama
- meeles pidama
- korduv
- KORDUVALT
- vastus
- aru
- Aruandlus
- taotleda
- Taotlusi
- teadustöö
- Teadlased
- vastutav
- REST
- Revealed
- õige
- Oht
- tee
- ROW
- RSA
- eeskirjade
- ohutus
- Ütlesin
- sama
- ütlema
- Teine
- Saladus
- kindlustama
- kindlalt
- kindlustada
- turvalisus
- nägemine
- tundub
- saatma
- saatmine
- saadab
- Saadetud
- Jada
- teenima
- teenus
- istung
- komplekt
- kehtestamine
- seade
- jagatud
- Lühike
- peaks
- sarnane
- SIX
- nutikas
- nutikas telefon
- Nuhkima
- So
- tahke
- mõned
- Keegi
- Ruum
- rääkima
- eriline
- kiirus
- jagada
- Kestab
- Stage
- algus
- alustatud
- riik
- Veel
- otse
- nöör
- tugev
- järgnev
- Järgnevalt
- selline
- kindel
- SVG
- Lüliti
- Võtma
- sihtmärk
- öelda
- ajutine
- termin
- test
- kui
- et
- .
- Suurbritannia
- oma
- Neile
- SIIS
- Seal.
- seetõttu
- Need
- nad
- asi
- Mõtleb
- see
- need
- arvasin
- kolm
- Läbi
- Seega
- pilet
- aeg
- korda
- ajatempel
- et
- täna
- võttis
- ülemine
- liiklus
- Rong
- transiit
- üleminek
- läbipaistev
- proovitud
- trio
- tõeliselt
- püüdma
- Pöörake
- Pöördunud
- Pööramine
- kaks
- tüüp
- Uk
- mõistma
- Ootamatu
- kahjuks
- ainulaadne
- tundmatu
- kuni
- Uudised
- URL
- us
- usb
- kasutama
- Kasutatud
- Kasutaja
- kasutusalad
- kasutamine
- Kontrollimine
- kontrollima
- kaudu
- Haavatavused
- haavatavus
- ootamine
- Sein
- oli
- Tee..
- we
- web
- veebisait
- Hästi
- olid
- M
- millal
- kas
- mis
- kuigi
- WHO
- Wifi
- laius
- will
- koos
- ilma
- sõna
- sõnad
- Töö
- töö
- halvem
- väärt
- oleks
- Vale
- X-id
- sa
- Sinu
- sephyrnet