OpenSSH 10.6p2 Menutup Celah Login Tanpa Password di Alpine Linux: Server Tanpa PAM dengan Kata Sandi Panjang Bisa Dibobol, Matikan PasswordAuthentication dan Perbarui

Ilustrasi koneksi SSH ke server Linux terkait celah autentikasi password OpenSSH

Proyek OpenSSH merilis versi 10.6p2 pada 5 November 2026 untuk menutup celah autentikasi password di sshd. Alpine Linux menerbitkan advisori pada hari yang sama setelah peneliti Özgün Kültekin melaporkan bahwa penyerang bisa masuk ke akun tanpa password hanya dengan satu koneksi. Belum ada nomor CVE saat kedua pengumuman itu terbit, dan belum ada laporan serangan di lapangan.

Cara celah ini bekerja dan siapa yang terdampak

Menurut Alpine, akar masalahnya ada di fungsi crypt() pada library musl, bukan di logika sshd sendiri. Ketika kata sandi lebih panjang dari 256 byte, crypt() mengembalikan tanda bintang sebagai penanda galat. Tanda bintang yang sama tersimpan di kolom password akun yang tidak punya kata sandi, jadi sshd menganggap keduanya cocok dan mengizinkan login. Penyerang mengirim kata sandi sepanjang 257 sampai 1.024 byte, dan menurut Alpine serangan itu berhasil pada percobaan pertama.

Server rentan bila keempat syarat ini terpenuhi: memakai paket openssh-server Alpine tanpa PAM (atau openssh-server-pam dengan UsePAM no), PasswordAuthentication bernilai yes yang merupakan bawaan OpenSSH, ada akun dengan kolom password berisi tanda bintang, dan ada minimal satu akun lokal lain dengan hash berawalan $5$ atau $6$. Akun root di Alpine umumnya berkolom bintang, tetapi bawaan PermitRootLogin prohibit-password melindunginya kecuali administrator mengubahnya menjadi yes. Akun lain yang bisa naik jadi root lewat doas tetap berisiko.

Image cloud resmi tiny-cloud Alpine dari 3.18.11 sampai 3.24.3 punya pengguna alpine tanpa password dan doas tanpa password. Image itu aman saat pertama menyala, tetapi menjadi rentan begitu ada hash $6$ di mesin, misalnya setelah admin mengatur password konsol. Sistem berbasis glibc, sistem non-Linux, container yang tidak menjalankan sshd, dan server dengan UsePAM yes tidak terdampak.

Versi terdampak dan versi perbaikan

Alpine menyebut cabang 3.16 sampai 3.24 dan edge terdampak. Paket openssh yang sudah diperbaiki adalah 10.6_p2-r0 di edge, 10.3_p1-r2 di 3.24, 10.2_p1-r1 di 3.23, 10.0_p1-r11 di 3.22, dan 9.9_p2-r1 di 3.21. Alpine juga menyediakan paket perbaikan untuk cabang 3.16 sampai 3.20, meski cabang itu sudah tidak menerima pembaruan rutin. Rilis point yang memuat perbaikan adalah 3.21.10, 3.22.8, 3.23.8, dan 3.24.4. Catatan rilis OpenSSH tidak merinci versi upstream mana yang rentan, jadi pengguna musl tanpa PAM sebaiknya langsung ke 10.6p2.

Langkah yang perlu diambil administrator

Alpine meminta administrator menjalankan apk upgrade -U -a, lalu me-restart layanan dengan rc-service sshd restart. Restart wajib karena pembaruan paket tidak mengganti daemon yang sedang berjalan. Bila belum bisa memperbarui, matikan login password dengan PasswordAuthentication no, uji dulu login memakai kunci SSH dan biarkan sesi lama terbuka, lalu validasi dengan sshd -t dan sshd -T.

Untuk memeriksa kemungkinan penyusupan, cari baris “Accepted password for” pada akun tanpa password di /var/log/messages. Tinjau juga pemakaian doas, pengguna baru, dan perubahan pada authorized_keys. Alpine menyarankan menganggap mesin telah disusupi bila login tidak bisa dipastikan aman. Server Alpine di VPS, router, atau perangkat tertanam yang membuka port SSH ke internet layak diperiksa lebih dulu.

Sumber: advisori Alpine Linux, catatan rilis OpenSSH 10.6p2, dan The Hacker News. Gambar: The Hacker News.