Veintiún zero-days en FFmpeg
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.