2 poin oleh goldenjade 4 jam lalu | 2 komentar | Bagikan ke WhatsApp

Saya ingin membagikan insiden keselamatan serius (Safety Incident) yang baru saja saya alami saat menggunakan gpt-5.6-sol, model flagship terbaru di Codex. Meskipun model Sol menunjukkan performa yang nyaris tak dapat dipercaya dalam workflow agen dan benchmark eksekusi alat, ketiadaan isolasi lingkungan shell yang sederhana hampir saja berujung pada bencana besar.

Kronologi kejadian:
Agen sedang mencoba menyiapkan direktori baseline sementara untuk pekerjaan debugging. Untuk itu, agen membuat dan menjalankan blok skrip PowerShell yang menginisialisasi variabel lokal bernama $home.

$home = Join-Path $env:TEMP 'temporary-build-folder'  
if (Test-Path -LiteralPath $home) { Remove-Item -LiteralPath $home -Recurse -Force }  

Penyebab bug:
Di PowerShell, $HOME adalah automatic variable bawaan yang langsung menunjuk ke direktori profil pengguna saat ini (misalnya C:\Users\<username>).

Masalahnya, PowerShell tidak membedakan huruf besar dan kecil (case-insensitive). Karena itu, variabel $home huruf kecil yang dideklarasikan secara dinamis oleh agen berbenturan dengan scope $HOME global. Saat skrip mencapai baris Remove-Item, path tersebut dievaluasi bukan sebagai folder sementara, melainkan sebagai direktori root pengguna saya yang sebenarnya.

Akibatnya, gpt-5.6-sol menjalankan perintah berikut:
Remove-Item -LiteralPath 'C:\Users\<username>' -Recurse -Force

Dampak kerusakan:
Untungnya, berkat system lock pada file-file yang sedang aktif, perintah tersebut berhenti di tengah eksekusi sambil mengeluarkan error WriteError: Directory is not empty, sehingga tragedi mengerikan berupa penghapusan total bisa dihindari. Namun, agen segera mendeteksi kesalahannya sendiri, menghentikan pekerjaan (abort), lalu melakukan audit mandiri. Hasil pemeriksaan menunjukkan beberapa file konfigurasi dan dotfile (.ssh, .config, .npm) sudah berubah atau hilang.

Implikasi:
gpt-5.6-sol sangat gigih dan kompeten untuk menangani tugas jangka panjang (long-horizon tasks). Tetapi ketika kita memberi model penalaran canggih semacam ini izin untuk mengakses terminal host secara langsung, mekanisme case-insensitive dan variable scope pada shell seperti PowerShell menjadi faktor risiko yang sangat besar.

Jika Anda berencana membangun atau menerapkan agen CLI dengan memanfaatkan keluarga produk GPT-5.6 yang baru, sandboxing yang ketat dan containerization yang kokoh kini bukan lagi pilihan, melainkan keharusan mutlak.

Apakah ada di antara Anda yang juga mengalami variable shadowing atau perilaku penggunaan alat yang destruktif saat memakai Sol atau model-model lain belakangan ini?

Berikut tautan screenshot situasi saat itu: https://gist.github.com/xamong/e98478b333bb9951b175284f744eb0ed

2 komentar

 
ggggnews 2 jam lalu

Untungnya codex tidak melakukan eskalasi hak akses sendiri.

 
1yoouoo 4 jam lalu

Harusnya menanganinya sendiri.