Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

commit e0f1c65c68e9bfb1984bd8893a06f26de353af78
Author: Mike Kershaw / Dragorn <>
Date:   Wed Jul 26 10:40:46 2023 -0400

    launch video link

commit 1e7a59d1aaf3f5a8fd81e2ff2447733a38252121
Author: Mike Kershaw / Dragorn <>
Date:   Tue Jul 25 12:42:55 2023 -0400

    Source different squirrel image

Git stats


Failed to load latest commit information.
Latest commit message
Commit time

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!


Packet Squirrel Versions

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!


Getting Started

Documentation / Learn More


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

About the Packet Squrirel

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.

Hak5 Packet Squirrel Features

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².

About DuckyScript™

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!

Build your payloads with PayloadStudio

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!
Try Community Edition FREE

Payload Studio Themes Preview GIF

Payload Studio Autocomplete Preview GIF

Hak5 Cloud C²

Cloud C² makes it easy for pen testers and IT security teams to deploy and manage fleets of Hak5 gear from a simple cloud dashboard.

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.

Hak5 Cloud C² Web Interface

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

Learn More


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.

Please adhere to the following best practices and style guides when submitting a payload.

Purely destructive or invasive payloads will not be accepted. No, it's not "just a prank".

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.

Naming Conventions

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 or README.txt.

Payload Configuration

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

Payload Format

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

Configuration Options

Configurable options should be specified in variables at the top of the payload file:

# Options


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.


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 ( 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 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.