Gung
An embedded intranet penetration tool, support extensive protocol stack and python plugin
Install / Use
/learn @Poseidon-fan/GungREADME
Gung
Gung is an intranet penetration tool, helping you expose a local server behind a NAT or firewall to the internet. The name has two meanings: firstly, it's an abbreviation of gungnir, the spear of Odin, the chief god in Norse mythology, symbolizing penetration and precision; secondly, it's a homophone for "Going Unblocked Network Gateway." — And the idea for this name originated from LLM.
Features
- Rich Protocol Integration The transport and proxy layers are unified and abstracted. Multiplexed long-lived connections are encapsulated at the transport layer, currently supporting TCP, QUIC, KCP and Websocket. The proxy layer currently supports TCP and HTTP, with HTTP using port multiplexing based on the host.
- Pluggable Currently supports user write Python codes as an embedded plugin to authenticate. Lua / RPC plugins will be supported later. Also, the plugin will support network traffic hijacking analysis, similar to nginx.
Quicstart
Gung has two command-line tools: gungs for the server and gungc for the client, which can be obtained from the release page.
Server
To start a server, run the following command on a machine with a public IP address:
$ gungs run <server_config.toml>
<server_config.toml> is the path to the configuration file; please refer to the examples for details. The minimal configuration items are as follows:
[transport]
# Transport type, tcp | quic | kcp | websocket
type = "tcp"
addr = "0.0.0.0:7777"
[auth]
# Allow all users to connect. Alternatively, it can be set to py_plugin to use a Python script for authentication.
type = "pass"
# Allow http proxy
[proxy.http]
base_domain = "your_server_domain"
Client
gungc is a pure CLI tool, run gungc --help for details. A simple example is shown below
$ gungc <local_addr> \
-s <server_addr> \
-t tcp \
-p http
Planning
This project is currently under active development. Feel free to star, fork, and submit PRs to help improve this project. 😊
- [ ] Support network traffic hijacking analysis. Integrate Lua and RPC plugin.
- [ ] More transport and proxy protocols.
- [ ] Http API and web ui for both server management and client analysis.
- [ ] Improve relevant documents
Related Skills
himalaya
345.4kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
coding-agent
345.4kDelegate coding tasks to Codex, Claude Code, or Pi agents via background process
tavily
345.4kTavily web search, content extraction, and research tools.
openhue
345.4kControl Philips Hue lights and scenes via the OpenHue CLI.
