Aquí tienes una explicación de los componentes clave:

  1. SSL/TLS y Texto en Claro:

    • SSL/TLS (Capa de Conexión Segura/Seguridad de la Capa de Transporte) se utiliza para cifrar los datos enviados a través de redes, como el tráfico web (HTTPS). Normalmente, no puedes ver el contenido cifrado (texto en claro) sin una clave adecuada o un certificado de autoridad de certificación (CA) que descifre los datos.
  2. eBPF (Filtro de Paquetes de Berkeley Extendido):

    • eBPF es una tecnología que te permite ejecutar programas en un entorno aislado dentro del núcleo de Linux sin cambiar el código fuente del núcleo ni insertar nuevos módulos en él. Se utiliza comúnmente para tareas de rastreo, monitoreo y redes, ya que puede capturar y filtrar paquetes de red de manera eficiente.
    • Con eBPF, puedes escribir programas que intercepten e inspeccionen el tráfico de red o eventos del sistema, como cuando el tráfico de SSL/TLS es descifrado por aplicaciones como navegadores u otros procesos, incluso sin la necesidad de un certificado CA.
  3. Cómo Funciona:

    • Normalmente, para descifrar el tráfico de SSL/TLS, necesitas acceder a un certificado CA, el cual es emitido por una autoridad confiable para descifrar las comunicaciones seguras.
    • Con eBPF, en lugar de depender de certificados CA, interceptas el tráfico de texto en claro ya descifrado directamente en la memoria del servidor o cliente (por ejemplo, antes de que se cifre o después de que se descifre). Esto es posible porque las aplicaciones que utilizan SSL/TLS deben descifrar los datos en algún momento para poder trabajarlos, y eBPF puede acceder en esta fase.
  4. Soporte en Linux/Android:

    • Esta técnica es compatible con núcleos de Linux/Android que se ejecutan en arquitecturas amd64 y arm64. Estas plataformas son comunes en servidores (amd64) y dispositivos móviles (Android arm64).
    • Aprovechando eBPF, los desarrolladores e investigadores de seguridad pueden monitorear el tráfico en estos sistemas sin necesidad de alterar directamente el cifrado SSL/TLS.
  5. Casos de Uso y Riesgos:

    • Investigación de Seguridad y Depuración: Este método se puede utilizar para fines legítimos como depuración, monitoreo del rendimiento o investigación de seguridad (por ejemplo, inspección de tráfico en busca de vulnerabilidades).
    • Abuso Potencial: También puede generar preocupación, ya que los atacantes podrían usarlo para capturar información sensible del tráfico de red, pasando por alto las protecciones tradicionales de cifrado.