Paleidimas nauja atviro kliento ir serverio diegimo versija, skirta dirbti su SSH 2.0 ir SFTP protokolais, „OpenSSH 9.2“.
Nauja versija ištaiso pažeidžiamumą, o tai veda prie dvigubo atminties srities išlaisvinimo išankstinio autentifikavimo etape. pažeidžiamumas turi įtakos tik OpenSSH 9.1 leidimui, ankstesnėse versijose problema nerodoma.
Norint sudaryti sąlygas pažeidžiamumo pasireiškimui, pakanka pakeisti SSH kliento reklamjuostę į „SSH-2.0-FuTTYSH_9.1p1“, kad būtų pasiekta vėliavėlių „SSH_BUG_CURVE25519PAD“ ir „SSH_OLD_DHGEX“ konfigūracija, atsižvelgiant į versiją. SSH kliento.
Nustačius šias vėliavėles, „options.kex_algorithms“ buferio atmintis atlaisvinama du kartus: vykdant funkciją do_ssh2_kex(), kuri iškviečia compat_kex_proposal(), ir vykdant funkciją do_authentication2(), kuri iškviečia input_userauth_request( ), mmlow(namal_request( ). ), copy_set_server_options() grandinėje, ensemble_algorithms() ir kex_assemble_names().
Manoma, kad mažai tikėtina, kad bus sukurtas veikiantis pažeidžiamumo išnaudojimas, nes išnaudojimo procesas yra per sudėtingas: šiuolaikinės atminties paskirstymo bibliotekos užtikrina apsaugą nuo dvigubo atminties išlaisvinimo, o išankstinio autentifikavimo procesas, kuriame yra klaida, smėlio dėžėje veikia su sumažintomis privilegijomis.
Be minėto pažeidžiamumo, nauja versija taip pat išsprendžia dar dvi saugumo problemas:
- Apdorojant „PermitRemoteOpen“ nustatymą įvyko klaida, dėl kurios pirmasis argumentas buvo ignoruojamas, jei jis skiriasi nuo reikšmių „any“ ir „none“. Problema atsiranda po OpenSSH 8.7 versijose, todėl patikrinimas praleidžiamas, kai nurodomas tik vienas leidimas.
- Užpuolikas, valdantis DNS serverį, naudojamą pavadinimams nustatyti, gali pakeisti specialiuosius simbolius (pvz., „*“) žinomuose pagrindinio kompiuterio failuose, jei konfigūracijoje įjungtos parinktys CanonicalizeHostname ir CanonicalizePermittedCNAMEs, o sprendiklis nepatikrina DNS pataisymo. serverio atsakymai. Manoma, kad ataka nepasiseks, nes grąžinami vardai turi atitikti sąlygas, nurodytas naudojant CanonicalizePermittedCNAME.
Kas naujo OpenSSH 9.2
Iš OpenSSH 9.2 pakeitimų išsiskiria tai pridėta konfigūracijane ĮgalintiEscapeCommandline a „ssh_config“ kontroliuoti, ar apdorojimas kliento pusėje „~C“ pabėgimo sekos, kai įjungta komandų eilutė. Pagal numatytuosius nustatymus „~C“ apdorojimas dabar išjungtas leisti griežčiau naudoti smėlio dėžę, kuri gali sugadinti sistemas, kurios naudoja „~C“ prievado persiuntimui vykdymo metu
Tai buvo pridėta ChannelTimeout direktyva į sshd_config sshd, kad nustatytų kanalo neveikimo laiką (Kanalai, kuriuose nebuvo aptiktas srautas per politikoje nurodytą laiką, bus automatiškai uždaryti.) Seanso, X11, agento ir peradresavimo srautas gali turėti skirtingą skirtąjį laiką.
iš kiti pakeitimai:
- Pridėta UnusedConnectionTimeout direktyva prie sshd_config for sshd, kuri leidžia nustatyti skirtąjį laiką, skirtą ryšiams iš klientų, kurie tam tikrą laiką neturėjo aktyvių kanalų, nutraukti.
- Prie sshd pridėta parinktis „-V“, kad būtų rodoma versija, panaši į ssh kliento parinktį.
- Pridėta eilutė „host“ prie „ssh -G“ išvesties, kad atspindėtų pagrindinio kompiuterio pavadinimo argumento reikšmę.
- Pridėta parinktis „-X“ prie scp ir sftp, kad būtų galima valdyti SFTP parametrus, tokius kaip kopijavimo buferio dydis ir laukiančių užklausų skaičius.
- ssh-keyscan leidžia nuskaityti visus CIDR adresų diapazonus, pavyzdžiui, „ssh-keyscan 192.168.0.0/24“.
Pagaliau jei norite sužinoti daugiau apie tai apie šią naują versiją galite patikrinti išsamią informaciją eidami į šią nuorodą.
Kaip įdiegti „OpenSSH 9.2“ sistemoje „Linux“?
Tiems, kurie nori įdiegti šią naują „OpenSSH“ versiją savo sistemose, kol kas jie gali tai padaryti atsisiųsdami šio ir atlikdami kompiliaciją savo kompiuteriuose.
Taip yra todėl, kad naujoji versija dar nebuvo įtraukta į pagrindinių „Linux“ paskirstymų saugyklas. Norėdami gauti šaltinio kodą, galite tai padaryti iš kita nuoroda.
Atliktas atsisiuntimas, dabar mes išpakuosime paketą naudodami šią komandą:
tar -xvf openssh-9.2.tar.gz
Įeiname į sukurtą katalogą:
cd openssh-9.2
Y mes galime sudaryti su šias komandas:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install
"Paskubomis?"…
Na, aš juos išimu, hehe.
Dėkojame už stebėjimą.