Claude Code 2.1.221 kini membolehkan pengguna Linux dan WSL2 menyembunyikan (mask) fail kredential sebelum arahan dalam sandbox dapat membacanya. Ciri ini membekalkan salinan sentinel yang tidak berbahaya kepada arahan tersebut dan hanya menukar kepada rahsia sebenar apabila permintaan yang dibenarkan melalui proksi.
Gambaran aliran penyembunyian (masking)
- Salinan sentinel – Apabila fail ditandakan untuk penyembunyian, Claude Code mencipta salinan pendua yang mengandungi rentetan penanda tempat (placeholder) dan bukannya rahsia sebenar.
- Pertukaran proksi – Sandbox berjalan di sebalik proksi penamatan TLS. Jika sandbox mengeluarkan permintaan yang sepadan dengan entri dalam senarai
injectHosts, proksi akan menggantikan penanda tempat dengan token sebenar sebelum permintaan meninggalkan mesin. - Pengendalian ralat – Jika regex pengekstrakan gagal mencari rahsia, sandbox boleh membatalkan proses dan bukannya meneruskan dengan fail asal yang terdedah.
Pendekatan ini hanya berfungsi pada Linux dan WSL2; macOS buat masa ini ditetapkan secara lalai kepada penolakan keras (hard deny), bermakna sandbox tidak boleh membaca fail tersebut sama sekali.
Senarai semak untuk pelancaran yang selamat
Sahkan versi
- Sahkan anda sedang menjalankan Claude Code 2.1.221 atau yang lebih baharu. Rentetan versi dalam terminal adalah satu-satunya kaedah yang boleh dipercayai; fail kunci pakej (package lock files) boleh mengelirukan.
Gunakan token pakai buang
- Jangan sesekali melakukan eksperimen dengan kredential GitHub atau awan utama anda. Cipta token jangka pendek yang merujuk kepada titik akhir (endpoint) "canary" yang tidak berbahaya dan batalkannya dengan serta-merta jika berlaku sebarang masalah.
Pilih mod penyembunyian yang betul
| Mod | Bila hendak digunakan |
|---|---|
| File Deny | Sekatan keras; sebarang percubaan membaca akan gagal. |
| Whole-File Mask | Fail mengandungi satu rahsia sahaja (cth., kunci API teks biasa). |
| Structured Mask | Fail mencampurkan rahsia dengan data lain (JSON, YAML, .netrc). Gunakan mod extract dan regex yang menangkap rahsia dalam kumpulan 1. Ini mengekalkan sintaks sekeliling agar kekal sah untuk program klien. |
Tetapkan peraturan ralat yang ketat
- Tetapkan
onExtractNoMatchkepada error. Jika regex tidak sepadan, sandbox akan berhenti. Membiarkannya pada tetapan lalai warn boleh menyebabkan fail asal terlepas tanpa disedari.
Aktifkan penamatan TLS
- Proksi mesti menamatkan TLS untuk melakukan pertukaran. Tanpa penamatan TLS, proksi tidak dapat melihat muatan (payload) permintaan dan penggantian tidak akan berlaku.
Kecilkan skop hos
- Isi
injectHostsdengan nama hos eksplisit daripadaallowedDomainsanda. Elakkan penggunaan wildcard seperti*.example.com; corak yang luas akan memperluaskan permukaan serangan dan menjejaskan tujuan penyembunyian.
Sahkan hasil
- Imbas log, argumen proses, dan mesej ralat untuk sebarang kemunculan token sebenar. Sentinel sepatutnya menjadi satu-satunya nilai yang muncul dalam artifak tersebut.
Had yang perlu anda ambil perhatian
Penyembunyian mengamankan token hanya daripada pandangan sistem fail arahan dalam sandbox. Ia tidak menghalang arahan daripada membuat panggilan rangkaian sewenang-wenangnya, dan ia juga tidak melindungi daripada alatan terbina dalam Claude yang mungkin mempunyai akses istimewa.
Kesimpulan
Ciri penyembunyian kredential Claude Code 2.1.221 memberikan pembangun Linux dan WSL2 cara praktikal untuk memastikan rahsia tidak terlepas ke dalam proses sandbox.
