0x jew 0s? Kif tinqara l-format PSK f’ipsec.secrets
L-istess sigriet maqsum jista’ jinkiteb bħala litterali bejn virgoletti, bħala esadeċimali wara 0x, jew bħala Base64 wara 0s. Prefiss żbaljat ifalli l-awtentikazzjoni, mhux in-negozjati.
Klijent wieħed jawtentika bil-kjavi maqsuma u ieħor jirrifjutaha, għalkemm il-karattri li ppastejt jidhru l-istess fuq iż-żewġ naħat. X’aktarx huma l-istess karattri; id-differenza hija liema regola ta’ dekodifikar tapplika l-fajl għalihom. String bejn virgoletti jittieħed litteralment, token li jibda b’0x jinqara bħala esadeċimali, u token li jibda b’0s jinqara bħala Base64. Waħda biss minn dawn it-tliet kitbiet tfisser dak li kellhek f’moħħok, għalhekk is-sewwa normalment hija konverżjoni u mhux password aħjar.
Is-sintomu jindika l-kodifikar, mhux iċ-ċifrari
Meta ż-żewġ trufijiet iżommu bytes differenti, in-negozjati xorta jirnexxu u l-prova tfalli wara. Imbagħad il-log jirrapporta falliment ta’ integrità jew HMAC minflok nuqqas ta’ qbil ta’ algoritmu, għax intgħażel proposta u l-pass tal-awtentikazzjoni ma qabilx. Dik il-linja qatt ma ssemmi l-forma tas-sigriet.
Il-fażi hija l-ħjiel. Falliment li jasal wara proposta magħżula jfisser li ż-żewġ naħat qablu fuq kollox ħlief il-materjal tal-kjavi, filwaqt li «l-ebda proposta ma ntgħażlet» jappartjeni għall-politika jew għas-settijiet taċ-ċifrar. Verifika ta’ integrità li tfalli waqt li l-password tidher tajba hija l-wiċċ viżibbli ta’ nuqqas ta’ qbil fil-kodifikar.
Sigriet wieħed, tliet modi kif il-fajl jista’ jaqrah
Għall-valur ta’ erba’ bytes key1, l-esadeċimali u l-Base64 huma żewġ rikodifikar tal-istess bytes, u biss il-karattri tal-bidu jgħidu lill-parser liema waħda qed iżomm. Il-kredenzjali ta’ swanctl isegwu l-istess konvenzjoni, għalhekk valur mċaqlaq bejn iż-żewġ interfaċċi jżomm it-tifsira tiegħu biss meta l-prefiss tiegħu jivvjaġġa miegħu.
10.20.0.5 %any : PSK "key1"
10.20.0.5 %any : PSK 0x6b657931
10.20.0.5 %any : PSK 0sa2V5MQ==
Żewġ dettalji f’dak il-blokk jieħdu l-aktar ħin. Iċ-ċifri esadeċimali jaċċettaw iż-żewġ każi, għalhekk 0x6b657931 u 0x6B657931 huma l-istess valur, imma numru fard ta’ karattri jinqara ħażin bil-kwiet minflok ma jiġi miċħud, u dan iċaqlaq kull byte wara l-qatgħa. Il-padding tal-Base64 huwa parti mill-valur, għalhekk string li tpejjep mingħajr is-sinjali = tiegħu tat-tmiem jiġi dekodifikat f’bytes differenti minflok ma jfalli bl-għajta.
Profil li ddekodifika l-valur darba diġà kkonvertieh, għalhekk id-dekodifikar mill-ġdid jipproduċi bytes differenti u falliment ta’ awtentikazzjoni li jinqara bħala password żbaljata. Il-virgoletti huma d-direzzjoni sigura għal kull ħaġa ambigwa, għax il-kontenut huwa litterali anke meta jibda b’markatur tal-kodifikar.
Minn fejn jiġi t-test Base64
L-esportazzjonijiet tal-profil u l-portali tal-fornituri spiss jagħtu l-kjavi diġà kkodifikata, normalment f’qasam tad-data li qatt ma kien maħsub biex jittektek bl-idejn. Jew iżżarma dak il-valur u żżomm it-test dekodifikat fil-virgoletti, jew tħallih kodifikat bil-markatur quddiem. Li tagħmel nofs ta’ kull wieħed hija l-ħaġa li tkissru. Iż-żewġ toroq jaħdmu biss jekk il-valur kollu jgħix il-kopja.
Iż-żewġ direzzjonijiet huma kmand wieħed kull waħda, u jiswew li jinżammu fit-ticket bħala l-operazzjoni eżatta li pproduċiet il-valur maħżun. Mexxihom f’dan l-ordni:
printf '%s' 'a2V5MQ==' | base64 -d
printf '%s' 'key1' | base64
Li tpejjep test kodifikat bħallikieku kien sempliċi hija l-iżball għali. Il-fajl jagħmel hash tal-karattri eżatt kif inkiteb, il-kjavi derivata toħroġ madwar terz itwal minn dik li kkalkula s-sieħeb, u kull attentat ifalli bl-istess mod mingħajr twissija, għax il-parser segwa r-regola li ngħatatlu.
Ivverifika liema bytes kull sieħeb fil-fatt juża
Aqra l-ewwel il-veduta tad-daemon fuq il-konnessjoni u mbagħad ir-riżultat tal-awtentikazzjoni, minflok ma taħseb kawża mis-string tal-iżball. Li tqabbel it-tul maħżun hija verifika malajr ta’ sens komun, għax it-test kodifikat huwa itwal mill-bytes li jirrappreżenta. Imbagħad ivverifika liema ringiela tal-identità qabblet, għax sigriet tajjeb imqiegħed taħt is-sieħeb żbaljat ifalli eżattament bħal wieħed żbaljat. L-ordni tar-ringieli tiddeċiedi dan: l-ewwel qbil jirbaħ, għalhekk ringiela %any wiesgħa qrib il-quċċata tissostitwixxi bil-kwiet ir-ringiela speċifika li għadek kemm editjajt.
Erġa’ għabbi minflok terġa’ tibda meta l-fajl ikun tajjeb. ipsec rereadsecrets iġġedded il-kopja tad-daemon IKE, u setup swanctl jgħabbi l-kredenzjali bil-kmand tiegħu stess. Terġa’ tibda tarmi kull assoċjazzjoni stabbilita u teqred il-paragun li kont qed tipprova tagħmel.
Xejn minn dawn il-verifiki ma jeħtieġ li s-sigriet jiġi espost. Tul, selettur tal-identità u pożizzjoni tar-ringiela jispjegaw ħafna minn dawn il-fallimenti qabel ma xi ħadd ikun jeħtieġ hex dump.
Ibdel il-fajl mingħajr ma taħbi r-riżultat
Illimita l-fajl għall-kont tad-daemon, u żomm is-sigrieti ħajjin ’il barra mit-tickets, miċ-chat u mill-iscreenshots, għax kjavi mpejjpa hija tnixxija u mhux dijanjosi. Hija wkoll tgħix aktar mill-inċident li pproduċietha.
Ittestja minn klijent li tikkontrolla l-konfigurazzjoni tiegħu, ivverifika li l-awtentikazzjoni tirnexxi, u mbagħad ivverifika li t-tunnel iġorr it-traffiku. Erġa’ tagħbija li ssewwi l-handshake waqt li r-routing jibqa’ miksur hija problema oħra, u ssir viżibbli hekk kif is-sigriet jieqaf jimxi.