Mengungkap Kerentanan Eksekusi Kode Saat Mengekspor Jupyter Notebook: Risiko & Solusinya

 Pendahuluan: Jupyter dan Tantangan Keamanan Modern

Jupyter Notebook telah menjadi alat penting dalam data science, machine learning, analisis statistik, dan pengembangan AI. Dengan jutaan notebook yang tersebar di repositori publik seperti GitHub, penggunaannya yang luas menjadikan platform ini bagian penting dari workflow ilmuwan data dan engineer di seluruh dunia.

Namun, seiring pertumbuhan ekosistem ini, celah risiko keamanan baru muncul — termasuk yang ditemukan pada proses ekspor notebook menggunakan alat nbconvert, yang ternyata bisa disalahgunakan penyerang untuk mengeksekusi kode berbahaya pada mesin pengguna.


 Apa Itu Kerentanan Eksekusi Kode di Ekspor Notebook?

Imperva Threat Research Group menemukan bahwa proses ekspor Jupyter Notebook ke PDF melalui nbconvert berpotensi dieksploitasi di sistem Windows. Kerentanan ini diberi nama CVE‑2025‑53000 dan terjadi karena cara Jupyter mencari jalur ke aplikasi eksternal seperti Inkscape, yang digunakan untuk mengonversi grafik SVG saat membuat PDF.

Pada Windows, saat nbconvert memproses file notebook yang berisi output grafik SVG, modul svg2pdf.py memanggil executable Inkscape lewat Python fungsi shutil.which("inkscape"). Masalahnya, fungsi ini menggunakan current working directory (CWD) dalam pencarian executable, sehingga jika ada file bernama inkscape.bat yang disisipkan penyerang di direktori notebook, file tersebut akan dijalankan — membuka kemungkinan eksekusi kode arbitrer dengan hak akses pengguna.


 Mengapa Ini Berbahaya?

Kerentanan ini bukan cuma teori abstrak — dampaknya nyata apabila seorang pengguna:

  • Mengunduh notebook dari sumber yang tidak terpercaya,

  • Lalu menjalankan ekspor PDF tanpa sadar,

  • Dan berakhir mengeksekusi skrip berbahaya bernama inkscape.bat yang ditempatkan penyerang di direktori kerja.

Begitu dieksekusi, skrip berbahaya dapat mengancam kerahasiaan, integritas, dan ketersediaan data di mesin pengguna:

  • Menyusupi notebook atau dataset sensitif,

  • Mengakses kredensial cloud (seperti AWS, Azure, Google Cloud),

  • Menyebarkan malware atau skrip lain melalui package manager (conda, pip),

  • Mengubah atau merusak lingkungan kerja.

Semua ini terjadi dengan hak akses pengguna lokal, tanpa perlu akses admin khusus, dan tanpa perlu konfirmasi eksplisit dari korban selain melakukan ekspor notebook.


 Sumber Masalah Teknis

Masalah utama berasal dari perilaku shutil.which() di bawah Python versi sebelum 3.12 pada Windows, yang tidak menghormati variabel lingkungan NoDefaultCurrentDirectoryInExePath, sehingga secara default akan mencari executable di CWD terlebih dahulu.

Python 3.12 dan versi lebih baru sudah memperbaiki perilaku ini saat variabel lingkungan diset, tetapi karena Jupyter masih mendukung Python versi lama (mulai Python 3.9), versi‑versi rentan tetap terpengaruh.


 Dampak CVE‑2025‑53000

Menurut catatan CVE yang dipublikasikan, kerentanan ini memiliki tingkat keparahan tinggi dengan skor CVSS v3 sekitar 7.8 (High), menandakan dampak serius pada kerahasiaan dan integritas data serta ketersediaan sistem jika exploit berhasil.

Selain itu, exploit ini tidak membutuhkan hak istimewa tambahan atau otentikasi, cukup dengan manipulasi file lokal dalam direktori notebook yang diekspor.


 Rekomendasi Perlindungan dan Mitigasi Risiko

Imperva Research Group merekomendasikan langkah‑langkah berikut untuk mengurangi risiko ini:

  1. Gunakan server Jupyter terpusat untuk memproses notebook daripada menjalankannya secara lokal.

  2. Perbarui semua komponen Jupyter dan terkait, termasuk nbconvert, Python, dan dependensi lain ke versi terbaru.

  3. Batasi file eksternal yang dapat diproses, terutama dari sumber tidak terpercaya.

  4. Set variabel lingkungan NoDefaultCurrentDirectoryInExePath pada Windows untuk mencegah pencarian executable di CWD.

Selain itu, tim keamanan harus memperhatikan perilaku penggunaan notebook di lingkungan tim, termasuk memastikan sumber‑sumber notebook melalui kebijakan keamanan file dan pemeriksaan manual sebelum dijalankan atau diekspor.


 Studi Kasus: Lingkungan Data Sains di Jaringan

Kerentanan seperti ini menjadi masalah nyata terutama di lingkungan yang sering berbagi notebook, seperti:

  • Tim ilmuwan data di perusahaan,

  • Institusi pendidikan yang membagikan materi pembelajaran,

  • Situs kolaborasi umum seperti GitHub / GitLab.

Dengan jutaan notebook publik dan banyak pengguna awam yang mengunduh dan menjalankannya tanpa pemeriksaan keamanan mendalam, kemungkinan eksploitasi sangat meningkat.


Tabel Pendukung: Ringkasan Kerentanan Ekspor Jupyter Notebook

Aspek Detail
CVE ID CVE‑2025‑53000
Produk Rentan nbconvert (Jupyter Notebook export tool)
Platform Terpengaruh Windows
Eksploitasi Arbitrary code execution saat ekspor PDF
Mekanisme Eksploitasi Hijacking Inkscape path search dengan file berbahaya di CWD
Penyebab Teknis shutil.which() mencari executable di CWD
Dampak Utama Kompromi data, kredensial cloud, eksekusi skrip
Mitigasi Kunci Gunakan server terpusat, update komponen, set variabel lingkungan
Status Patch Belum tersedia patch resmi

 Kesimpulan

Kerentanan CVE‑2025‑53000 yang ditemukan dalam proses ekspor Jupyter Notebook menunjukkan bahwa bahkan fungsi yang tampak tidak berbahaya seperti “ekspor ke PDF” mampu membuka celah serius dalam keamanan sistem jika tidak ditangani dengan hati‑hati.

Ancaman ini menekankan perlunya tinjauan keamanan rutin pada alat pengembangan yang umum digunakan, terutama ketika mereka berinteraksi dengan file dan kode dari sumber eksternal. Dengan mengikuti rekomendasi — seperti mengandalkan server terpusat dan menerapkan mitigasi konfigurasi — organisasi dapat memperkecil risiko eksploitasi di lingkungan data science mereka.


Infrastruktur IT yang kuat adalah kunci produktivitas perusahaan. Dengan Imperva Indonesia, Anda bisa mendapatkan solusi IT lengkap yang sesuai dengan kebutuhan Anda. iLogo Indonesia sebagai mitra terpercaya siap mengintegrasikan semuanya agar bisnis Anda tetap berjalan lancar dan aman.
Hubungi kami sekarang atau kunjungi imperva.ilogoindonesia.id untuk informasi lebih lanjut !