Sign inSign up

platypew/pwnpad

By platypew

Updated over 1 year ago

🐳 VMs are bloat. Dockerise your VAPT environment

Image
Security
0

1.7K

platypew/pwnpad repository overview

PwnPad




Perfect for doing Capture-The-Flag challenges and Pentesting on any platform, without needing a clunky, fat, resource hungry virtual machine. PwnPad provides a wide array of tools at your very own fingertips, powered by Arch Linux!


Contents

  1. Download
  2. Usage
  3. Features
  4. Tools
  5. License

Download

How to Download and Install PwnPad

Requirements
  • Docker installed (Docker Desktop for Windows & Mac)
  • Nerd Fonts installed
Homebrew (macOS)
brew install pwnpad/tap/pwnpad
Wget (Linux)
sudo wget https://raw.githubusercontent.com/pwnpad/pwnpad/master/p2 \
    -O /usr/local/bin/p2 && \
sudo wget https://raw.githubusercontent.com/pwnpad/pwnpad/master/_p2-autocomplete.zsh \
    -O /usr/local/share/zsh/site-functions/_p2
Git

PwnPad can also be downloaded directly from GitHub

git clone https://github.com/pwnpad/pwnpad.git
Getting Images
# Build image locally (Only works if you installed through cloning)
p2 build            # Basic image
p2 build -i lite    # Lite image
p2 build -i bare    # Bare image (Extra image without the user interface)

# Or pull from Docker Hub
docker pull platypew/pwnpad:lite   # Lite image
docker pull platypew/pwnpad:latest # Basic image
docker pull platypew/pwnpad:bare   # Bare image (Extra image without the user interface)

Usage

How to operate PwnPad

Quick Start
# Using Base Image
p2 attach ctf

# Using Lite Image
p2 attach -i lite ctf

# Using Bare Image
# Using the privileged flag is not recommended, however, it solves a lot of manual adding of capabilities
docker run --privileged -it platypew/pwnpad:bare <tool name>
General

You might want to alias p2 in your bashrc/zshrc

$ p2
USAGE:
  p2 <SUBCOMMAND>

SUBCOMMAND:
  build     Build Docker image
  attach    Attach into container
  rm        Remove container and its volumes
  kill      Stop container from running
  volume    Enter into container's volume
  ls        List pwnpad instances
  update    Update image to the latest build

HELP:
  p2 build -h
  p2 attach -h
  p2 rm -h

Features

Why PwnPad over other Docker-based environments?


  1. It's powered by Arch, giving you access to the AUR and Blackarch (with systemd enabled)
  2. It runs on Windows (WSL2), MacOS and Linux
  3. It's built for both amd64 and arm64
  4. It's super lightweight taking over 3GB of space
  5. You can spawn as many independent instances as you want and remove them just as quick
  6. Supports X11 forwarding
  7. Supports VNC and noVNC with i3
  8. Customised Neovim and Zsh so you look super cool using it
Integrated Features
SSH

You can ssh into PwnPad by doing these steps.

  1. sudo systemctl start sshd
  2. Insert your public key into ~/.ssh/authorized_keys
  3. Use p2 ls to the port bound to port 22
  4. Do ssh -p <port> pwnpad@localhost
Proxy

You can proxy your traffic through PwnPad by doing these steps.

  1. Use p2 ls to the port bound to port 22
  2. sshuttle -vHNr pwnpad@localhost:<port>
Publish Port to Public

You can use ngrok to publish a port to the public.

  • Start: publish start (Insert api key if prompted)
  • Stop: publish stop
  • Status: publish status
  • Set a port to tunnel: publish set <port>
  • Delete a tunnelling port: publish del <port>
Toggle ASLR

You can turn ASLR on and off.

  • On: aslr on
  • Off: aslr off
Enable noVNC (not available in lite image)

Enabling VNC (you may need to run your system through a proxy to access the noVNC server).

  • Start: gui start
  • Stop: gui stop
Create intel environment (only in arm64 image)

Creates a chroot environment to run purely intel binaries. You can still run intel binaries that uses only glibc within the regular context.

  • Use pacman: intel-pacman
  • Run command: intel-run
