Proyek Alpine Linux membangun ulang server GitLab-nya dari nol setelah seorang penyerang mencoba mengeksploitasi CVE-2026-97229, celah berskor CVSS 10,0 yang berada di Onigmo, mesin regex bawaan Ruby. Alpine menerbitkan laporan insidennya pada 28 Oktober 2026. Hasil penyelidikan Alpine: tidak ada bukti kode penyerang berjalan di server, tetapi Alpine mengaku tidak bisa memastikannya.
Kronologi dan penyebab
GitLab merilis perbaikan pada 12 Oktober. Sehari kemudian CVE diumumkan, dan Alpine justru menaikkan servernya ke GitLab 19.3.4, bukan 19.3.5 yang memuat perbaikan. Alpine menyebut itu kekeliruan. Pada 20 Oktober, akun yang baru didaftarkan mulai mengirim konfigurasi CI yang dirancang khusus. Pada 21 Oktober proses pekerja GitLab mogok delapan kali, dan empat di antaranya terhenti di tengah jalannya eksploitasi.
Alpine lalu menaikkan server ke 19.3.6 pada 22 Oktober, tetapi versi itu tetap rentan jika memakai Ruby standar. Perbaikan GitLab ternyata berupa tambalan Ruby yang hanya dipasang di paket dan image resmi GitLab. Ruby sendiri baru merilis versi aman pada 23 Oktober: 3.3.13, 3.4.12, dan 4.0.9. Alpine memblokir akun penyerang pada 23 Oktober, menemukan server masih rentan pada 26 Oktober, menutup akses pada 27 Oktober, dan menyelesaikan pembangunan ulang sehari kemudian. Menurut Alpine, tidak ada tanda kode dijalankan, dan paket yang dibangun 20 sampai 24 Oktober sudah dicocokkan dengan catatan di luar GitLab. Kunci penandatangan paket tidak pernah disimpan di server itu.
Rapid7 sebelumnya menerbitkan analisis teknis dan membuktikan di lingkungan lab bahwa celah ini bisa menjalankan perintah pada GitLab 19.4.1. Jalur yang diuji Rapid7 memerlukan akses tulis ke proyek publik, kecuali di server yang mengizinkan siapa saja mendaftar dan membuat proyek. GitLab menyebut eksploitasi berlaku pada kondisi tertentu, dan hingga pembaruan 28 Oktober celah ini belum masuk katalog KEV milik CISA.
Langkah yang perlu diambil pembaca
Administrator GitLab self-hosted perlu naik ke rilis terbaru cabangnya: 19.4.3, 19.3.6, atau 19.2.9. Untuk instalasi yang dikompilasi sendiri atau image yang membawa Ruby sendiri, Ruby juga wajib diperbarui ke 3.3.13, 3.4.12, 4.0.9, atau yang lebih baru. Ruby 3.2 sudah habis masa dukungnya dan tidak akan mendapat perbaikan. Paket Linux dan image resmi GitLab sudah memuat Ruby yang ditambal.
Pengguna Alpine disarankan menjalankan apk upgrade untuk mendapat Ruby 3.4.12 (Alpine 3.22, 3.23, 3.24, dan edge) atau 3.3.13 (Alpine 3.21), serta menarik ulang image alpinelinux/gitlab:19.3.6. Image yang ditarik sebelum 27 Oktober dan semua tag lama masih rentan. Pemilik akun di GitLab Alpine harus mengatur ulang sandi lewat “Forgot your password?” saat layanan dibuka kembali, dan mengganti sandi yang dipakai ulang di situs lain. Sambil menunggu upgrade, Rapid7 menyarankan membatasi akses anonim ke proyek publik dan siapa yang boleh membuat atau menulis ke proyek tersebut. Langkah itu hanya menutup jalur yang diuji Rapid7, bukan memperbaiki celahnya.
Sumber: laporan insiden Alpine Linux dan The Hacker News. Gambar: The Hacker News.
