Celah GitHub Agentic Workflows: Isu Publik Bisa Bocorkan Data Repo Privat
GitHub Agentic Workflows yang kini dalam tahap pratinjau publik menghadapi celah keamanan serius yang memungkinkan kebocoran data dari repositori privat organisasi. Peneliti dari Noma Security menunjukkan bahwa hanya dengan membuat issue biasa di repositori publik, penyerang dapat memancing agen AI ini untuk mengungkapkan konten repositori privat yang seharusnya terlindungi.
Apa itu GitHub Agentic Workflows dan Bagaimana Celah Ini Terjadi?
GitHub Agentic Workflows adalah fitur baru yang memungkinkan pengguna menulis instruksi dalam bahasa Inggris biasa di file Markdown, yang kemudian dijalankan oleh agen AI seperti GitHub Copilot, Anthropic Claude, Google Gemini, atau OpenAI Codex. Alih-alih menulis skrip otomatisasi tradisional, pengguna cukup memberikan instruksi, dan agen ini akan membaca isu dan permintaan tarik, menjalankan alat, serta membalas secara otomatis.
Biasanya, agen ini memiliki akses baca terbatas. Namun, organisasi dapat memberikan token dengan akses baca lintas repositori, termasuk repositori privat, agar agen dapat memahami konteks lebih luas. Inilah yang dimanfaatkan oleh teknik bernama GitLost.
Bagaimana Teknik GitLost Bekerja?
GitLost memanfaatkan indirect prompt injection, yaitu teknik yang menyisipkan instruksi tersembunyi dalam konten yang dibaca agen AI, sehingga agen tidak bisa membedakan antara instruksi resmi dan konten yang sebenarnya.
"Agent AI tidak dapat secara andal membedakan antara instruksi dari pemiliknya dan instruksi yang tersembunyi di dalam konten yang dibacanya," jelas Sasi Levi, Kepala Riset Keamanan di Noma Security.
Dalam bukti konsep Noma, isu berbahaya dibuat menyerupai permintaan rutin dari VP Sales setelah pertemuan dengan pelanggan. Ketika isu tersebut ditugaskan, agen yang memiliki akses baca ke repositori privat menarik konten README dari repositori privat dan mempostingnya sebagai komentar di isu publik tersebut.
Upaya GitHub dan Kelemahan Teknik Ini
GitHub telah mengimplementasikan beberapa keamanan seperti sandboxing, token baca-only secara default, pembersihan input, dan pendeteksian ancaman untuk memeriksa output agen sebelum diposting. Namun, Noma menemukan bahwa hanya dengan mengubah satu kata menjadi "Additionally" sebelum instruksi berbahaya, agen tetap menjalankan perintah tersebut dan melewati filter keamanan.
Kenapa GitLost Berbeda dan Berbahaya?
- Kontrol penuh penyerang atas perintah yang dijalankan: Tidak hanya memanipulasi apa yang diucapkan agen, tetapi mengendalikan apa yang agen lakukan dengan aksesnya.
- Akses agen yang melekat dalam infrastruktur CI/CD organisasi: Agen bertindak sebagai pelaku yang sudah memiliki kredensial dengan akses baca ke repositori privat, tanpa perlu mencuri kredensial atau akses tulis.
- Eksfiltrasi data melalui komentar publik: Data privat bisa keluar melalui saluran komentar di isu yang dapat diakses publik.
Sasi Levi menyebut kondisi ini sebagai "lethal trifecta": agen yang dapat mengakses data privat, menerima input dari sumber tidak terpercaya, dan memiliki jalur untuk mengeluarkan data tersebut secara publik.
Serangkaian Serangan Serupa dan Tantangan Keamanan AI
GitLost bukan kasus pertama. Beberapa serangan serupa termasuk:
- Bug di Anthropic's Claude Code GitHub Action yang memungkinkan satu isu jahat membocorkan rahasia dan mengambil alih akses tulis repositori.
- Orca Security dengan RoguePilot yang menyisipkan prompt tersembunyi agar Copilot membocorkan token repositori.
- Serangan pada agent GitHub MCP sejak Mei 2025 yang memungkinkan isu publik membaca dan membocorkan repositori privat.
- Studi lintas vendor "Comment and Control" yang berhasil mengelabui agensi Claude Code, Gemini CLI, dan GitHub Copilot untuk membocorkan kunci API melalui teks isu dan pull request.
Langkah Mitigasi dan Saran Keamanan
Noma telah melaporkan temuan GitLost ke GitHub dan mengungkapnya secara publik dengan seizin perusahaan. Eksposur terbatas pada organisasi yang mengaktifkan pratinjau dan memberikan akses baca luas ke agen yang membaca input publik tidak terpercaya serta dapat memposting output secara publik.
Rekomendasi praktis meliputi:
- Mengurangi lingkup token akses agen hanya pada repositori yang diperlukan, bukan seluruh organisasi.
- Membatasi output agen yang dapat diposting ke saluran publik.
- Mengontrol konten dari penulis yang diizinkan untuk memicu agen.
- Memastikan output agen ditinjau manusia sebelum dipublikasikan.
Meski GitHub memiliki langkah deteksi ancaman, bypass satu kata oleh Noma menunjukkan bahwa filter itu hanyalah penahan terakhir, bukan solusi menyeluruh.
Analisis Redaksi
Menurut pandangan redaksi, kasus GitLost menegaskan bahwa memberikan agen AI kredensial yang berdiri sendiri dalam infrastruktur organisasi tanpa batasan ketat adalah langkah yang sangat berisiko. Kecanggihan AI dalam memahami bahasa alami justru menjadi bumerang ketika tidak ada batasan jelas antara instruksi dan data. Ini menimbulkan tantangan serius dalam keamanan software supply chain dan CI/CD modern.
Dalam konteks ini, organisasi harus berpikir ulang tentang bagaimana mengelola akses token dan memisahkan konteks data dari instruksi secara arsitektural, bukan hanya mengandalkan filter atau sandbox yang mudah diakali. Ke depan, pengembangan AI agent harus memasukkan prinsip keamanan yang lebih keras, seperti isolasi proses, otentikasi multi-level, dan validasi konteks sebelum menjalankan instruksi.
Waspada dan pembaruan keamanan secara berkala menjadi kunci. Pengguna harus mengawasi terus pembaruan dari GitHub dan vendor AI terkait agar tidak terjebak dalam jebakan keamanan yang sudah lama dikenali namun sulit dihilangkan sepenuhnya.
Untuk informasi lebih lengkap dan update terbaru tentang keamanan siber dan AI, kunjungi sumber artikel langsung di The Hacker News dan situs berita teknologi terpercaya lainnya.
What's Your Reaction?
Like
0
Dislike
0
Love
0
Funny
0
Angry
0
Sad
0
Wow
0