You can search for templates either by name or by tag. All our templates have sounding names that should be self explaining, what this template is for. Every template may have some tags, that group them together, in case you need some inspiration of which template could help you.
We currently support these tags:
Tag | What's it for? |
---|---|
web | For templates that target web applications - The line between web and api is blurry, but web templates usually require a frontend |
api | For templates that target APIs |
system | For templates that target services that may be host independent (e.g. ssh, ftp, smb, ...) |
mobile | For templates that target mobile devices (iOS, Android, ...) |
windows | For templates that target Windows (usually combined with others) |
linux | For templates that target Linux (usually combined with others) |
domain | For templates that require a domain joined host |
shell | For templates that get you a reverse shell |
cracking | For templates that help you get crackable material and crack it |
privesc | For templates that help you elevate your privileges |
proxy | For templates that help you setting up a proxy for pivoting to different systems (ligolo-ng, chisel, ssh port forwarding) |
wordlist | For templates that help you creating wordlists |
utils | For templates that run utility scripts |
enum | For templates that help you to enumerate targets |
xss | For templates that help you to exploit xss vulnerabilities |
Some information on how tags are used:
- Tags should be assigned to templates according to the target system
- We currently assume, PRofi is run on a Linux system, thus the pasted commands should all run on Linux. This does not "justify" the Linux tag.
-
Install prerequisites
-
Clone the repo
git clone https://github.com/pluggero/profi.git cd profi
-
Install Tools
python install.py
-
Install Python Requirements
pip install -r requirements.txt
-
Install PRofi
pip install .
- The configuration file is located at
~/.config/profi/config.yaml
- In this file you can configure the following:
locations
: The locations of the tools and templatesclipboard
: The clipboard optionstemplate options
: Options for setting various variables in the templates
Using the configuration file, you can specify and configure custom color codings for each tag. Rofi uses the Pango Markup Language for styling.
PRofi
will only render those tags in color, which have a color assigned in the config file. All other tags will default to a white font color.
There are two ways in which the colors can be specified:
By name (X11 color names)
"<tagname>": "green"
"<tagname>": "#00FF00"
For more information, please refer to the official Rofi documentation or the Pango documentation.
This list contains a (non-exhaustive) list of template-specific tools:
If you want to add a template, please use this YAML format:
metadata:
filename: "<filename>.yaml"
tags:
[
"web",
"api",
"shell",
"system",
"linux",
"windows",
"domain",
"mobile",
"cracking",
"privesc",
"proxy",
]
created: "2025-03-29"
author: "Unknown"
content: |
Ur payload here
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated. See the open issues for a full list of proposed features (and known issues).
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feat/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feat/AmazingFeature
) - Open a Pull Request