Tutoriales

Capture contenido de texto SSL/TLS sin certificado CA por eBPF

captura electrónica es una herramienta para capturar contenido de texto SSL/TLS sin certificado CA Usando eBPF.

Cómo funciona eCapture

  • Captura de contexto de texto SSL/TLS, admite bibliotecas openssl\libressl\boringssl\gnutls\nspr(nss).
  • bash audit, capture el comando bash para la auditoría de seguridad del host.
  • mysql query SQL audit, compatible con mysqld 5.6\5.7\8.0 y mariadDB.

usar archivo binario ELF

Descargue la versión del archivo zip ELF, descomprímalo y utilícelo por comando ./ecapture --help.

  • Versión del kernel de Linux >= 4.18
  • Habilitar formato de tipo BTF BPF (BTF) (opcional, 2022-04-17)

verifique la configuración BTF de su servidor

cfc4n@vm-servidor:~$# uname -r
4.18.0-305.3.1.el8.x86_64
cfc4n@vm-servidor:~$# cat /boot/config-uname -r | grep CONFIG_DEBUG_INFO_BTF
CONFIG_DEBUG_INFO_BTF=y

comando tls

capturar el contexto de texto de tls. Paso 1:

./ecapture tls –hexadecimal

Paso 2:

rizo https://github.com

libressl&aburridossl

para libressl instalado, libssl.so.52 es el lib ssl dinámico
vm@vm-servidor:~$ ldd /usr/local/bin/openssl
linux-vdso.so.1 (0x00007ffc82985000)
libssl.so.52 => /usr/local/lib/libssl.so.52 (0x00007f1730f9f000)
libcrypto.so.49 => /usr/local/lib/libcrypto.so.49 (0x00007f1730d8a000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f1730b62000)
/lib64/ld-linux-x86-64.so.2 (0x00007f17310b2000)
use libssl para configurar la ruta libssl.so
vm@servidor-vm:~$ sudo ./ecapture tls –libssl=”/usr/local/lib/libssl.so.52″ –hex
en otra terminal, use el comando, luego escriba una cadena, observe la salida de ecapture
vm@vm-servidor:~$ /usr/local/bin/openssl s_client -conectar github.com:443
para boressl instalados, el uso es el mismo
/ruta/a/bin/bssl s_client -connect github.com:443

comando bash

capturar comando bash.

ps-ef | grep foo

GANCHO

gancho openssl\libressl\boringssl

Gancho de captura electrónicaSSL_write \ SSL_read función de la biblioteca compartida /lib/x86_64-linux-gnu/libssl.so.1.1. obtener contexto de texto y enviar mensajes al espacio del usuario mediante mapas eBPF.

Sondas: []manager.Probe{ { Sección: “upprobe/SSL_write”, EbpfFuncName: “probe_entry_SSL_write”, AttachToFuncName: “SSL_write”, //UprobeOffset: 0x386B0, BinaryPath: “/lib/x86_64-linux-gnu/libssl.so.1.1”, }, { Sección: “uretprobe/SSL_write”, EbpfFuncName: “probe_ret_SSL_write”, AttachToFuncName: “SSL_write”, //UprobeOffset: 0x386B0, BinaryPath: “/lib/x86_64-linux-gnu/libssl.so.1.1”, }, { Sección: «upprobe/SSL_read», EbpfFuncName: «probe_entry_SSL_read», AttachToFuncName: «SSL_read», //UprobeOffset: 0x38380, BinaryPath: «/lib/x86_64-linux-gnu/libssl.so.1.1», }, { Sección : “uretprobe/SSL_read”, EbpfFuncName: “probe_ret_SSL_read”, AttachToFuncName: “SSL_read”, //UprobeOffset: 0x38380, BinaryPath: “/lib/x86_64-linux-gnu/libssl.so.1.1”, }, /*/
},

bash readline.so gancho

gancho /bin/bash nombre del símbolo readline.

Núcleo de Linux: >= 4.18.

Instrumentos

  • vamos 1.16
  • sonido metálico 9.0.0
  • cmake 3.18.4
  • backend clang: llvm 9.0.0
  • configuración del núcleo: CONFIG_DEBUG_INFO_BTF=y (Opcional, 2022-04-17)

dominio

git clone [email protected]:ehids/ecapture.git
captura de cd
hacer
bin/ecapture-ayuda

compilar sin BTF

eCapture admite NO BTF con comando make nocore para compilar el 17/04/2022.

hacer nocore
bin/ecapture-ayuda

LEER  Blog de Utopixel sobre la portabilidad de su título Outer Wonders a Linux

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba