Rilis Git versi 2.48.1 pada Patch Selasa Januari 2025 mengatasi dua hal yang baru teridentifikasi kerentanan keamanan yang menimbulkan risiko signifikan bagi pengembang di seluruh dunia.
Kerentanan, CVE-2024-50349 dan CVE-2024-52006, keduanya melibatkan potensi eksploitasi proses manajemen kredensial Git, yang menggarisbawahi pentingnya praktik keamanan yang kuat dalam pengembangan sumber terbuka.
Kerentanan ini adalah diungkapkan oleh peneliti keamanan RyotaK, dengan perbaikan yang dikembangkan oleh Johannes Schindelin bekerja sama dengan milis keamanan git pribadi.
GitHub mengatakan mereka telah mengambil langkah proaktif untuk memitigasi risiko ini dengan menerapkan pembaruan di seluruh alat dan platformnya.
Terkait: Patch Selasa Januari 2025: Microsoft Menambal 159 Kerentanan di Hyper-V, OLE, dan Lainnya
Memahami Kerentanan: Melihat Lebih Dekat
CVE-2024-50349 mengungkap kelemahan dalam cara Git menangani permintaan kredensial interaktif. Saat Git meminta masukan pengguna untuk kredensial, Git akan menampilkan nama host setelah mendekode URL.
Perilaku ini memungkinkan penyerang menyematkan rangkaian escape ANSI ke dalam URL berbahaya, sehingga berpotensi menimbulkan perintah yang menyesatkan. Penipuan seperti itu dapat mengelabui pengembang agar secara tidak sengaja mengungkapkan kredensial sensitif.
Kerentanan lainnya, CVE-2024-52006, memengaruhi protokol pembantu kredensial Git. Pembantu kredensial menyederhanakan proses penyimpanan dan pengambilan kredensial, namun kelemahan ini memungkinkan penyerang memasukkan karakter pengangkutan kembali ke dalam URL yang dibuat khusus.
Terkait: Penawaran Proyek GitHub untuk Memblokir Semua Perayap Web AI yang Dikenal Melalui ROBOTS.TXT
Manipulasi ini mengubah aliran protokol, mengalihkan kredensial pengguna ke yang tidak sah server. Seperti yang dikatakan Schindelin, “Perbaikan ini mengatasi perilaku di mana karakter pengangkutan tunggal ditafsirkan sebagai baris baru oleh beberapa implementasi pembantu kredensial.”
Kedua kerentanan ini belum pernah terjadi sebelumnya. CVE-2024-52006 dibuat berdasarkan kelemahan yang dilaporkan sebelumnya, CVE-2020-5260, menyoroti sifat ancaman yang terus berkembang dalam pengelolaan kredensial.
Respon GitHub
Menyadari potensi dampak kerentanan ini, GitHub dengan cepat meluncurkan pembaruan pada alat-alat utama, termasuk GitHub Desktop, Git LFS, dan Git Credential Manager.
Selain itu, GitHub menerapkan patch keamanan pada lingkungan Codespaces dan alat baris perintah CLI. , memperkuat ekosistemnya terhadap risiko serupa. Platform ini menekankan pentingnya kolaborasi dalam mengatasi masalah ini, dengan menyatakan, “Langkah proaktif kami memastikan bahwa pengembang tetap terlindungi saat menggunakan layanan GitHub.”
Terkait: GitHub Mengumumkan Paket Gratis Copilot GitHub Baru untuk Visual Studio
GitHub juga merilis praktik terbaik bagi pengembang yang tidak dapat segera memperbarui ke Git 2.48.1. Rekomendasinya mencakup menghindari tanda –recurse-submodules selama operasi kloning dari repositori yang tidak tepercaya dan membatasi ketergantungan pada pembantu kredensial.
Rekomendasi untuk Pengembang
Pengembang sangat disarankan untuk meningkatkan ke Git 2.48.1 untuk memitigasi risiko ini sepenuhnya. Versi terbaru mencakup patch untuk CVE-2024-50349 dan CVE-2024-52006, serta peningkatan keamanan lainnya. Bagi mereka yang menghadapi penundaan dalam pembaruan, pedoman GitHub memberikan strategi sementara untuk meminimalkan paparan.
Kerentanan ini menyoroti tantangan yang lebih luas dalam mengamankan alat sumber terbuka. Penggunaan Git secara luas di seluruh tim pengembangan menjadikannya komponen penting dalam alur kerja perangkat lunak modern, dan kelemahan keamanan apa pun dapat berdampak besar pada proyek dan organisasi.
Terkait: GitHub Copilot Menambahkan Referensi Kode di Visual Studio