Skip to main content

pop

pop is an offensive payload generator designed for portability, minimalism and efficiency. It is usable as a command-line tool, a Web application and a Discord app.

Note that, depending on the payload generator, some dependencies might have to be satisfied, first. For example, the rt-go module requires the go binary to be available.

Command-line tool

pip install popsh
pop -H

Heroku

Deployment to Heroku, whether for the web UI or the Discord applcation is quite simple. First, make sure you have an Heroku account and install the command-line tool locally. Then, simply create an app with the following command:

heroku apps:create

You'll be provided the randomly-generated identifier for the app. The app's publicly reachable URL will be https://APPID.herokuapp.com/.

Simple deployment (no dependencies)

When you're ready to deploy the app, simply move to the project's repository and run the following command.

# first time only
git remote add heroku https://git.heroku.com/$APPNAME.git

# if deploying the Discord app (+ Web UI).
. ./env.rc
sh ./tools/heroku-set-config.sh $APPNAME

# deploy the app
git push heroku main

Full deployment

To deploy the application with all modules available, first make sure that Docker is available and run the following commands.

# Fetch the existing image
docker pull registry.gitlab.com/pgregoire/pop:latest

# Re-tag the image for Heroku
docker tag registry.gitlab.com/pgregoire/pop:latest registry.heroku.com/$APPNAME/web

# Login to the Heroku image registry
docker login --username=_ --password=$(heroku auth:token) registry.heroku.com

# Push the image to Heroku
docker push registry.heroku.com/$APPNAME/web

# Deploy the image/app
heroku container:release web

Discord application

To make the application available to Discord users, you'll have to register the application with Discord and deploy the application where it will be publicly reachable.

Before proceeding, you need to have the publicly reachable URL of the app in hand. The Interactions endpoint URL for the Discord bot will be $URL/b/d.

Register a bot following the instructions at https://flask-discord-interactions.readthedocs.io/en/latest/botsetup.html

If you plan on using the project's scripts to deploy the app, set the following environment variables (they could be stored in env.rc for convenience).

DISCORD_CLIENT_ID='123456789012345678'
DISCORD_PUBLIC_KEY='123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0'
DISCORD_CLIENT_SECRET='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
DISCORD_GUILD_ID='123456789012345678'

export DISCORD_CLIENT_ID
export DISCORD_PUBLIC_KEY
export DISCORD_CLIENT_SECRET
export DISCORD_GUILD_ID

Metadata

Release files for popsh 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for popsh 1.0.3
File Size Uploaded
popsh-1.0.3.tar.gz 38.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for popsh 1.0.3
File Interpreter ABI Platform
popsh-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 121.0 kB

Release files / popsh-1.0.3.tar.gz

Download URL popsh-1.0.3.tar.gz
Size 38.5 kB
Tags Source
SHA-256 checksum
How to use checksums
00736540721f72b954e10ef1cbde8709b3eea44d8a1ffeb5f81ad5800cd69b2c
BLAKE2b-256 checksum
How to use checksums
e606ea397a4507f98eb017939910e03ff260ea8e2ce7e3520312858fda8b8350
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.4

Release files / popsh-1.0.3-py3-none-any.whl

Download URL popsh-1.0.3-py3-none-any.whl
Size 82.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6daa248d6a6b2438fe61059f8fda2961427f1040e0b3bbafd1e658540d074034
BLAKE2b-256 checksum
How to use checksums
1ee288cb633e8b4b1489dd2045251d91c4e0992eb8b2b4569acc61226fa19653
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.4

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.1

2 release files

0.9

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page