IPsec unaprijed podijeljeni ključ: bajtovi iza niza koji ste otkucali
Dvije strane mogu imati nizove koji izgledaju identično i izvesti različite ključeve. Provjerite tip polja, svako kodiranje i završne bajtove prije nego što bilo šta oslabite.
Dva administratora uporede tajnu na ekranu, slože se da se poklapa, a tunel i dalje ne prolazi autentifikaciju. Niz koji su uporedili nije vrijednost koju bilo koja strana unosi u izvođenje ključa. Između znakova koje vidite i bajtova koje protokol hešira nalaze se tip polja, tekstualno kodiranje, uređivač i međuspremnik, a bilo koji od ta četiri može promijeniti unos bez promjene izgleda. Uporedite bajtove i neslaganje se obično pokaže u sekundama.
Šta gateway radi sa nizom
Unaprijed podijeljeni ključ se ne šalje preko mreže i ne poredi. Svaka strana unosi svoju lokalnu kopiju u izvođenje ključa za IKE razmjenu, a rezultujući korisni tereti autentifikacije ili prolaze provjeru ili ne. Takav dizajn znači da dvije kopije moraju biti bajt-identične, a ne vizuelno slične, i takođe znači da se greška prijavljuje u fazi autentifikacije, a ne kao poruka o pogrešnoj lozinci.
Zato korisno pitanje nikada nije „da li ovo izgleda isto“, već „koji tačan niz bajtova svaka implementacija hešira“.
Odakle dolaze dodatni bajtovi
Završni novi red je klasičan krivac i krije se naočigled jer većina uređivača ga nevidljivo dodaje prilikom čuvanja datoteke. Razmak na početku ili kraju zalijepljen iz prozora za chat čini isto, kao i pametni navodnik koji tekstualni procesor zamijeni pravim. Ništa od toga ne mijenja vizuelno poređenje koje obavlja čovjek.
Uporedite alatom koji prikazuje bajtove, a ne glifove. printf '%s' "$PSK" | xxd | tail -2 ispisuje kraj vrijednosti u heksadecimalnom obliku, gdje je zalutali 0a ili 20 očigledan. Uradite to na oba kraja i uporedite dva ispisa jedan pored drugog. Radite to na generisanom testnom materijalu, a ne na produkcijskoj tajni koju potom ostavljate u historiji školjke.
Kodirano nije šifrovano
Izvoz konfiguracije često nosi tajnu u osnovnom kodiranju, ponekad sa prelomima reda na svakih šezdeset ili sedamdeset šest znakova, a ponekad sa dopunom. Ako jedan kraj očekuje dekodirane bajtove, a vi zalijepite kodirani tekst, niste poslali drugačiju lozinku, poslali ste mnogo dužu lozinku sastavljenu od štampanih znakova. Base64 ne pruža nikakvu povjerljivost, zbog čega se kodirana tajna nikada ne smije lijepiti na forum za drugo mišljenje.
Appleov IPSec rječnik je koristan primjer važnosti tipa: dokumentuje SharedSecret kao podatke za metod autentifikacije dijeljenom tajnom u L2TP i Cisco IPsec korisnim teretima. To je specifično svojstvo u specifičnom teretu, a ne općenito tekstualno polje koje možete ponovo koristiti za drugi protokol koji slučajno traži tajnu.
Tvrdnja o ograničenju pripada jednoj kombinaciji
Stari izvještaji o gornjoj granici od trideset dva znaka na jednom Apple klijentu stvarni su izvještaji o jednoj verziji klijenta, protokolu i obliku profila. Oni nisu univerzalno ograničenje za svaku Apple platformu, svakog provajdera i svaki protokol. Provjerite verziju, tip tereta i zahtjev gatewaya zajedno, pa testirajte na odobrenom aranžmanu umjesto da zaključujete iz teme. Upišite testiranu kombinaciju u zapis o promjenama, jer će se sljedeća osoba inače pozvati na istu temu s više povjerenja nego što zaslužuje.
Ako se ograničenje zaista primjenjuje, odgovor je podržan dizajn vjerodajnica koji se uklapa, a ne skraćena verzija jake tajne. Skraćivanje produkcijskog ključa da bi se zadovoljilo nagađano ograničenje trajno smanjuje njegovu snagu i stvara sistem čija dokumentacija više ne odgovara njegovoj sigurnosti.
Ispravite predstavu, ne snagu
Kada autentifikacija ne uspije nakon što je predstava potvrđena, pročitajte efektivnu politiku u fazi autentifikacije: koji se metod pregovara, koji se identitet partnera očekuje i da li gateway odgovara konekciji koju mislite. Postepeno slabije pretpostavke nisu dijagnoza, one su sporo degradiranje s priloženim tiketom podrške.
Ako potrebne vjerodajnice ne mogu zadovoljiti standard organizacije, promijenite dizajn na onaj koji može. Dijeljena tajna s dovoljno entropije, generisana jednom, pohranjena u upravljanom polju i nikada objavljena, savršeno je dobar odgovor; njezina kraća verzija nije.