Galaxus ha rapportà registraziuns da cameras per pops ch’eran accessiblas libramain; The Verge ha rapportà circa 1,1 milliuns d’apparats Meari pertutgads. Per mai è la conclusiun clera: in login na protegia betg la stanza dal pop, sche la plattafurma davostiers na separa betg correctamain ils messadis, ils maletgs u las clavs da mintga apparat. Timmy na schlia betg tut ils problems da segirezza dal mund. Ma ils secrets decisivs per las medias e l’accuplament da Timmy na sa chattan betg entaifer ina plattafurma da cameras en il cloud.
Tge che para d’avair fatg naufragi en il cas Meari
Ils rapports publics descrivan ina plattafurma white-label. Numerusas marcas vendevan cameras che sa basavan sin la medema infrastructura Meari/CloudEdge. Perquai è l’incident impurtant: sch’ina plattafurma utilisada communablamain fixescha mal in cunfin d’autorisaziun, n’è il resultat betg mo ina camera vulnerabla, mabain ina exposiziun che pertutga l’entira flotta.
Il muster rapportà na sa limitescha betg a pleds-clav da standard flaivels. Las funtaunas descrivan messadis MQTT senza controllas d’access suffizientas per ils abunaments da mintga apparat, URLs da maletgs accessiblas publicamain, ina mascradaziun insuffizienta dals maletgs e clavs staticas u clavs che pon vegnir extratgas da l’app. Quai è in problem da la plattafurma: l’infrastructura pudeva revelar datas che na dastgavan mai esser accessiblas ad in auter conto.
| Ristga da cameras en il cloud | La concepziun alternativa da Timmy |
|---|---|
| Il backend memorisescha u distribuescha eveniments cun maletgs. | Timmy n’ha nagin archiv en il cloud per maletgs da la stanza dal pop; las medias vegnan transmessas live cun WebRTC. |
| In broker u in bucket sto autorisar correctamain mintga apparat. | Firestore cuntegna mo datas d’accuplament e da signalisaziun; SDP ed ICE vegnan criptads avant che vegnir scrits. |
| Clavs staticas pon pertutgar ina flotta entira. | Mintga accuplament generescha sin ils apparats sia atgna clav derivada cun ECDH P-256. |
| Ina via sur in server da relay po vegnir confundida cun in access a las medias. | TURN retransmetta pachets SRTP criptads, ma na survegn betg las clavs da medias. |
Co che Timmy generescha il secret
Il code Timmy da quatter caracters n’è intenziunadamain betg il secret. En il code è el mo in punct da rendezvous: l’app deriva ina meetingKey da quel, uschia ch’omadus apparats pon chattar il medem barat da clavs publicas en Firestore. Las clavs privatas ECDH na bandunan mai ils apparats.
Omadus apparats calculeschan alura il medem secret communabel cun ECDH P-256. La clav d’accuplament vegn derivada localmain. Il SAS da duas cifras vegn derivà dal secret communabel e da las duas clavs publicas ordinadas. Sche quest barat da clavs vegn manipulà, mussan ils apparats dus numers differents. Quai avertescha las utilisadras ed ils utilisaders da betg confermar l’accuplament.
sequenceDiagram
participant Baby as Baby device
participant Firestore as Firestore meeting point
participant Parent as Parent device
participant Turn as TURN relay
Baby->>Baby: Generate P-256 ECDH keypair
Parent->>Parent: Generate P-256 ECDH keypair
Baby->>Firestore: Write public key only under meetingKey
Parent->>Firestore: Write public key only under meetingKey
Firestore-->>Baby: Parent public key
Firestore-->>Parent: Baby public key
Baby->>Baby: Compute sharedSecret + SAS
Parent->>Parent: Compute sharedSecret + SAS
Baby-->>Parent: Humans compare SAS on both screens
Baby->>Firestore: Write SDP/ICE encrypted with AES-256-GCM
Parent->>Firestore: Write SDP/ICE encrypted with AES-256-GCM
Baby-)Turn: WebRTC media as DTLS/SRTP packets
Turn-)Parent: Relay forwards encrypted packets
Note over Turn: TURN sees network metadata, not media keys
Chadaina da segirezza simplifitgada da Timmy: Firestore serva sco punct da rendezvous e transport da signalisaziun; TURN è mo in relay; las medias restan criptadas cun WebRTC.
Pertge che las medias WebRTC na pon betg vegnir spiadas senza vegnir remartgadas
WebRTC na vul betg mo dir «trametter video». Avant che las medias vegnan transmessas, fan ils apparats in handshake DTLS. Las clavs SRTP per audio e video vegnan derivadas da quest transport segir. Ils pachets da medias vegnan alura criptads cun SRTP. In server TURN po retransmetter quests pachets, ma el na survegn betg las clavs necessarias per decriptar l’audio u il video.
Timmy agiunta avant quai in ulteriur nivel: datas da signalisaziun sco offertas SDP, respostas SDP e candidats ICE vegnan criptadas cun AES-256-GCM avant che cuntanscher Firestore. Firestore gida ils apparats a negoziar; video, audio e signalisaziun en text cler na duain betg vegnir memorisads là.
Tge che Timmy tuttina na pretenda betg
Nagin babyfon serius duess pretender d’esser impossibel da hackar. Sch’in telefon è cumpromess, po mintga app vegnir attatgada. Ina versiun maliziusa da l’app mida il model da ristga. La configuraziun dal server sto restar correcta. La pretensiun pli limitada da Timmy pertutga l’architectura: Timmy evitescha artefacts da medias da la stanza dal pop che pon vegnir legids dal backend e renda inspectabla la logica d’accuplament decisiva per la segirezza en il project central public.
Dumondas da far davart mintga camera per pops
- Memorisescha il furnitur maletgs u clips?
- Èn las URLs da medias privatas, da curta durada ed autorisadas per mintga apparat?
- Vegnan las clavs generadas per mintga apparat u accuplament, enstagl d’esser staticas en in’app?
- Po in broker furnir mo ils messadis destinads a l’apparat che Vus possedais propi?
- Permetta l’accuplament ad ina persuna da remarcar ina emprova d’attatga man-in-the-middle?
Leger il code
- ECDH e SAS en Timmy Core
- Clav da reuniun, clav da document ed AES-GCM
- Reglas da Firestore per sesziuns ed accuplaments
- Documentaziun da segirezza en il project central
Funtaunas
- Registraziuns da cameras per pops accessiblas libramain · Galaxus
- In milliun babyfons e cameras da segirezza pudevan vegnir spiads facilmain da hackers · The Verge
- Nagin metta il pop en in chantun · Sammy Azdoufal
- Guida per geniturs davart il medem incident · Baby Monitor Timmy