Fitur SSH VSCode Dinilai Berlebihan dan Berisiko
Judul asli: VSCode's SSH Agent Is Bananas (2025)
Mengapa Ini Penting
Peringatan nyata soal risiko keamanan alat remote editing yang banyak dipakai developer.
Fly.io mengungkap cara kerja fitur remote editing SSH VSCode: mengunduh agen binary Node.js penuh, membuka WebSocket, dan mampu mengakses filesystem secara luas.
Fly.io, platform cloud berbasis container, menerbitkan analisis teknis tentang mekanisme di balik fitur Remote SSH milik VSCode. Dalam tulisan yang ditulis Thomas Ptacek, tim Fly.io awalnya ingin mengintegrasikan layanan mereka ke dalam alur kerja remote editing VSCode — terutama karena makin banyak developer menggunakan VSCode dan fork-nya untuk pengembangan berbasis LLM dengan setup 'agentic'.
Yang mengejutkan mereka: berbeda dari Tramp milik Emacs yang cukup mengandalkan sesi SSH dan perintah shell sederhana, VSCode justru menjalankan snippet Bash untuk mengunduh agen lengkap termasuk instalasi binary Node.js. Agen ini berjalan via port-forwarded SSH, lalu membuka koneksi WebSocket kembali ke frontend VSCode. Kemampuannya mencakup: menjelajahi filesystem, mengedit file arbitrer, menjalankan proses shell PTY sendiri, hingga mempertahankan keberadaannya (persist).
Ptacek menyebut pola kerja seperti ini memiliki nama tersendiri di dunia keamanan siber — ia sengaja tidak menyebutnya, namun menyiratkan kemiripan dengan kategori alat yang bersifat invasif. Ia menyatakan akan sangat khawatir jika VSCode remote editing diaktifkan di server development, dan 'apoplectic' jika hal itu terjadi di server produksi saat insiden berlangsung.
Fly.io akhirnya menyimpulkan mereka tidak perlu memahami semua ini secara mendalam untuk membangun koneksi kustom ke Fly Machine via VSCode — tetapi memilih untuk mempublikasikannya sebagai catatan teknis terbuka.