Barq: The AWS Cloud Post Exploitation Framework

Barq is a post-exploitation framework that allows you to easily perform attacks on a running AWS infrastructure. It allows you to attack running EC2 instances without having the original instance SSH keypairs.

It also allows you to perform enumeration and extraction of stored Secrets and Parameters in AWS.

Prerequisites

  • An existing AWS account access key id and secret (Token too in some case)
  • Python 2 or 3. It can run with both. To run the msfvenom payloads, you need msfvenom to be available on your workstation, with the PATH setup correctly.

Also Read – Five Benefits That Will Convince You to Integrate Your Systems

Installing

For python 2:

pip install -r requirements.txt

For python3

pip3 install -r requirements.txt

Better to create a virtualenv environment for the tool. Please note that using sudo with pip is not recommended.

Main Features

  • Attacking EC2 instances without knowing keypairs or connection profiles/passwords.
  • Dumping EC2 secrets and parameters.
  • Enumerating EC2 instances and security groups.
  • Ability to launch Metasploit and Empire payloads against EC2 instances.
  • Training mode to test attacks and features without messing with running production environment.
  • Tab-completed commands in a menu-based navigation system.
  • Ability to dump EC2 instance metadata details.
  • Ability to use EC2 keys or tokens (for example acquired from compromised instances or leaked source code)
  • Printing for you the listening commands for msfconsole in cli mode for easy copy-pasting.

TODO

  • Create a plugin-based class system for menus in the framework
  • Add a feature to exclude attacker-defined IPs and ports from security groups.
  • Add persistence functionality.
  • Launch attacks against Lambda, S3 and RDS.
  • Export hostnames, IPs and ports in an nmap-ready format for scanning.
  • Integrate fully with Metasploit and Empire REST APIs.

Credit: Mohammed Aldoub

R K

Recent Posts

groupdel Command in Linux: Remove a Group and Audit Files

The groupdel command in Linux removes a group from the system. It deletes the group's entry from /etc/group and /etc/gshadow,…

9 hours ago

wc Command in Linux: Count Lines, Words, Characters, and Bytes

The wc command in Linux counts lines, words, characters, and bytes in files or standard input. It…

10 hours ago

top Command in Linux: Monitor Processes and Resource Usage

The top command in Linux provides a real-time view of running processes and system resource usage. From…

10 hours ago

usermod Command in Linux: Modify User Accounts and Groups

The usermod command in Linux modifies existing user account attributes. You can use it to manage group…

10 hours ago

sort Command in Linux: Sort Text, Numbers, Columns, and More

The sort command in Linux reads lines from files or standard input and writes them to standard…

1 day ago

wall Command in Linux: Broadcast Messages to Logged-In Users

The wall command in Linux sends a message to the terminals of all currently logged-in users. The…

1 day ago