Apa yang terjadi
ash_ai, ekstensi tool-calling/structured-output LLM untuk Ash Framework, mengevaluasi konten prompt yang disediakan pengguna sebagai kode Elixir yang dapat dieksekusi melalui EEx.eval_string/2 tanpa sandboxing, memungkinkan klien jarak jauh yang tidak terautentikasi mencapai eksekusi kode arbitrer — ini adalah bagian dari pengungkapan terkoordinasi 6-CVE yang mencakup seluruh stack agen kerangka kerja (evaluasi prompt, eksekusi alat, embeddings, server MCP) semuanya diperbaiki di v1.0.0.
Mengapa penting
Ini adalah RCE pra-permintaan model — penyerang tidak perlu mengelabui LLM sama sekali, hanya mengirimkan string prompt yang dirancang, menjadikannya sangat mudah dieksploitasi terhadap aplikasi agentic Elixir apa pun yang dibangun di atas ash_ai.
Vektor serangan
AshAi.Actions.Prompt mengevaluasi konten prompt melalui EEx.eval_string/2. Pola prompt yang didokumentasikan: fn input, context -> ... end memungkinkan klien jarak jauh yang tidak terautentikasi mengirimkan input yang dievaluasi sebagai kode Elixir yang dapat dieksekusi sebelum permintaan model apa pun terjadi, mencapai eksekusi kode arbitrer.
Sistem yang terdampak
ash-project ash_ai versi >= 0.1.0, < 1.0.0
Mitigasi
Tingkatkan ash_ai ke versi 1.0.0 atau lebih baru, yang menghapus jalur evaluasi EEx yang tidak aman.