简体中文 | English
Effortlessly capture TLS encrypted traffic in a cross-platform GUI using eBPF, without configuring CA certificates or performing Man-in-the-Middle (MITM) attacks.
eCaptureQ is a cross-platform GUI for ecapture, visualizing its eBPF-powered packet capturing capabilities: capture TLS plaintext at the kernel level without needing a CA certificate or MITM.
This means you can debug and analyze the encrypted communications of any program in a simpler, more efficient, and non-intrusive way.
Certificate-Free Capture with eBPF: Directly capture and decrypt TLS traffic from the kernel without configuring CA certificates or a man-in-the-middle proxy.
Real-time & Responsive View: Displays network requests in real-time and automatically switches between a desktop table view and a mobile card view based on the device.
Cross-Platform & Dual-Mode: Runs as an all-in-one tool on Linux/Android, and as a remote client on Windows/macOS/Linux to connect to a server.
Secure, Lightweight, and Native Experience: Built with Rust on the backend for memory safety and native performance.
eCaptureQ
offers two main operating modes to suit different user needs.
This is the standard, all-in-one mode. In this mode, the ecapture
binary is bundled directly within the eCaptureQ
application.
- Supported Platforms: Linux, Android
- Features:
- Out-of-the-Box: No need to manually install or configure
ecapture
. - Automated Management:
eCaptureQ
automatically manages the lifecycle of the capture process. - Simple and Convenient: Ideal for quick traffic analysis on a local device.
- Out-of-the-Box: No need to manually install or configure
- Requirements:
- On Linux and Android, this mode requires root privileges to run the eBPF program.
In this mode, eCaptureQ
runs as a standalone client without the bundled ecapture
binary. It connects remotely via WebSocket to an ecapture
instance that is manually run by the user.
- Client-Supported Platforms: Linux, Windows, macOS
- Features:
- High Flexibility: Run
ecapture
on a Linux server and monitor it remotely from a Windows or macOS machine. - No Root Required: The
eCaptureQ
client itself does not require root privileges. - Secure Isolation: Suitable for scenarios where the capture process and the analysis interface need to have separate permissions.
- High Flexibility: Run
- Requirements:
- The user must download and run
ecapture
separately on the target device. ecapture
must be started with the--ecaptureq
flag to activate the WebSocket service.
- The user must download and run
- Download and install the standard version of
eCaptureQ
. - (Linux only) Run the application with
sudo
:sudo /path/to/ecaptureq
- Click "Start" in the application interface to begin capturing.
- On the target Linux machine, download and start
ecapture
with the--ecaptureq
flag. Ensure the WebSocket address is accessible from youreCaptureQ
client.# Run on the target server (requires root privileges) sudo ./ecapture tls --ecaptureq ws://0.0.0.0:28257
- On your Windows/macOS/Linux machine, download and run the
decoupled
version ofeCaptureQ
. - Go to the settings page in
eCaptureQ
. - Configure the "WebSocket Server URL" to the address
ecapture
is listening on (e.g.,ws://<SERVER_IP>:28257
). - Return to the main page and click "Start" to begin receiving data.
- Core Engine: ecapture (The underlying eBPF capture tool)
- Framework: Tauri (A framework for building cross-platform applications with Rust)
- Backend: Rust (with Tokio for asynchronous processing and Polars for high-performance data handling)
- Frontend: React with TypeScript, Tailwind CSS