Veintiún zero-days en FFmpeg
Una tanda de vulnerabilidades recién descubiertas en FFmpeg, algunas accesibles mediante flujos RTSP controlados por un atacante, ha renovado la preocupación por la seguridad de los códecs multimedia ampliamente desplegados que manejan rutinariamente entrada no confiable. Los comentaristas coinciden en gran medida en que FFmpeg es potente pero crónicamente frágil y que siempre debería estar aislado —mediante sandboxes del sistema operativo, contenedores, VMs o incluso WASM— en lugar de ejecutarse con privilegios normales. El hilo también cuestiona el uso inflado del término “zero-day”, debate si las reescrituras en lenguajes más seguros como Rust ayudarían y pone de relieve las tensiones entre investigadores de seguridad que buscan reconocimiento y mantenedores no remunerados desbordados por informes de baja calidad o enviados al azar.
Severidad percibida de los fallos de FFmpeg
- Muchos consideran serios los problemas de RTSP/RTP porque pueden afectar a tuberías de ingestión, sistemas de vigilancia/CCTV y servicios de transcodificación que aceptan URLs controladas por un atacante.
- Otros señalan que la explotación real probablemente requiere encadenarlos con fugas de ASLR u otros fallos, pero se sabe que las pilas multimedia filtran direcciones con facilidad.
- Algunos sostienen que muchos de los 21 problemas son de nicho, requieren malas prácticas de despliegue o son solo un paso dentro de una cadena de explotación mayor.
Historial de seguridad de FFmpeg y actitudes
- Los comentaristas dicen que FFmpeg lleva mucho tiempo con una “inagotable” provisión de fallos de corrupción de memoria descubiertos mediante fuzzing y que no es seguro ejecutarlo sobre entrada no confiable sin sandboxing.
- Se describe a FFmpeg como hostil o despectivo con los informes de seguridad; algunos ven esto como agotamiento comprensible, otros como irresponsabilidad.
- Hay desacuerdo sobre cuán “grave” esn los fallos de códecs poco comunes; algunas perspectivas de desarrolladores los minimizan, mientras que otras subrayan que los atacantes pueden elegir cualquier códec compatible.
Sandboxing, despliegue y riesgo en el mundo real
- Según los informes, los navegadores ejecutan componentes similares a FFmpeg en procesos separados y aislados con endurecimiento del asignador; aun así, una fuga de sandbox encadenada sigue siendo una amenaza.
- Mitigaciones recomendadas: contenedores, firejail/bubblewrap, gVisor, VMs o VMs por aplicación al estilo Qubes, aunque la aceleración por hardware y las GPU complican el sandboxing.
- Algunos aceptan que televisores/dispositivos embebidos son, en la práctica, no aislados y sugieren separarlos a nivel de red.
Alternativas y reescrituras (Rust, GStreamer, etc.)
- Se habla de GStreamer como un sistema de grafo multimedia enchufable; puede envolver FFmpeg, pero también tiene sus propios códecs y elementos.
- Varios piden “reescríbanlo en Rust”, pero otros argumentan:
- Las rutas críticas de FFmpeg y el ensamblador seguirían requiriendo
unsafey no arreglarían automáticamente los errores lógicos. - Una portación directa podría recrear las mismas vulnerabilidades en un nuevo lenguaje.
- Las rutas críticas de FFmpeg y el ensamblador seguirían requiriendo
Debate sobre la terminología “zero-day”
- Varios comentarios dicen que el artículo usa mal “zero-day”; históricamente significa explotado antes o en el momento de la divulgación, no simplemente “fallo grave”.
- Hay discusión para distinguir vulnerabilidades de exploits y sobre cómo ha cambiado el significado del término.
Investigación de seguridad, LLMs e incentivos
- Fuerte crítica a investigadores que buscan “clout” y a los informes de baja calidad generados por LLMs que saturan a los mantenedores.
- Otros responden que las vulnerabilidades existen independientemente del comportamiento del investigador.
- Algunos sostienen que las herramientas deberían ir más allá de los informes y enviar PRs de alta calidad; se afirma que las tasas de éxito son altas cuando se hace así.
- Unos pocos temen que herramientas avanzadas basadas en LLM puedan encontrar y acaparar en silencio exploits poderosos.