Cómo los desarrolladores se disparan alegremente en el pie 🔫

En crackr.dev hay un catálogo donde se rastrean los fracasos del vibe coding.

Aquí hay un par de ejemplos relacionados con Python:

1️⃣ Cadena de suministro a través de alucinaciones
Los LLM más populares recomendaban consistentemente instalar un paquete inexistente huggingface-cli (en realidad se instala mediante pip install "huggingface_hub[cli]").
Los chicos de Lasso Security no se quedaron de brazos cruzados y subieron un paquete vacío con ese nombre a PyPI.

Resultado: más de 30 000 descargas reales en un par de meses. Eso son 30 mil desarrolladores que copiaron y pegaron sin pensar el comando del chat en la terminal. Un vector de ataque perfecto: ni siquiera hay que hackear a nadie, solo esperar a que la IA le ponga tu malware a la víctima.

2️⃣ RCE listo para usar de Claude
El equipo rojo de Databricks le pidió a Claude que hiciera una serpiente multijugador. La red generó código completamente funcional, los clientes se conectan, las serpientes se mueven. Pero para transmitir el estado por la red, Claude decidió usar pickle en lugar de JSON, porque es más fácil serializar objetos de Python.

Para los que olvidaron lo básico: pickle.loads() con datos crudos del socket es una ejecución remota de código instantánea. Cualquier cliente conectado podía enviar bytecode especialmente diseñado y ejecutar comandos arbitrarios en el servidor. Ahorraron tiempo en parsear JSON y obtuvieron un agujero del tamaño de un hangar.

El problema de las redes neuronales no es que sean tontas. Escriben código que resuelve la tarea y funciona. Pero la seguridad arquitectónica y los casos límite no los considera la red a menos que se le obligue explícitamente mediante indicaciones paranoicas.

¡Revisión, revisión, revisión! 🫵