pwnat – NAT To NAT Client Communication Tool

Use Netsparker

pwnat, pronounced “poe-nat”, is a tool that allows any number of clients behind NATs to communicate with a server behind a separate NAT with *no* port forwarding and *no* DMZ setup on any routers in order to directly communicate with each other. The server does not need to know anything about the clients trying to connect.

Simply put, this is a proxy server that works behind a NAT, even when the client is behind a NAT, without any 3rd party. There is no middle man, no proxy, no 3rd party, no UPnP/STUN/ICE required, no spoofing, and no DNS tricks. More importantly, the client can then connect to any host or port on any remote host or to a fixed host and port decided by the server.

pwnat is based off of the UDP tunneling software by Daniel Meekins, udptunnel, and my original chownat.

pwnat will work on most *nix operating systems. Tested on Linux and OS X.

You can download pwnat v0.2-beta here:


Or read more here.

Posted in: Hacking Tools, Networking Hacking


Latest Posts:

Eraser - Windows Secure Erase Hard Drive Wiper Eraser – Windows Secure Erase Hard Drive Wiper
Eraser is a hard drive wiper for Windows which allows you to run a secure erase and completely remove sensitive data from your hard drive by overwriting it several times with carefully selected patterns.
Insecure software versions are a problem Web Security Stats Show XSS & Outdated Software Are Major Problems
Netsparker just published some anonymized Web Security Stats about the security vulnerabilities their online solution identified on their users’ web applications and web services during the last 3 years.
CTFR - Abuse Certificate Transparency Logs For HTTPS Subdomains CTFR – Abuse Certificate Transparency Logs For HTTPS Subdomains
CTFR is a Python-based tool to Abuse Certificate Transparency Logs to get subdomains from a HTTPS website in a few seconds. - Test SSL Security Including Ciphers, Protocols & Detect Flaws – Test SSL Security Including Ciphers, Protocols & Detect Flaws is a free command line tool to test SSL security, it checks a server's service on any port for the support of TLS/SSL ciphers, protocols as well as recent cryptographic flaws and more.
Four Year Old libSSH Bug Leaves Servers Wide Open Four Year Old libssh Bug Leaves Servers Wide Open
A fairly serious 4-year old libssh bug has left servers vulnerable to remote compromise, fortunately, the attack surface isn't that big as neither OpenSSH or the GitHub implementation are affected.
CHIPSEC - Platform Security Assessment Framework CHIPSEC – Platform Security Assessment Framework For Firmware Hacking
CHIPSEC is a platform security assessment framework for PCs including hardware, system firmware (BIOS/UEFI), and platform components for firmware hacking.

7 Responses to pwnat – NAT To NAT Client Communication Tool

  1. GZero April 4, 2010 at 3:12 pm #

    This looks really useful, I would imagine people with restrictive filters on their internet might find a really good use for this.

    It’s also made by Samy Kamkar, who, if memory serves, was the chap who did the Samy friends worm XSS thing on MySpace a few years ago.

    Cool tool

  2. Akagi Kong April 4, 2010 at 3:39 pm #

    Somebody port this bad boy =P

    Sigh, this would be even cooler if it had a Windows port. FreeBSD is my default OS, but I have to work with Windows boxes–a lot.

  3. AnyMoose April 4, 2010 at 7:28 pm #

    @Akagi Kong:
    Try setting up any old computer with Puppy Linux, 2 NICs and min 256MB RAM. When you setup the firewall, share the connection.


  4. mendark April 5, 2010 at 11:56 am #

    does it really work?

  5. GZero April 6, 2010 at 10:40 am #

    Akagi Kong:

    If you were to get a copy of MinGW and try to compile this on windows, I

  6. Akagi Kong April 6, 2010 at 12:30 pm #

    Geez, I can do this without pwnat, but if I can do it with pwnat and none of the BS that

  7. antitree April 29, 2010 at 12:01 am #

    This is a cool tool and Samy did some good research but in practice it works only with NAT and not through a firewall like some may thing. By messing with the source and destination IP’s between the header and the datagram, any firewall worth it’s weight purporting “deep packet inspection” will detect this.