Apa yang terjadi
Sebelum versi 2.9.0, Twenty (CRM open-source) mengandung insecure direct object reference (IDOR) di AgentTurnResolver monitor AI agent-nya. Query agentTurns(agentId) dan mutasi evaluateAgentTurn(turnId) mencari baris berdasarkan agentId atau turnId saja, tanpa menegakkan workspaceId dalam klausa WHERE. Penjaga level class hanya memverifikasi bahwa pemanggil diautentikasi di *beberapa* workspace, bukan workspace yang memiliki objek yang diminta. Pemilik workspace yang diautentikasi apa pun yang mengetahui (atau menebak dari URL) agentId atau turnId korban dapat membaca riwayat chat AI lengkap korban termasuk bagian pesan, panggilan tool, dan output tool, serta dapat memicu re-evaluasi giliran korban terhadap LLM default.
Mengapa penting
Penerapan AI agent biasanya memproses data enterprise yang sensitif — kueri internal, parameter panggilan tool, respons API. Kelemahan ini memungkinkan pengguna yang diautentikasi apa pun di instance Twenty yang sama untuk diam-diam mengakses seluruh riwayat interaksi AI workspace lain, termasuk detail invokasi tool yang mungkin berisi kredensial atau data bisnis rahasia. turnId dan agentId terbuka di URL halaman pengaturan, membuat enumerasi mudah dilakukan.
Vektor serangan
Penyerang yang diautentikasi di workspace apa pun mengirimkan kueri GraphQL agentTurns atau evaluateAgentTurn menggunakan agentId atau turnId workspace korban yang diperoleh dari URL halaman pengaturan
Sistem yang terdampak
Twenty CRM (open-source) sebelum versi 2.9.0
Mitigasi
Tingkatkan ke Twenty CRM v2.9.0. Saran: https://www.tenable.com/cve/CVE-2026-55583