{
	"id": "12587074-ee7f-475b-8ff9-f7377f258d76",
	"created_at": "2026-04-06T00:15:35.73213Z",
	"updated_at": "2026-04-10T03:22:01.858233Z",
	"deleted_at": null,
	"sha1_hash": "be99a280a1e09519b930d777f3de06cc55f18507",
	"title": "GitHub - RhinoSecurityLabs/pacu: The AWS exploitation framework, designed for testing the security of Amazon Web Services environments.",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 78287,
	"plain_text": "GitHub - RhinoSecurityLabs/pacu: The AWS exploitation\r\nframework, designed for testing the security of Amazon Web\r\nServices environments.\r\nBy nobodynate\r\nArchived: 2026-04-05 13:14:11 UTC\r\nQuick reference\r\nWhere to get help: the Rhino Security Labs Discord, or Stack Overflow\r\nWhere to file issues: https://github.com/RhinoSecurityLabs/pacu/issues\r\nMaintained by: Rhino Security Labs\r\nWhat is Pacu?\r\nPacu is an open-source AWS exploitation framework, designed for offensive security testing against cloud\r\nenvironments. Created and maintained by Rhino Security Labs, Pacu allows penetration testers to exploit\r\nconfiguration flaws within an AWS account, using modules to easily expand its functionality. Current modules\r\nenable a range of attacks, including user privilege escalation, backdooring of IAM users, attacking vulnerable\r\nLambda functions, and much more.\r\nInstallation\r\nPacu is a fairly lightweight program, as it requires only Python3.7+ and pip3 to install a handful of Python\r\nlibraries.\r\nQuick Installation\r\n pip3 install -U pip\r\n pip3 install -U pacu\r\n pacu\r\nInstall with Pipx\r\nThis is the preferred method when using Kali Linux as pip is no longer installed by default. This will install\r\nPacu with the latest updates which may not be included in the official release.\r\npipx install git+https://github.com/RhinoSecurityLabs/pacu.git\r\nhttps://github.com/RhinoSecurityLabs/pacu\r\nPage 1 of 5\n\nFor a more detailed and user-friendly set of user instructions, please check out the Wiki's installation guide.\r\nHow to use Pacu's Docker image\r\nOption 1: Run with default entrypoint which directly runs Pacu\r\ndocker run -it rhinosecuritylabs/pacu:latest\r\nOption 2: Run without default entrypoint\r\ndocker run -it --entrypoint /bin/sh rhinosecuritylabs/pacu:latest\r\nOption 3: Run with AWS config and credentials\r\nWarning: Running this command will mount your local AWS configuration files into the Docker\r\ncontainer when it is launched. This means that any user with access to the container will have access to\r\nyour host computer's AWS credentials.\r\ndocker run -it -v ~/.aws:/root/.aws rhinosecuritylabs/pacu:latest\r\nGetting Started\r\nThe first time Pacu is launched, you will be prompted to start and name a new session. This session will be used to\r\nstore AWS key pairs, as well as any data obtained from running various modules. You can have any number of\r\ndifferent sessions in Pacu, each with their own sets of AWS keys and data, and resume a session at any time\r\n(though a restart is currently required to switch between sessions).\r\nModules require an AWS key, which grants you minimal access to an AWS environment and is comprised of an\r\naccess key ID and a secret access key. To set your session's keys, use the set_keys command, and then follow\r\nthe prompts to supply a key alias (nickname for reference), an AWS access key ID, an AWS secret access key, and\r\nan AWS session token (if you are using one).\r\nIf you are ever stuck, help will bring up a list of available commands.\r\nBasic Commands in Pacu\r\nlist will list the available modules for the regions that were set in the current session.\r\nhelp module_name will return the applicable help information for the specified module.\r\nrun module_name will run the specified module with its default parameters.\r\nhttps://github.com/RhinoSecurityLabs/pacu\r\nPage 2 of 5\n\nrun module_name --regions eu-west-1,us-west-1 will run the specified module against the eu-west-1\r\nand us-west-1 regions (for modules that support the --regions argument)\r\nRunning Pacu From the CLI\r\npacu --help will display the help menu\r\npacu --session \u003csession name\u003e sets the session to use for commands that require one\r\npacu --list-modules will list all modules available (does not require session)\r\npacu --pacu-help will list the pacu help window (does not require session)\r\npacu --module-name \u003cmodule name\u003e the name of a module to perform an action on, you can execute or\r\nget information on the module\r\npacu --exec execute the module provided in --module-name\r\npacu --module-info get information on the module provided in --module-name\r\npacu --data \u003cservice name || all\u003e query the local SQLAlchemy database to retrieve enumerated\r\ninformation\r\npacu --module-args=\"\u003carg1\u003e \u003cvalue\u003e \u003carg2\u003e \u003cvalue\u003e\" supply optional module arguments to the\r\nmodule being executed\r\npacu --set-regions \u003cregion1 region2 || all\u003e set the regions to use in the session, separate regions by\r\na space or enter all for all regions\r\npacu --whoami get information about the current user\r\nPacu's Modular Power\r\nPacu uses a range of plug-in modules to assist an attacker in enumeration, privilege escalation, data exfiltration,\r\nservice exploitation, and log manipulation within AWS environments. Contributions or ideas for new modules are\r\nwelcome.\r\nTo keep pace with ongoing AWS product developments, we've designed Pacu from the ground up with\r\nextensibility in mind. A common syntax and data structure keep modules easy to build and expand on - no need to\r\nspecify AWS regions or make redundant permission checks between modules. A local SQLite database is used to\r\nmanage and manipulate retrieved data, minimizing API calls (and associated logs). Reporting and attack auditing\r\nis also built into the framework; Pacu assists the documentation process through command logging and exporting,\r\nhelping build a timeline for the testing process.\r\nCommunity\r\nWe're always happy to get bug reports in the Pacu framework itself, as well as testing and feedback on different\r\nmodules, and generally, critical feedback to help refine the framework. Any support for Pacu through use, testing,\r\nimprovement, or just by spreading the word, would be very much appreciated.\r\nIf you're interested in contributing directly to the Pacu Framework itself, please read our contribution guidelines\r\nfor code conventions and git-flow notes.\r\nDeveloping Pacu Modules\r\nhttps://github.com/RhinoSecurityLabs/pacu\r\nPage 3 of 5\n\nIf you're interested in writing your own modules for Pacu, check out our Module Development wiki page. As you\r\ndevelop new capabilities please reach out to us -- we'd love to add your new modules into the core collection that\r\ncomes with Pacu.\r\nPacu Framework Development Goals\r\nImprove interface formatting\r\nDatabase forward-migrations and version tracking\r\n\"Attack Playbooks\" to allow for easier use of complex module execution chains\r\nColored console output\r\nModule Dry-Run functionality\r\nAllow use of standalone config files\r\nPlugin architecture improvements\r\nNotes\r\nPacu is officially supported in OSX and Linux.\r\nPacu is Open-Source Software and is distributed with a BSD-3-Clause License.\r\nSubmitting Requests / Bug Reports\r\nReport vulnerabilities in Pacu directly to us via email: pacu@rhinosecuritylabs.com .\r\nPacu creates error logs within each session's folder, as well as a global error log for out-of-session errors\r\nwhich is created in the main directory. If you can, please include these logs with your bug reports, as it will\r\ndramatically simplify the debugging process.\r\nIf you have a feature request, an idea, or a bug to report, please submit them here.\r\nPlease include a description sufficient to reproduce the bug you found, including tracebacks and\r\nreproduction steps, and check for other reports of your bug before filing a new bug report. Don't\r\nsubmit duplicates.\r\nWiki\r\nFor walkthroughs and full documentation, please visit the Pacu wiki.\r\nContact Us\r\nWe'd love to hear from you, whatever the reason. Reach out on the Rhino Security Labs Discord.\r\nDisclaimers, and the AWS Acceptable Use Policy\r\nTo the best of our knowledge Pacu's capabilities are compliant with the AWS Acceptable Use Policy, but as\r\na flexible and modular tool, we cannot guarantee this will be true in every situation. It is entirely your\r\nresponsibility to ensure that how you use Pacu is compliant with the AWS Acceptable Use Policy.\r\nhttps://github.com/RhinoSecurityLabs/pacu\r\nPage 4 of 5\n\nDepending on what AWS services you use and what your planned testing entails, you may need to review\r\nAWS Customer Support Policy for Penetration Testing before actually running Pacu against your\r\ninfrastructure.\r\nAs with any penetration testing tool, it is your responsibility to get proper authorization before using Pacu\r\noutside of your environment.\r\nPacu is software that comes with absolutely no warranties whatsoever. By using Pacu, you take full\r\nresponsibility for any and all outcomes that result.\r\nSource: https://github.com/RhinoSecurityLabs/pacu\r\nhttps://github.com/RhinoSecurityLabs/pacu\r\nPage 5 of 5",
	"extraction_quality": 1,
	"language": "EN",
	"sources": [
		"MITRE"
	],
	"references": [
		"https://github.com/RhinoSecurityLabs/pacu"
	],
	"report_names": [
		"pacu"
	],
	"threat_actors": [],
	"ts_created_at": 1775434535,
	"ts_updated_at": 1775791321,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/be99a280a1e09519b930d777f3de06cc55f18507.pdf",
		"text": "https://archive.orkl.eu/be99a280a1e09519b930d777f3de06cc55f18507.txt",
		"img": "https://archive.orkl.eu/be99a280a1e09519b930d777f3de06cc55f18507.jpg"
	}
}