OpenSSH 8.2 útgáfa með stuðningi við FIDO/U2F tvíþætta auðkenningartákn

Eftir fjögurra mánaða þróun fram sleppa OpenSSH 8.2, opin útfærsla á biðlara og netþjóni til að vinna yfir SSH 2.0 og SFTP samskiptareglur.

Lykil framför í útgáfu OpenSSH 8.2 var hæfileikinn til að nota tvíþætta auðkenningu með því að nota tæki sem styðja samskiptareglur U2F, þróað af bandalaginu Fido. U2F gerir kleift að búa til ódýran vélbúnaðartákn til að staðfesta líkamlega viðveru notandans, hafa samskipti við þá í gegnum USB, Bluetooth eða NFC. Slík tæki eru kynnt sem leið til tveggja þátta auðkenningar á vefsíðum, eru nú þegar studd af helstu vöfrum og eru framleidd af ýmsum framleiðendum, þar á meðal Yubico, Feitian, Thetis og Kensington.

Til að hafa samskipti við tæki sem staðfesta viðveru notandans hefur nýjum lyklategundum „ecdsa-sk“ og „ed25519-sk“ verið bætt við OpenSSH, sem nota ECDSA og Ed25519 stafræna undirskriftaralgrím, ásamt SHA-256 kjötkássa. Aðferðir til að hafa samskipti við tákn eru settar í millisafn, sem er hlaðið á svipaðan hátt og safnið fyrir PKCS#11 stuðning og er umbúðir ofan á safnið libfido2, sem veitir verkfæri til að hafa samskipti við tákn í gegnum USB (FIDO U2F/CTAP 1 og FIDO 2.0/CTAP 2 samskiptareglur eru studdar). Millisafn libsk-libfido2 útbúið af OpenSSH forriturum innifalið inn í kjarna libfido2, sem og HID bílstjóri fyrir OpenBSD.

Til að auðkenna og búa til lykil verður þú að tilgreina „SecurityKeyProvider“ færibreytuna í stillingunum eða stilla SSH_SK_PROVIDER umhverfisbreytuna, sem gefur til kynna slóðina að ytra bókasafninu libsk-libfido2.so (flytja út SSH_SK_PROVIDER=/path/to/libsk-libfido2. svo). Það er hægt að byggja openssh með innbyggðum stuðningi fyrir lagasafnið (--with-security-key-builtin), í þessu tilviki þarftu að stilla “SecurityKeyProvider=innri” færibreytuna.
Næst þarftu að keyra "ssh-keygen -t ecdsa-sk" eða, ef lyklarnir hafa þegar verið búnir til og stilltir, tengdu við netþjóninn með því að nota "ssh". Þegar þú keyrir ssh-keygen verður lyklaparið sem búið er til vistað í „~/.ssh/id_ecdsa_sk“ og hægt er að nota það á svipaðan hátt og aðra lykla.

Opinbera lykilinn (id_ecdsa_sk.pub) ætti að afrita á netþjóninn í authorized_keys skránni. Á þjóninum er aðeins stafræna undirskriftin staðfest og samskipti við tákn eru framkvæmd á biðlarahliðinni (þú þarft ekki að setja upp libsk-libfido2 á þjóninum, en þjónninn verður að styðja „ecdsa-sk“ lyklategundina) . Myndaði einkalykillinn (id_ecdsa_sk) er í meginatriðum lyklahandfang, myndar raunverulegan lykil aðeins í samsetningu með leyndaröðinni sem geymd er á U2F táknhliðinni. Ef id_ecdsa_sk lykillinn fellur í hendur árásarmanns, til að standast auðkenningu, þarf hann einnig að fá aðgang að vélbúnaðarlyklinum, án þess er einkalykillinn sem geymdur er í id_ecdsa_sk skránni gagnslaus.

Að auki, sjálfgefið, þegar allar aðgerðir eru framkvæmdar með lyklum (bæði við myndun og við auðkenningu), er krafist staðbundinnar staðfestingar á líkamlegri viðveru notandans, til dæmis er lagt til að snerta skynjarann ​​á tákninu, sem gerir það erfitt að framkvæma fjarárásir á kerfi með tengdu tákni. Sem önnur varnarlína er einnig hægt að tilgreina lykilorð á ræsingarstigi ssh-keygen til að fá aðgang að lykilskránni.

Nýja útgáfan af OpenSSH tilkynnti einnig um væntanlega afskrift reiknirita sem nota SHA-1 kjötkássa vegna kynningu virkni árekstrarárása með tilteknu forskeyti (kostnaður við að velja árekstur er áætlaður um 45 þúsund dollarar). Í einni af væntanlegum útgáfum ætla þeir að slökkva sjálfgefið á getu til að nota ssh-rsa almenningslykil stafræna undirskriftaralgrím, sem er getið í upprunalegu RFC fyrir SSH samskiptareglur og er enn útbreitt í reynd (til að athuga notkun ssh -rsa í kerfum þínum, þú getur reynt að tengjast í gegnum ssh með "-oHostKeyAlgorithms=-ssh-rsa" valkostinum).

Til að jafna umskiptin yfir í ný reiknirit í OpenSSH, í framtíðarútgáfu verður UpdateHostKeys stillingin sjálfkrafa virkjuð, sem mun sjálfkrafa flytja viðskiptavini yfir í áreiðanlegri reiknirit. Ráðlögð reiknirit fyrir flutning eru rsa-sha2-256/512 byggt á RFC8332 RSA SHA-2 (studd síðan OpenSSH 7.2 og notað sjálfgefið), ssh-ed25519 (studd síðan OpenSSH 6.5) og ecdsa-sha2-nistp256/384 byggt á RFC521 ECDSA (studd síðan OpenSSH 5656).

Í OpenSSH 8.2 er möguleikinn á að tengjast með „ssh-rsa“ enn tiltækur, en þetta reiknirit hefur verið fjarlægt af CASignatureAlgorithms listanum, sem skilgreinir reiknirit sem leyfilegt er að undirrita ný skilríki með stafrænum hætti. Á sama hátt hefur diffie-hellman-group14-sha1 reikniritið verið fjarlægt úr sjálfgefna lyklaskipta reikniritinu sem studd er. Það er tekið fram að notkun SHA-1 í skírteinum fylgir aukinni áhættu þar sem árásarmaðurinn hefur ótakmarkaðan tíma til að leita að árekstri fyrir núverandi skírteini, en tími árásar á hýsillykla takmarkast af tengingartíma (LoginGraceTime) ).

Að keyra ssh-keygen er nú sjálfgefið fyrir rsa-sha2-512 reikniritið, sem er stutt síðan OpenSSH 7.2, sem gæti skapað samhæfnisvandamál þegar reynt er að vinna úr vottorðum sem eru undirrituð í OpenSSH 8.2 á kerfum sem keyra eldri OpenSSH útgáfur (til að vinna í kringum málið þegar Hvenær þegar þú býrð til undirskrift geturðu sérstaklega tilgreint „ssh-keygen -t ssh-rsa“ eða notað ecdsa-sha2-nistp256/384/521 reiknirit, studd síðan OpenSSH 5.7).

Aðrar breytingar:

  • Include tilskipun hefur verið bætt við sshd_config, sem gerir þér kleift að hafa innihald annarra skráa á núverandi stað stillingarskrárinnar (glob grímur er hægt að nota þegar skráarheitið er tilgreint);
  • „No-touch-required“ valmöguleikinn hefur verið bætt við ssh-keygen, sem slekkur á þörfinni á að staðfesta líkamlega aðgang að tákninu þegar lykillinn er búinn til;
  • PubkeyAuthOptions tilskipun hefur verið bætt við sshd_config, sem sameinar ýmsa valkosti sem tengjast auðkenningu almenningslykils. Eins og er er aðeins „no-touch-required“ fáninn studdur til að sleppa líkamlegri viðveruathugunum fyrir auðkenningu auðkennis. Á hliðstæðan hátt hefur valmöguleikinn „no-touch-required“ verið bætt við authorized_keys skrána;
  • Bætti við "-O write-attestation=/path" valmöguleikanum við ssh-keygen til að leyfa skrifum viðbótar FIDO vottorða þegar lyklar eru búnir til. OpenSSH notar ekki enn þessi vottorð, en þau geta síðar verið notuð til að sannreyna að lykillinn sé settur í trausta vélbúnaðarverslun;
  • Í ssh og sshd stillingunum er nú hægt að stilla forgangsstillingu umferðar í gegnum IPQoS tilskipunina LE DSCP (Lærri áreynsla á hverja hop hegðun);
  • Í ssh, þegar gildið „AddKeysToAgent=yes“ er stillt, ef lykillinn inniheldur ekki athugasemdareit, verður honum bætt við ssh-agent sem gefur til kynna slóðina að lyklinum sem athugasemd. IN
    ssh-keygen og ssh-agent nota nú einnig PKCS#11 merki og X.509 efnisheitið í stað bókasafnsslóðarinnar sem athugasemdir í lyklinum;

  • Bætti við getu til að flytja út PEM fyrir DSA og ECDSA lykla í ssh-keygen;
  • Bætti við nýju keyrslutæki, ssh-sk-helper, notað til að einangra FIDO/U2F táknaðgangssafnið;
  • Bætt við „--with-zlib“ byggingarvalkosti við ssh og sshd fyrir samantekt með zlib bókasafnsstuðningi;
  • Í samræmi við kröfu RFC4253 er viðvörun um aðgangslokun vegna þess að farið er yfir MaxStartups takmörk í borðanum sem birtist við tengingu. Til að einfalda greiningu sýnir sshd ferlihausinn, sem er sýnilegur þegar ps tólið er notað, nú fjölda staðfestra tenginga og stöðu MaxStartups takmörkanna;
  • Í ssh og ssh-agent, þegar hringt er í forrit til að birta boð á skjánum, tilgreint með $SSH_ASKPASS, er fáni með tegund boðs nú sendur til viðbótar: „staðfesta“ - staðfestingargluggi (já/nei), „ekkert“ ” - upplýsingaskilaboð, „autt“ — beiðni um lykilorð;
  • Bætti við nýrri stafrænni undirskriftaraðgerð "find-principals" við ssh-keygen til að leita í leyfisskránni fyrir notandann sem tengist tiltekinni stafrænni undirskrift;
  • Bættur stuðningur við sshd ferli einangrun á Linux með því að nota seccomp vélbúnaðinn: slökkva á IPC kerfissímtölum, leyfa clock_gettime64(), clock_nanosleep_time64 og clock_nanosleep().

Heimild: opennet.ru

Bæta við athugasemd