Keluaran OpenSSH 8.4

Selepas empat bulan pembangunan dibentangkan keluaran OpenSSH 8.4, klien terbuka dan pelaksanaan pelayan untuk bekerja menggunakan protokol SSH 2.0 dan SFTP.

Perubahan utama:

  • Perubahan keselamatan:
    • Dalam ssh-agent, apabila menggunakan kekunci FIDO yang tidak dicipta untuk pengesahan SSH (ID kunci tidak bermula dengan rentetan "ssh:"), ia kini menyemak bahawa mesej akan ditandatangani menggunakan kaedah yang digunakan dalam protokol SSH. Perubahan tidak akan membenarkan ssh-agent diubah hala ke hos jauh yang mempunyai kunci FIDO untuk menyekat keupayaan menggunakan kunci ini untuk menjana tandatangan untuk permintaan pengesahan web (kes terbalik, apabila penyemak imbas boleh menandatangani permintaan SSH, pada mulanya dikecualikan disebabkan penggunaan awalan "ssh:" dalam pengecam kunci).
    • Penjanaan kunci pemastautin ssh-keygen termasuk sokongan untuk alat tambah credProtect yang diterangkan dalam spesifikasi FIDO 2.1, yang menyediakan perlindungan tambahan untuk kunci dengan memerlukan PIN sebelum melakukan sebarang operasi yang mungkin mengakibatkan pengekstrakan kunci pemastautin daripada token.
  • Perubahan keserasian yang berpotensi memecahkan:
    • Untuk menyokong FIDO/U2F, disyorkan untuk menggunakan perpustakaan libfido2 sekurang-kurangnya versi 1.5.0. Keupayaan untuk menggunakan edisi lama telah dilaksanakan sebahagiannya, tetapi dalam kes ini, fungsi seperti kunci pemastautin, permintaan PIN dan penyambungan berbilang token tidak akan tersedia.
    • Dalam ssh-keygen, data pengesah yang diperlukan untuk mengesahkan pengesahan tandatangan digital telah ditambahkan pada format maklumat pengesahan, secara pilihan disimpan apabila menjana kunci FIDO.
    • API yang digunakan apabila OpenSSH berinteraksi dengan lapisan untuk mengakses token FIDO telah diubah.
    • Apabila membina versi mudah alih OpenSSH, automake kini diperlukan untuk menjana skrip konfigurasi dan fail binaan yang disertakan (jika membina daripada fail tar kod yang diterbitkan, konfigurasi penjanaan semula tidak diperlukan).
  • Sokongan tambahan untuk kunci FIDO yang memerlukan pengesahan PIN dalam ssh dan ssh-keygen. Untuk menjana kunci dengan PIN, pilihan "sahkan-diperlukan" telah ditambahkan pada ssh-keygen. Jika kekunci sedemikian digunakan, sebelum melakukan operasi penciptaan tandatangan, pengguna digesa untuk mengesahkan tindakan mereka dengan memasukkan kod PIN.
  • Dalam sshd, pilihan "sahkan-diperlukan" dilaksanakan dalam tetapan authorized_keys, yang memerlukan penggunaan keupayaan untuk mengesahkan kehadiran pengguna semasa operasi dengan token. Piawaian FIDO menyediakan beberapa pilihan untuk pengesahan sedemikian, tetapi pada masa ini OpenSSH hanya menyokong pengesahan berasaskan PIN.
  • sshd dan ssh-keygen telah menambah sokongan untuk mengesahkan tandatangan digital yang mematuhi standard FIDO Webauthn, yang membenarkan kunci FIDO digunakan dalam penyemak imbas web.
  • Dalam ssh dalam tetapan CertificateFile,
    ControlPath, IdentityAgent, IdentityFile, LocalForward dan
    RemoteForward membenarkan penggantian nilai daripada pembolehubah persekitaran yang dinyatakan dalam format "${ENV}".

  • ssh dan ssh-agent telah menambah sokongan untuk pembolehubah persekitaran $SSH_ASKPASS_REQUIRE, yang boleh digunakan untuk mendayakan atau melumpuhkan panggilan ssh-askpass.
  • Dalam ssh dalam ssh_config dalam arahan AddKeysToAgent, keupayaan untuk mengehadkan tempoh sah kunci telah ditambah. Selepas had yang ditentukan telah tamat tempoh, kunci dipadamkan secara automatik daripada ssh-agent.
  • Dalam scp dan sftp, menggunakan bendera "-A", anda kini boleh secara eksplisit membenarkan pengalihan ke scp dan sftp menggunakan ssh-agent (pengalihan semula dilumpuhkan secara lalai).
  • Menambah sokongan untuk penggantian '%k' dalam tetapan ssh, yang menentukan nama kunci hos. Ciri ini boleh digunakan untuk mengedarkan kunci ke dalam fail berasingan (contohnya, β€œUserKnownHostsFile ~/.ssh/known_hosts.d/%k”).
  • Benarkan penggunaan operasi "ssh-add -d -" untuk membaca kunci daripada stdin yang akan dipadamkan.
  • Dalam sshd, permulaan dan akhir proses pemangkasan sambungan ditunjukkan dalam log, dikawal menggunakan parameter MaxStartups.

Pembangun OpenSSH juga menarik balik penyahtauliahan algoritma yang akan datang menggunakan cincang SHA-1 disebabkan oleh kenaikan pangkat keberkesanan serangan perlanggaran dengan awalan yang diberikan (kos memilih perlanggaran dianggarkan kira-kira 45 ribu dolar). Dalam salah satu keluaran yang akan datang, mereka merancang untuk melumpuhkan secara lalai keupayaan untuk menggunakan algoritma tandatangan digital kunci awam "ssh-rsa", yang disebut dalam RFC asal untuk protokol SSH dan kekal meluas dalam amalan (untuk menguji penggunaan daripada ssh-rsa dalam sistem anda, anda boleh cuba menyambung melalui ssh dengan pilihan "-oHostKeyAlgorithm=-ssh-rsa").

Untuk melancarkan peralihan kepada algoritma baharu dalam OpenSSH, keluaran seterusnya akan mendayakan tetapan UpdateHostKeys secara lalai, yang secara automatik akan memindahkan pelanggan kepada algoritma yang lebih dipercayai. Algoritma yang disyorkan untuk penghijrahan termasuk rsa-sha2-256/512 berdasarkan RFC8332 RSA SHA-2 (disokong sejak OpenSSH 7.2 dan digunakan secara lalai), ssh-ed25519 (disokong sejak OpenSSH 6.5) dan berasaskan ecdsa-sha2-nistp256/384/521 pada RFC5656 ECDSA (disokong sejak OpenSSH 5.7).

Sumber: opennet.ru

Tambah komen