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

Configuring EC2 authentication

Within AWS, all AMI Linux images are configured to authenticate any SSH session using a key pair authentication system instead of a password.

Before an EC2 instance is to be launched, AWS prompts us to configure an SSH key pair to be able to connect. We can either create our own SSH key pair or use an existing one:

  1. Let's create a new key pair and name it ubuntukey.
  2. Then, download the key pair and launch the instance. The key pair file we get is ubuntukey.pem. The name of the file will change based on the key name that was provided previously. Ensure that the key file is stored securely. In case the key is lost, AWS won't provide another key file and you will no longer be able to access your EC2 instance.
  3. Once the key file has been downloaded, AWS redirects you to the Launch Status page to let you know that your EC2 instance is being launched...