Bola vydaná OpenSSH 10.6, implementácia klienta a servera s otvoreným zdrojovým kódom pre SSH 2.0 a SFTP. Bezpečnostné problémy, z ktorých väčšina bola identifikovaná analýzou kódu pomocou nástrojov umelej inteligencie, boli vyriešené (identifikátory CVE neboli priradené):
- Zraniteľnosť v protokole SFTP umožňuje zápis súboru mimo cieľového adresára pri prístupe k serveru kontrolovanému útočníkmi.
- Dve zraniteľnosti v implementácii GSSAPI v sshd boli spôsobené pretrvávaním stavu medzi pokusmi o autentifikáciu. Prihlasovacie údaje GSSAPI mohli pretrvávať aj po neúspešnom pokuse o autentifikáciu a byť použité po následnom úspešnom pokuse o autentifikáciu. Problémy sa prejavujú, keď je povolené nastavenie GSSAPIAuthentication.
- Podpora kompresie LZ77 je v sshd a ssh vypnutá z dôvodu možnosti útoku cez bočný kanál, ktorý umožňuje obnovu obsahu z inej relácie pri pripojení prostredníctvom zdieľaného multiplexovaného spojenia s obeťou, pričom sa využíva skutočnosť, že vstup ovládaný útočníkom ovplyvňuje celkovú dĺžku prenášaných šifrovaných správ (LZ77 nahrádza opakované reťazce odkazmi vo vyrovnávacej pamäti zdieľanej všetkými kanálmi).
- Nástroj ssh zakazuje používanie znakov „$“ a „\“ v používateľských menách zadávaných na príkazovom riadku, pretože by sa mohli použiť na spustenie kódu pri nahrádzaní mien do direktív ProxyCommand a Match exec uvedených v nastaveniach.
- V ssh-keygen bola opravená nesprávna manipulácia s letným časom, ktorá mala za následok posun dátumu expirácie certifikátu o 1 hodinu.
- Na blokovanie vytvárania zip bômb v sshd a ssh bola pridaná kontrola prekročenia maximálnej veľkosti paketu pri rozbaľovaní dát.
- V sshd bol vyriešený problém, pri ktorom sa obmedzenie kľúčového slova „restrict“ v súbore authorized_keys obchádzalo a neaplikovalo sa na tunely (PermitTunnel).
- V sshd sa už možnosť „none“ v blokoch Match neparazuje nesprávne, čo sa v niektorých direktívach, ako napríklad AuthorizedPrincipalsFile, interpretuje ako názov súboru a nie ako indikácia, že direktíva je zakázaná.
- Opravená chyba v sshd, kde sa root oprávnenia nevymazali na platformách, ktoré nepodporujú odovzdávanie deskriptorov súborov a vyžadujú root oprávnenia na pridelenie PTY. Tento problém sa vyskytuje v QNX 6, SCO OpenServer 5 a pri zostavovaní s možnosťou „--disable-fd-passing“.
Zmeny nesúvisiace so zraniteľnosťou:
- Bola povolená podpora pre hybridný kryptografický algoritmus ssh-mldsa44-ed25519, ktorý je odolný voči útokom hrubou silou na kvantové počítače.
- Možnosť WarnWeakCrypto bola implementovaná a štandardne povolená v sshd_config na ovládanie, či sa zobrazujú upozornenia pri nadviazaní spojenia pomocou algoritmov zhody kľúčov odolných voči kvantovej odolnosti.
- ssh-keygen a ssh-add implementujú politiku credProtect na kontrolu prihlasovacích údajov, aby splnili požiadavky na overenie (PIN alebo biometria) pred prístupom k rezidentným kľúčom na tokenoch FIDO.
- Pridaný príznak „-P“ do ssh-add na preskočenie voliteľného zadania PIN kódu pre tokeny FIDO a PKCS#11.
- V ssh príkaz ~I zobrazuje informácie o verziách na lokálnych a vzdialených systémoch.
- V sftp bol k príkazom mkdir/lmkdir pridaný príznak '-p' na vytvorenie adresárov, ak je to potrebné.
- Do ssh-keygen bol pridaný režim „hexdump“ na export kľúčov ako hexadecimálnych výpisov (napríklad na vloženie do dokumentácie).
- V ssh a sshd umožňuje direktíva ChannelTimeout špecifikovať časové limity s presnosťou na zlomky sekúnd.
- Pridaná možnosť AgentSocketPath do sshd na určenie cesty k $SSH_AUTH_SOCK pri preposielaní agenta (napr. user:.ssh/agent pre podadresáre v $HOME a shared:/tmp pre zdieľané adresáre).
- ssh-agent má príznak „-A“ na určenie adresárov so socketmi agentov, ktorý umožňuje zadať predpony „user:“ a „shared:“, ako v premennej AgentSocketPath.
- V sshd je overovanie verejného kľúča teraz oddelené od pokusov o autentifikáciu. Bola pridaná možnosť „PubkeyOptions max-pk-ok:nnnn“ na konfiguráciu počtu pokusov o overenie verejného kľúča (predvolene 6), po ktorých bude pripojenie ukončené na základe limitu MaxAuthTries.
- V ssh a sshd teraz voľba TCPKeepAlive podporuje hodnotu „all“, ktorá umožňuje odosielanie paketov keepalive nielen pre hlavné pripojenie, ale aj pre pripojenia presmerované cez neho.
Zdroj: opennet.ru
