Apa yang terjadi
Router passthrough AI Gateway tidak menolak segmen traversal yang di-encode persen, memungkinkan pengguna terautentikasi untuk keluar dari prefiks yang diizinkan dan mencapai endpoint penyedia yang arbitrer. Karena gateway melakukan autentikasi dengan kunci penyedia yang dikelola terpusat, permintaan tersebut mengonsumsi/melakukan kueri atas nama kredensial AI bersama deployment.
Mengapa penting
Coder mengekspos AI Gateway yang memediasi akses ke penyedia LLM untuk pengguna workspace menggunakan satu kunci penyedia bersama. Traversal di sini memungkinkan pengguna terautentikasi mengakses endpoint penyedia di luar permukaan AI yang diizinkan, membahayakan penyalahgunaan biaya/penggunaan, akses lintas-tenant ke sumber daya yang dibatasi penyedia, atau memicu operasi model yang tidak diinginkan di bawah kunci perusahaan.
Vektor serangan
Pengguna terautentikasi mengirim segmen titik yang di-encode persen (misalnya %2e%2e, ..%2F) di bawah prefiks yang diizinkan melalui router passthrough AI Gateway. Coder meneruskannya ke upstream tanpa menolak, sehingga permintaan mencapai endpoint penyedia yang tidak diinginkan menggunakan kunci API penyedia yang dikelola terpusat.
Sistem yang terdampak
Coder 2.28.0 < 2.29.22; 2.30.0 < 2.34.13; 2.35.0 < 2.35.10; 2.36.0 < 2.36.8; 2.37.0 < 2.37.5; 2.38.0 < 2.38.1
Mitigasi
Tingkatkan ke rilis Coder yang telah ditambal untuk jalur Anda (>=2.29.22, >=2.34.13, >=2.35.10, >=2.36.8, >=2.37.5, atau >=2.38.1); lihat GHSA-373r-678h-hjc6 dan PR #30178.