eCapture - перехват SSL/TLS трафика без сертификатов с помощью eBPF
Когда шифрование — не преграда
Представьте ситуацию: вам нужно проанализировать HTTPS-трафик приложения, но установка MITM-прокси с собственным сертификатом невозможна или нежелательна. Именно такую проблему решает eCapture — инструмент, использующий технологию eBPF для перехвата зашифрованного трафика без необходимости вмешиваться в работу SSL/TLS.
Что может eCapture?
Этот инструмент предлагает несколько уникальных возможностей:
- Перехват текста SSL/TLS соединений для популярных библиотек (OpenSSL, BoringSSL, GnuTLS, NSPR)
- Анализ трафика Golang-приложений с поддержкой HTTPS/TLS
- Аудит команд Bash/Zsh для мониторинга активности пользователей
- Перехват SQL-запросов в MySQL и PostgreSQL
- Сохранение данных в формате PCAP для последующего анализа в Wireshark
Как это работает?
eCapture использует eBPF (Extended Berkeley Packet Filter) — технологию ядра Linux, позволяющую безопасно выполнять программы в пространстве ядра без изменения его кода или загрузки модулей. Это дает несколько преимуществ:
- Безопасность — не требует модификации исполняемых файлов
- Гибкость — работает с разными версиями библиотек шифрования
- Производительность — минимальное влияние на производительность системы
Практическое применение
Пример перехвата OpenSSL трафика
sudo ecapture tls -m pcap -i eth0 --pcapfile=traffic.pcapng tcp port 443
Этот простой команда сохранит весь HTTPS-трафик через порт 443 в файл, который потом можно открыть в Wireshark.
Анализ Golang-приложений
Для приложений, написанных на Go:
sudo ecapture gotls --elfpath=/path/to/your/go_app --hex
Аудит команд в Bash
sudo ecapture bash
Кому будет полезен eCapture?
- Разработчикам — для отладки сетевых приложений
- Администраторам безопасности — для мониторинга подозрительной активности
- Системным администраторам — для аудита команд и SQL-запросов
- Сетевым инженерам — для анализа зашифрованного трафика
Ограничения
- Требуются права root
- Работает только на Linux/Android (ядро 4.18+ для x86_64, 5.5+ для ARM64)
- Не поддерживает Windows и macOS
eCapture — это мощный инструмент для ситуаций, когда нужно «заглянуть» в зашифрованный трафик без вмешательства в работу приложений. Сочетание возможностей eBPF с простотой использования делает его уникальным решением для разработчиков и специалистов по безопасности.
Проект активно развивается (более 14k звезд на GitHub) и поддерживает все основные библиотеки шифрования. Если вы работаете с сетевыми приложениями или занимаетесь безопасностью, определенно стоит добавить eCapture в свой инструментарий.
