Plataforma
python
Componente
llama_index
Corregido en
0.10.24
Se ha identificado una vulnerabilidad crítica en la clase executils del paquete llamaindex, específicamente en la función safe_eval. Esta falla de seguridad permite la inyección de prompts, lo que puede resultar en la ejecución arbitraria de código. La vulnerabilidad se manifiesta debido a una validación insuficiente de la entrada, permitiendo eludir restricciones de método y ejecutar código no autorizado. Afecta a versiones de LlamaIndex menores o iguales a 0.10.24, y se recomienda actualizar a la versión 0.10.24 para mitigar el riesgo.
Un atacante puede explotar esta vulnerabilidad para inyectar prompts maliciosos que eludan las protecciones existentes y ejecuten código arbitrario en el sistema donde se ejecuta LlamaIndex. Esto podría permitir la lectura, modificación o eliminación de archivos, la instalación de malware, o el acceso no autorizado a datos sensibles. La vulnerabilidad es una reaparición de un problema similar al de CVE-2023-39662, lo que sugiere que las medidas de seguridad previas no fueron completamente efectivas. El potencial de daño es significativo, ya que un atacante podría comprometer completamente el sistema y obtener control total sobre los datos procesados por LlamaIndex.
Esta vulnerabilidad ha sido demostrada con un proof of concept que permite la creación de archivos en el sistema. Aunque no se ha confirmado la explotación activa en entornos reales, la disponibilidad de un PoC y la severidad de la vulnerabilidad sugieren un riesgo significativo. La vulnerabilidad se encuentra en el catálogo KEV de CISA, lo que indica una alta probabilidad de explotación. La vulnerabilidad fue publicada el 10 de abril de 2024.
Organizations utilizing LlamaIndex for applications involving natural language processing, data indexing, and question answering are at risk. This includes developers building AI-powered chatbots, knowledge retrieval systems, and other applications that rely on LlamaIndex's functionality. Specifically, those using older versions of LlamaIndex or those with less stringent input validation practices are particularly vulnerable.
• python / server:
import os
import subprocess
# Check for LlamaIndex version
process = subprocess.Popen(['pip', 'show', 'llama-index'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = process.communicate()
if b'Version:' in stdout:
version_line = stdout.splitlines()[stdout.index(b'Version:') + 1]
version = version_line.decode('utf-8').strip()
if version <= '0.10.24':
print(f'Vulnerable LlamaIndex version detected: {version}')• linux / server:
ps aux | grep llama_index
# Look for unusual processes or arguments• generic web: Inspect LlamaIndex API endpoints for prompt injection vulnerabilities. Test with specially crafted prompts designed to execute system commands.
disclosure
patch
Estado del Exploit
EPSS
0.19% (41% percentil)
CISA SSVC
Vector CVSS
La mitigación principal es actualizar a la versión 0.10.24 de LlamaIndex, que corrige la vulnerabilidad. Si la actualización no es inmediatamente posible, se recomienda revisar cuidadosamente todas las entradas de usuario que se pasan a LlamaIndex, implementando una validación y sanitización rigurosa. Además, considere la implementación de un firewall de aplicaciones web (WAF) o un proxy inverso que pueda detectar y bloquear intentos de inyección de prompts. Monitoree los logs del sistema en busca de patrones sospechosos, como la creación de archivos inesperados o la ejecución de comandos no autorizados.
Actualice la biblioteca `llama_index` a la versión 0.10.24 o superior. Esto solucionará la vulnerabilidad de inyección de prompt que permite la ejecución de código arbitrario. Utilice el gestor de paquetes pip para realizar la actualización: `pip install llama_index --upgrade`.
Análisis de vulnerabilidades y alertas críticas directamente en tu correo.
CVE-2024-3098 is a critical Remote Code Execution vulnerability in LlamaIndex versions up to 0.10.24. It allows attackers to execute arbitrary code through prompt injection due to insufficient input validation.
You are affected if you are using LlamaIndex version 0.10.24 or earlier. Upgrade to 0.10.24 or later to mitigate the risk.
The recommended fix is to upgrade LlamaIndex to version 0.10.24 or later. If upgrading is not possible, implement strict input validation and sanitization.
While no active exploitation campaigns have been publicly confirmed, the vulnerability's severity and ease of exploitation suggest a high likelihood of future exploitation.
Refer to the LlamaIndex security advisory for detailed information and updates: [https://github.com/run-llama/llamaindex/security/advisories/GHSA-9835-5946-4997](https://github.com/run-llama/llamaindex/security/advisories/GHSA-9835-5946-4997)
Sube tu archivo de dependencias y detecta esta y otras CVEs al instante.
Sube tu archivo requirements.txt y te decimos al instante si estás afectado.