Payload Library for the Packet Squirrel by Hak5
This repository contains payloads and extensions for the Hak5 Packet Squirrel and Hak5 Packet Squirrel Mark II. Community developed payloads are listed and developers are encouraged to create pull requests to make changes to or submit new payloads.
View Featured Packet Squirrel Payloads and Leaderboard
Get your payload in front of thousands. Enter to win over $2,000 in prizes in the Hak5 Payload Awards!
There are currently two versions of the Packet Squirrel. The original Packet Squirrel can be identified by the micro-usb power port, while the Packet Squirrel Mark II can be identified by the USB-C power port.
Please make sure you select payloads for the device you have!
Payloads for the original Packet Squirrel be found in the legacy-mk1/
directory.
The Packet Squirrel Mark II payloads can be found in the payloads/
directory.
The Packet Squirrel Mark II expands the DuckyScript for Packet Squirrel commands and adds many new commands and features. In general, payloads from the original Packet Squirrel can be adapted to run on the Packet Squirrel Mark II by adopting the new commands - check out the Packet Squirrel Mark II Payload documentation for more information!
The existing suite of original Packet Squirrel payloads remains available and functional on the original hardware in the legacy-mk1/
directory!
Got Questions? Need some help? Reach out:
Follow the creators
Korben's Twitter |
Korben's Instagram
Dragorn's Mastodon |
Darren's Twitter |
Darren's Instagram
The Packet Squirrel Mark II by Hak5 is a stealthy pocket-sized man-in-the-middle.
This Ethernet multi-tool is designed to give you covert remote access, painless packet captures, and secure VPN connections with the flip of a switch.
The Packet Squirrel Mark II is an Ethernet multi-tool for packet capture, man-in-the-middle network manipulation, stream filtering and redirection, remote VPN access, and more.
Use simplified DuckyScript for Packet Squirrel to create payloads, or unlock the full power of Bash script or Python 3 for complex payloads.
Edit payloads live in the Web UI editor with syntax highlighting, SSH, or build your payloads with Payload Studio.
Exfiltrate data or pentest from anywhere with Hak5 Cloud C².
DuckyScript is the payload language of Hak5 gear.
Originating on the Hak5 USB Rubber Ducky as a standalone language, the Packet Squirrel uses DuckyScript commands to bring the ethos of easy-to-use actions to the payload language.
DuckyScript commands are always in all capital letters to distinguish them from other system or script language commands. Typically, they take a small number of options (or sometimes no options at all).
Payloads can be constructed of DuckyScript commands alone, or combined with the power of bash scripting and system commands to create fully custom, advanced actions.
The files in this repository are the source code for your payloads and run directly on the device no compilation required - simply place your payload.txt
in the appropriate directory and you're ready to go!
Take your DuckyScript™ payloads to the next level with this full-featured, web-based (entirely client side) development environment.
Payload studio features all of the conveniences of a modern IDE, right from your browser. From syntax highlighting and auto-completion to live error-checking and repo synchronization - building payloads for Hak5 hotplug tools has never been easier!
Supports your favorite Hak5 gear - USB Rubber Ducky, Bash Bunny, Key Croc, Shark Jack, Packet Squirrel & LAN Turtle!
Become a PayloadStudio Pro and Unleash your hacking creativity!
OR
Try Community Edition FREE
Payload Studio Themes Preview GIF
Payload Studio Autocomplete Preview GIF
Cloud C² is available as an instant download. A free license for Community Edition is available which is not for commercial use and comes with community support. The Professional and Teams Editions are for commercial use with standard support.
Cloud C² is a self-hosted web-based command and control suite for networked Hak5 gear that lets you pentest from anywhere.
Linux, Mac and Windows computers can host the Cloud C² server while Hak5 gear such as the WiFi Pineapple, LAN Turtle and Packet Squirrel can be provisioned as clients.
Once you have the Cloud C² server running on a public-facing machine (such as a VPS) and the Hak5 devices are provisioned and deployed, you can login to the Cloud C² web interface to manage these devices as if you were directly connected.
With multiple Hak5 devices deployed at a client site, aggregated data provides a big picture view of the wired and wireless environments.
Hak5 Cloud C² Web Interface - Teams Edition - Sites
Hak5 Cloud C² Teams edition comes full of features designed to help you manage all of your remote Hak5 devices with ease:
- Multi-User
- Multi-Site
- Role-Based Access Control
- Advanced Auditing
- Tunneling Services including web Terminal and WiFi Pineapple web interface proxy
View Featured Payloads and Leaderboard
Once you have developed your payload, you are encouraged to contribute to this repository by submitting a Pull Request. Reviewed and Approved pull requests will add your payload to this repository, where they may be publically available.
Payloads should be submitted to the most appropriate category directory, such as exfiltration, interception, recon, sniffing, etc.
Subject to change. Please ensure any submissions meet the latest version of these standards before submitting a Pull Request.
Please give your payload a unique, descriptive and appropriate name. Do not use spaces in payload, directory or file names. Each payload should be submit into its own directory, with -
or _
used in place of spaces, to one of the categories such as exfiltration, interception, sniffing, or recon. Do not create your own category.
The payload itself should be named payload
.
Additional files and documentation can be included in the payload directory. Documentation should be in README.md
or README.txt
.
In many cases, payloads will require some level of configuration by the end payload user. Be sure to take the following into careful consideration to ensure your payload is easily tested, used and maintained.
- Remember to use PLACEHOLDERS for configurable portions of your payload - do not share your personal URLs, API keys, Passphrases, etc...
- Do not leave defaults that point at live services
- Make note of both required and optional configuration(s) in your payload using comments at the top of your payload or "inline" where applicable
Payloads should begin with comments specifying at the very least the name of the payload and author. Additional information such as a brief description, the target, any dependencies / prerequisites and the LED status used is helpful.
# Title: Example payload
# Description: Example payload with configuration options
# Author: Hak5
# Version: 1.0
# Category: Remote-Access
# Net Mode: NAT
#
# LED State Descriptions
# Magenta Solid - Configuring NETMODE
# LED OFF - Waiting for BUTTON
# Red Blink 2 Times - Connection Failed
# Amber Blink 5 Times - Connection Successful
# Red Blink 1 Time - Command Failed
# Cyan Blink 1 Time - Command Successful
Configurable options should be specified in variables at the top of the payload file:
# Options
SSH_USER="username"
SSH_HOST="hostname"
PORT=31337
All payloads should include a NETMODE
command to set the Packet Squirrel to a useful network mode.
When in doubt, NETMODE NAT
is a reasonable default.
The payload should use common payload states rather than unique color/pattern combinations when possible with an LED command preceding the Stage or NETMODE
.
LED SETUP
NETMODE NAT
Common payload states include a SETUP
, with may include a FAIL
if certain conditions are not met. This is typically followed by either a single ATTACK
or multiple STAGEs
. More complex payloads may include a SPECIAL
function to wait until certain conditions are met. Payloads commonly end with a CLEANUP
phase, such as moving and deleting files or stopping services. A payload may FINISH
when the objective is complete and the device is safe to eject or turn off. These common payload states correspond to LED
states.
Payloads from this repository are provided for educational purposes only. Hak5 gear is intended for authorized auditing and security analysis purposes only where permitted subject to local and international laws where applicable. Users are solely responsible for compliance with all laws of their locality. Hak5 LLC and affiliates claim no responsibility for unauthorized or unlawful use.
DuckyScript is a trademark of Hak5 LLC. Copyright © 2010 Hak5 LLC. All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means without prior written permission from the copyright owner. Packet Squirrel and DuckyScript are subject to the Hak5 license agreement (https://hak5.org/license) DuckyScript is the intellectual property of Hak5 LLC for the sole benefit of Hak5 LLC and its licensees. To inquire about obtaining a license to use this material in your own project, contact us. Please report counterfeits and brand abuse to [email protected]. This material is for education, authorized auditing and analysis purposes where permitted subject to local and international laws. Users are solely responsible for compliance. Hak5 LLC claims no responsibility for unauthorized or unlawful use. Hak5 LLC products and technology are only available to BIS recognized license exception ENC favorable treatment countries pursuant to US 15 CFR Supplement No 3 to Part 740.
Generally, payloads may execute commands on your device. As such, it is possible for a payload to damage your device. Payloads from this repository are provided AS-IS without warranty. While Hak5 makes a best effort to review payloads, there are no guarantees as to their effectiveness. As with any script, you are advised to proceed with caution.