Book Image

Hands-On AWS Penetration Testing with Kali Linux

By : Karl Gilbert, Benjamin Caudill
Book Image

Hands-On AWS Penetration Testing with Kali Linux

By: Karl Gilbert, Benjamin Caudill

Overview of this book

The cloud is taking over the IT industry. Any organization housing a large amount of data or a large infrastructure has started moving cloud-ward — and AWS rules the roost when it comes to cloud service providers, with its closest competitor having less than half of its market share. This highlights the importance of security on the cloud, especially on AWS. While a lot has been said (and written) about how cloud environments can be secured, performing external security assessments in the form of pentests on AWS is still seen as a dark art. This book aims to help pentesters as well as seasoned system administrators with a hands-on approach to pentesting the various cloud services provided by Amazon through AWS using Kali Linux. To make things easier for novice pentesters, the book focuses on building a practice lab and refining penetration testing with Kali Linux on the cloud. This is helpful not only for beginners but also for pentesters who want to set up a pentesting environment in their private cloud, using Kali Linux to perform a white-box assessment of their own cloud resources. Besides this, the book covers a large variety of AWS services that are often overlooked during a pentest — from serverless infrastructure to automated deployment pipelines. By the end of this book, you will be able to identify possible vulnerable areas efficiently and secure your AWS cloud environment.
Table of Contents (28 chapters)
Free Chapter
1
Section 1: Kali Linux on AWS
5
Section 2: Pentesting AWS Elastic Compute Cloud Configuring and Securing
9
Section 3: Pentesting AWS Simple Storage Service Configuring and Securing
12
Section 4: AWS Identity Access Management Configuring and Securing
16
Section 5: Penetration Testing on Other AWS Services
20
Section 6: Attacking AWS Logging and Security Services
23
Section 7: Leveraging AWS Pentesting Tools for Real-World Attacks

Using the boto3 library for reconnaissance

Boto3 is the AWS software development kit (SDK) for Python and can be found here: https://boto3.amazonaws.com/v1/documentation/api/latest/index.html. It provides an interface to the AWS APIs, allowing us to interact with them programmatically, meaning that we can automate and control what we are trying to do in AWS. It is managed by AWS, so it is constantly updated with the latest features and offerings from AWS. It is also used on the backend of the AWS Command Line Interface (CLI), so it makes more sense for us to interact with this library than to try and run AWS CLI commands from within our code.

Because we are going to be using Python for our scripts, boto3 is the perfect option to allow us to interact with the AWS APIs. This way, we can automate our reconnaissance/information gathering phase with a lot of the extra stuff already...