Desarrolladores de Tetragon, la herramienta de monitorización de seguridad basada en BPF, presentaron en el Linux Storage, Filesystem, Memory-Management, and BPF Summit de 2026 una solución para que los programas BPF envíen datos a un servidor remoto sin depender de un agente en espacio de usuario. La separación actual obliga a los programas BPF a escribir en un ring buffer que un proceso en espacio de usuario lee y reenvía, lo que crea un punto vulnerable: un atacante que mate ese agente puede impedir la notificación de incidentes. Song Liu, Mahé Tardy y Liam Wiseheart expusieron la evolución del trabajo, que comenzó en 2025 con splice() y que ahora se apoya en netpoll, la infraestructura del kernel tras netconsole. La nueva propuesta añade dos kfuncs: bpf_netpoll_create(), que crea un contexto de netpoll a partir de la información de red que pasa un cargador en espacio de usuario, y bpf_netpoll_send_udp(), que envía paquetes UDP con datos arbitrarios. En la demostración, Tardy mostró pings que seguían llegando tras matar al agente. Una crítica central fue que netpoll elude la pila de red estándar, lo que impide limitar el ancho de banda consumido por los programas BPF. Alexei Starovoitov defendió UDP por la robustez de netpoll, pero Daniel Borkmann recordó que solo alrededor del 10% de los drivers de NIC lo soportan. Tras la conferencia, el 6 de julio de 2026, el equipo publicó un nuevo patch set que sustituye netpoll y permite a los programas BPF crear y usar sockets UDP del kernel directamente.
BPF enviará paquetes directamente sin pasar por el espacio de usuario
Fuentes:
Sending packets directly from BPF
