Skip to content

echo-devim/proxytcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TCP Intercept Proxy

TCP Intercept Proxy is a lightweight interception proxy designed to sit between a client and a remote server.
It allows you to inspect, intercept, and modify raw TCP traffic in real time, with a modern web-based GUI.

This project was generated with AI to experiment with its capabilities.

screenshot


Features

  • TLS on both sides

    • Acts as a TLS server for incoming clients (self-signed certificates generated automatically if missing).
    • Connects to the remote server as a TLS client.
    • Traffic is decrypted inside the proxy and displayed in cleartext.
  • Intercept mode

    • When enabled, client → server messages are paused and can be edited in both hex and ASCII before forwarding.
    • When disabled, traffic is logged and forwarded immediately.
  • History log

    • Every message is recorded after being sent.
    • Modified messages are highlighted for easy identification.
    • CONNECT events are logged.
  • Message detail view

    • Hex and ASCII dumps side by side.
    • ASCII view respects newlines.
    • Scrollable panels with highlighted differences between original and modified payloads.
  • Web GUI

    • Dark theme interface built with Flask.
    • Real-time intercept editor with dual cursors (hex ↔ ASCII sync).
    • Filter and search through history.

Getting Started

Prerequisites

  • Python 3.9+
  • OpenSSL (for certificate generation on Linux)

Installation

Clone the repository:

git clone https://github.com/your-username/tcp-intercept-proxy.git
cd tcp-intercept-proxy

Install dependencies:

pip install flask

Usage

Run the proxy:

python proxytcp.py [--tls] <listen_host:listen_port> <remote_host:remote_port> [--gui-host 127.0.0.1] [--gui-port 5000]

About

Raw TCP Intercept Proxy generated with AI

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages