Ċwievet WireGuard fuq ESP32: għal kull apparat jew waħda mibnija ġewwa?
Ċavetta kkompilata fil-firmware tal-ESP32 hija identità ta’ pari, mhux password. Iddeċiedi b’tliet kundizzjonijiet: pussess, protezzjoni tal-flash u użu mill-ġdid fil-flotta kollha.
L-iskeċċ iqiegħed iċ-ċavetta privata ta’ WireGuard f’firxa ta’ karattri, u l-mina taħdem, għalhekk il-mistoqsija tqum mill-ġdid. Id-deċiżjoni li tassew trid tieħu mhix «dan huwiex sigur» imma «liema mit-tliet kundizzjonijiet tapplika għal dan l-użu». Huma: min jista’ jżomm l-apparat fiżikament, x’jagħti qari tal-flash fuq il-parti tiegħek, u jekk il-flotta taqsamx ċavetta waħda jew kull wieħed iġorr tiegħu. Wieġeb dawn u d-disinn jiġi warajhom, għax kull kundizzjoni tbiddel l-ispiża ta’ ċavetta li nixxet, mhux il-fatt li tista’ tnixxi.
X’tawtorizza ċ-ċavetta
WireGuard jawtentika l-pari b’ċavetta pubblika. Is-server jimmapja ċ-ċavetta pubblika ta’ kull pari għal indirizz u AllowedIPs lista, allura hi ċ-ċavetta privata li tħalli lill-klijent jibgħat traffiku minn dak l-indirizz.
L-istess entrata tiddeċiedi liema destinazzjonijiet l-apparat jista’ jilħaq, allura ċavetta li nixxet tiskopri n-netwerk wara l-mina kif ukoll l-indirizz tal-mina.
L-ewwel kundizzjoni: min jista’ jżomm l-apparat
Jekk l-unità tgħix f’armarju msakkra u ħadd barra t-tim tiegħek ma jmissha, l-esponiment huwa l-aktar kwistjoni ta’ distribuzzjoni tal-firmware. Jekk tinġibed lill-klijenti, tpoġġi fi vettura jew terġa’ lura taħt garanzija, il-pussess fiżiku huwa l-kredenzjali u s-segretezza tal-binarju hija sekondarja. Min iżomm l-apparat m’għandux għalfejn jaqra ċ-ċavetta, għax il-firmware li qed jaħdem se jiftaħlu l-mina. Għalhekk it-tweġiba mill-ġenb tas-server trid tinkludi revoka u ħajja limitata, mhux biss immaġni protetta.
Iddeċiedi din il-kundizzjoni qabel it-tnejn l-oħra, għax hija tistabbilixxi l-baġit għat-tnejn.
It-tieni kundizzjoni: x’jagħti qari tal-flash
Kull min jista’ jaqra l-immaġni tal-flash jirkupra ċavetta maħżuna bħala litterali, kemm jekk permezz ta’ konnessjoni tad-debug, fajl ta’ aġġornament, backup jew unità mibgħuta lura. Iċ-ċifrar tal-flash iżid l-ispiża ta’ dump dirett, u d-dokumentazzjoni tal-ESP-IDF tiddeskrivi x’tkopri l-karatteristika għal parti u konfigurazzjoni partikolari. Ma tagħmilx iċ-ċavetta mhux estraibbli taħt kull mudell ta’ attakk, u ma tagħmel xejn għall-każ tal-apparat fl-idejn. Ittrattaha bħala saff wieħed li jbiddel l-ispiża, mhux bħala t-tweġiba.
Aqra d-dokumentazzjoni tal-pjattaforma għall-chip u l-konfigurazzjoni eżatti tiegħek qabel ma tallega proprjetà f’reviżjoni tad-disinn.
It-tielet kundizzjoni: użu mill-ġdid fil-flotta kollha
Ċavetta waħda għal sensiela ta’ produzzjoni tfisser li kull unità taqsam identità waħda. Is-server ma jistax jiddistingwihom fil-logs, ma jistax jirrevoka waħda mingħajr ma jirrevoka kollha, u ma jistax jiddistingwi klonu minn oriġinali. Ċwievet għal kull apparat isolvu t-tlieta, bi prezz ta’ pass ta’ reġistrazzjoni u mappa mis-serial għaċ-ċavetta pubblika. Dik il-mappa hija l-assi li jbiddel ir-revoka fi bidla ta’ linja waħda minflok flash mill-ġdid tal-flotta kollha.
Jekk il-flotta hija ħames unitajiet fuq bank, li taqsam ċavetta tista’ tkun skambju raġonevoli. Jekk hija ħames mitt fil-qasam, mhuwiex skambju xejn.
Il-mudell ta’ reġistrazzjoni li jagħmel iċ-ċwievet għal kull apparat prattiċi
Iġġenera l-par ta’ ċwievet fuq l-apparat fl-ewwel boot, żomm in-nofs privat f’ħażna mhux volatili protetta, u ibgħat biss iċ-ċavetta pubblika lil servizz ta’ reġistrazzjoni li jassenja indirizz u jikteb l-entrata tal-pari. Awentika t-tweġiba tar-reġistrazzjoni, inkella attakkant fuq in-netwerk lokali jista’ jirreġistra ċ-ċavetta tiegħu fuq il-kont tiegħek. Qatt tipprintja ċ-ċavetta privata fuq il-console serjali waqt il-provvista. Irreġistra n-numru tas-serial tal-apparat ħdejn iċ-ċavetta pubblika, sabiex unità mitlufa taqbel eżattament ma’ entrata waħda tal-pari.
Dak servizz żgħir, u hija d-differenza bejn flotta li tista’ tawditjaha u flotta li tista’ biss terġa’ tflashjaha.
Ħin, endpoints u d-deċiżjoni
L-eżempju jissinkronizza l-ħin qabel ma jibda l-mina, u dan jgħodd lil hinn mit-TLS: l-handshakes ta’ WireGuard iġorru timestamp għall-protezzjoni mir-ripetizzjoni, allura apparat li jibda b’arloġġ ħażin jista’ jġarrab handshakes miċħuda. L-endpoint huwa isem ta’ host, li jqiegħed id-DNS fil-passaġġ tal-fiduċja għalkemm iċ-ċavetta pubblika tas-server xorta tawtentika l-pari. Indirizz ħażin jaħli tentattivi u jiżvela meta l-apparat ikun online. Issolvi t-tnejn qabel ma targumenta dwar iċ-ċavetta.
Imbagħad iddeċiedi: ċavetta maqsuma biss sakemm il-pussess huwa kkontrollat u l-flotta żgħira, ċwievet għal kull apparat malli waħda mit-tnejn tieqaf tkun vera.