Included Infosec Tools
ToolsDescription
aflplusplusAmerican Fuzzing Lop fuzzer with community patches and additional features
arp-scanA tool that uses ARP to discover and fingerprint IP hosts on the local network
autoreconA multi-threaded network reconnaissance tool which performs automated enumeration of services
binwalkTool for searching a given binary image for embedded files
commixAutomated All-in-One OS Command Injection and Exploitation Tool
creddumpA python tool to extract various credentials and secrets from Windows registry hives
crunchA wordlist generator for all combinations/permutations of a given character set
dnsenumScript that enumerates DNS information from a domain
dnsreconPython script for enumeration of hosts, subdomains and emails from a given domain using google.
enum4linux-ngA tool for enumerating information from Windows and Samba systems
evil-winrmThe ultimate WinRM shell for hacking/pentesting
exiftoolMeta information reader/writer
exploitdbThe official Exploit Database repository
foremostA console program to recover files based on their headers, footers, and internal data structures
fpingUtility to ping multiple hosts at once
gdb-multiarchThe GNU Debugger for all gdb supported architectures (i386/arm/mips...)
gobusterURI and DNS subdomain bruteforcer
hashcat-utilsSet of small utilities that are useful in advanced password cracking
hexeditTerminal-based hex editor
hpingA command-line oriented TCP/IP packet assembler/analyzer
impacketCollection of classes for working with network protocols
jadxJava decompiler
johnJohn the Ripper password cracker
lbdLoad Balancing detector
ldapenumEnumerate domain controllers using LDAP
ligolo-ngAn advanced, yet simple, tunneling tool that uses a TUN interface
metasploitPlatform for developing, testing, and executing exploits
nbtscanScan networks searching for NetBIOS information
ncrackHigh-speed network authentication cracking tool
netcatNetwork piping application
netexecA swiss army knife for pentesting Windows/Active Directory environments
ngrokSecure introspectable tunnels to localhost webhook development tool and debugging tool
niktoA web server scanner which performs comprehensive tests against web servers
nmapUtility for network discovery and security auditing
onesixtyoneAn SNMP scanner that sends multiple SNMP requests to multiple IP addresses
pwndbgMakes debugging with GDB suck less
pwntoolsUseful CTF utilities.
revshellgenSimple script to generate commands to achieve reverse shells
rizinOpen-source tools to disasm, debug, analyze and manipulate binary files (With Ghidra Decompiler)
ropperGadget finder.
rsactftoolRSA attack tool (mainly for CTFs)
rustscanA modern port scanner
scalpelA frugal, high performance file carver
sleuthkitFile system and media management forensic analysis tools
smbmapA handy SMB enumeration tool
snmpcheckA free open source utility to get information via SNMP protocols
sqlmapAutomatic SQL injection and database takeover tool
swaksSwiss Army Knife SMTP; Command line SMTP testing, including TLS and AUTH
wafw00fIdentify and fingerprint Web Application Firewall (WAF) products protecting a website
wceA security tool to list logon sessions and add, change, list and delete associated credentials
whatwebNext generation web scanner that identifies what websites are running
whoisIntelligent WHOIS client
windows-binariesA collection of pentesting Windows binaries
xortoolXOR analysis tool.
yafuYafu factor input integers in a completely automated way.
z3Theorem prover from Microsoft Research.
Tools available in lite image
ToolsDescription
aflplusplusAmerican Fuzzing Lop fuzzer with community patches and additional features
binwalkTool for searching a given binary image for embedded files
exiftoolMeta information reader/writer
exploitdbThe official Exploit Database repository
foremostA console program to recover files based on their headers, footers, and internal data structures
gdb-multiarchThe GNU Debugger for all gdb supported architectures (i386/arm/mips...)
gobusterURI and DNS subdomain bruteforcer
hexeditTerminal-based hex editor
jadxJava decompiler
metasploitPlatform for developing, testing, and executing exploits
netcatNetwork piping application
ngrokSecure introspectable tunnels to localhost webhook development tool and debugging tool
nmapUtility for network discovery and security auditing
pwndbgMakes debugging with GDB suck less
pwntoolsUseful CTF utilities.
rizinOpen-source tools to disasm, debug, analyze and manipulate binary files (With Ghidra Decompiler)
ropperGadget finder.
rsactftoolRSA attack tool (mainly for CTFs)
sqlmapAutomatic SQL injection and database takeover tool
xortoolXOR analysis tool.
yafuYafu factor input integers in a completely automated way.
z3Theorem prover from Microsoft Research.
Included QoL Tools
SoftwareDescription
autojumpA cd command that learns
batCat clone with syntax highlighting and git integration
exals replacement
fzfA fuzzy finder
neovimA fully-fledged personal development environment
openvpnAn easy-to-use, robust and highly configurable VPN
powerlevel0kBeautiful zsh shell using powerlevel10k theme
qemu-userAllows emulation of i386 and x86_64 binaries (Only for arm64 builds)
ripgrepGrep but fasstttt
tmuxAllows multiple terminal sessions to be accessed simultaneously in a single window
zshA modern shell with a bunch a plugins powered by zgenom
And many more!

License

This project is released under the MIT License

Tag summary

Content type

Image

Digest

sha256:7cb877b27

Size

2.7 GB

Last updated

over 1 year ago

docker pull platypew/pwnpad