Skip to content

NukaColaM/WinTProxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WinTProxy

Transparent SOCKS5 proxy for Windows. WinTProxy intercepts IPv4 TCP and UDP traffic with WinDivert, plans each packet through explicit DNS, bypass, policy, proxy, return-path, and action-execution stages, then applies a proxy/direct verdict.

Features

  • Explicit verdict/action traffic engine with centralized pass, drop, rewrite/send, DNS-forward, and UDP-relay actions.
  • Traffic-stage JSON config: dns, bypass, policy, proxy, and logging.
  • Ordered first-match proxy/direct policy rules by process name, IP range, port, and protocol.
  • TCP forwarding through SOCKS5 CONNECT.
  • UDP forwarding through SOCKS5 UDP ASSOCIATE.
  • DNS hijacking for both UDP and TCP DNS before normal policy decisions.
  • Fixed-size hot-path tables for connection tracking, DNS NAT, process lookup, and relay state.

Quick Start

Cross-compile with MinGW from WSL2 or Linux:

sudo apt install gcc-mingw-w64-x86-64
cmake -B build -DCMAKE_TOOLCHAIN_FILE=cmake/mingw-toolchain.cmake
cmake --build build

Place WinDivert.dll and WinDivert64.sys next to WinTProxy.exe, then run from an elevated Windows shell:

WinTProxy.exe --config config.example.json

Usage

WinTProxy.exe [options]

Options:
  --config <path>     Path to JSON config file
  --log <path>        Override logging.file from config
  -v, --verbose       Override logging.level (-v=info, -vv=debug, -vvv=trace; extra -v clamps to trace)
  --version           Show version
  -h, --help          Show help

Traffic behavior belongs in the config file. CLI flags are intentionally limited to bootstrap/logging/help/version. The five public log levels are error, warn, info, debug, and trace; debug is the normal troubleshooting view with flow decisions, DNS query summaries, and grouped performance snapshots, while trace is reserved for packet/protocol detail. Extra verbosity such as -vvvv clamps to trace.

Configuration

WinTProxy now uses a traffic-stage schema. Policy decisions are proxy or direct only; the previous policy-level block action has been removed from the traffic model.

See config.example.json for an annotated example.

Documentation

License

Third-party components:

About

Transparent SOCKS5 proxy for Windows. Intercepts TCP/UDP traffic at the packet level via WinDivert.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors