University of Pennsylvania SEC510 - In-person & Live Online

In-Person & Live Online, US Eastern Mon, Oct 24 - Fri, Oct 28, 2022
470x382_Get_Involved_Free_Sans_Account.jpg

Welcome to SEC510: Public Cloud Security: AWS, Azure, and GCP

Instructor: Brandon Evans | 38 CPEs
Associated Certification: 
GIAC Public Cloud Security (GPCS)

Organizations in every sector are increasingly adopting cloud offerings to build their online presence. However, although cloud providers are responsible for the security of the cloud, their customers are responsible for what they do in the cloud.

As the landscape rapidly evolves and development teams eagerly adopt the next big thing, security is constantly playing catch-up in order to avert disaster. 

SEC510: Public Cloud Security: AWS, Azure, and GCP teaches you how the Big 3 cloud providers work and how to securely configure and use their services and PaaS / IaaS offerings. 20 Hands-On Labs + CloudWars

What You Will Learn

Multiple Clouds Require Multiple Solutions

SEC510 provides cloud security practitioners, analysts, and researchers with an in-depth understanding of the inner workings of the most popular public cloud providers: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). Students will learn industry-renowned standards and methodologies, such as the MITRE ATT&CK Cloud Matrix and CIS Cloud Benchmarks, then apply that knowledge in hands-on exercises to assess a modern web application that leverages the cloud native offerings of each provider. Students will launch unhardened services, analyze the security configuration, validate that they are insufficiently secure, deploy patches, and validate the remediation. Through this process students will learn the philosophies that undergird each provider and how these have influenced their services and will leave the course confident that they have the knowledge they need when adopting services and Platform as a Service (PaaS) / Infrastructure as a Service (IaaS) offerings in each cloud.

The Big 3 cloud providers alone provide more services than any one company can consume. As security professionals, it can be tempting to limit what the developers use to the tried-and-true solutions of yesteryear. Unfortunately, this approach will inevitably fail as the product development organization sidelines a security entity that is unwilling to change. Functionality drives adoption, not security, and if a team discovers a service offering that can help get its product to market quicker than the competition, it can and should use it. SEC510 gives you the ability to provide relevant and modern guidance and guardrails to these teams to enable them to move both quickly and safely.

"This class was an excellent investment. I learned a great deal about the various strengths and weaknesses in the 3 largest cloud providers' default services and default configurations as well as inherent insecurities that can't be easily mitigated. There is a great deal of actionable content that I can take back to my team as we work to monitor and help our clients secure their cloud environments." - John Senn, EY

BUSINESS TAKEAWAYS:

  • Be proactive in embracing the multicloud trend safely. It is impossible for an organization to standardize on a single cloud provider. A survey from Forrester shows that 86% of organizations identify as multicloud. Even if you do not want to use multiple clouds, mergers and acquisitions makes this inevitable.
  • Effective cloud security practitioners need to know how the Big 3 providers differ. Security concepts do not always translate from cloud-to-cloud. A great strategy for one can be catastrophic for another.
  • All security-minded organizations require professional reconfiguration as most cloud services are highly insecure by default.
  • Storage security is much more than just closing public buckets. Even private assets can be compromised by competent attackers.
  • Security is 5+ years behind development and needs to play catch-up. Technologies that security considers to be cutting-edge, like serverless, have been used in production for a very long time.

SKILLS LEARNED:

  • Understand the inner workings of cloud services and Platform as a Service (PaaS) / Infrastructure as a Service (IaaS) offerings in order to make more informed decisions in the cloud
  • Understand the design philosophies that undergird each provider and how these have influenced their services in order to properly prescribe security solutions for them
  • Discover the unfortunate truth that many cloud services are adopted before their security controls are fully fleshed out
  • Understand Amazon Web Services (AWS), Azure, and Google Cloud Platform (GCP) in depth.
  • Understand the intricacies of Identity and Access Management, one of the most fundamental concepts in the cloud and yet one of the last understood
  • Understand cloud networking and how locking it down is a critical aspect of defense-in-depth in the cloud
  • Analyze how each provider handles encryption at rest and in transit in order to prevent sensitive data loss
  • Apply defense-in-depth techniques to protect data in cloud storage
  • Compare and contrast the serverless platforms of each provider
  • Explore the service offering landscape to discover what is driving the adoption of multiple cloud platforms and to assess the security of services at the bleeding edge, such as serverless platforms
  • Utilize multicloud IAM and cloud Single Sign-On to provide secure access to resources across cloud accounts and providers
  • Automate security and compliance checks using cloud-native platforms and open-source solutions
  • Understand Terraform Infrastructure-as-Code well enough to share it with your engineering team as a starting point for implementing the controls discussed in the course

HANDS-ON TRAINING:

SEC510: Public Cloud Security: AWS, Azure, and GCP consolidates all of the concepts discussed in the lectures through hands-on labs. In the labs, students will assess a modern web application written with Next.js, React, and Sequelize that leverages the cloud native offerings of each provider. Each lab includes step-by-step guide as well as a no hints option for students who want to test their skills without further assistance. This allows students to choose the level of difficulty that is best for them and fall back to the step-by-step guide as needed.

SEC510 also offers students an opportunity to participate in CloudWars Bonus Challenges each day in a gamified environment, while also providing more hands-on experience with the cloud security and relevant tools.

Pricing & Registration

This course is part of the SANS Partnership Program. Students affiliated with an eligible institution* may enroll in this course at a discounted rate of $3170. To receive this rate, enter the appropriate discount code when registering. All registrations using a code will be audited to confirm that they are eligible to receive the discounted rate. GPCA Certification 949 USD | OnDemand 949 USD This class is being offered IN-PERSON & LIVE ONLINE, please click on the blue "Register Now" button to the right. If you are affiliated with a Partnership-eligible institution enter discount code 75770-IP (If you are attending In-person) and 75770-LO (If you are attending Live Online) to receive your Partnership pricing! *Eligible institutions include US and Canada-based educational Institutions (any accredited educational institution, including colleges, universities, technical training institutes and K-12 schools) and any US state or local government agency.

Course Syllabus

SEC510.1: Cloud Credential Management

Overview

SEC510 starts with a brief overview of the Big 3 cloud providers. We will examine the factors driving adoption of multiple cloud providers and the rise in popularity of Azure and GCP, which historically have lagged far behind AWS. Students will then initialize their lab environment and deploy a modern web application to each of the Big 3 providers.

This leads into an analysis of the intricacies of Identity and Access Management (IAM), one of the most fundamental and misunderstood concepts in cloud security. Playing the role of an attacker in their lab environment, students will compromise real IAM credentials using application vulnerabilities and then use them to access sensitive data.

The remainder of this section will focus on how to leverage well-written IAM policies to minimize the damage caused by such attacks. Although the ultimate solution is to fix the bug in the application, these strategies can prevent a minor incident from becoming front-page news.

Exercises
  • VM Credential Exposure
  • Hardening AWS IAM Policies
  • Hardening Azure and GCP Policies
  • Advanced IAM Features
  • CloudWars (Section 1): Public Cloud Security DevOps Challenges
Topics

The Multicloud Movement

  • Cloud Market Trends
  • Multicloud Considerations
  • Shadow Cloud Accounts

Multicloud Security Assessment

  • MITRE ATT&CK Cloud Matrix
  • Lab Environment Introduction
  • HashiCorp Terraform Overview

Identity and Access Management

  • Identities
  • Policies
  • Organization-Wide Controls
  • AWS IAM
  • Azure Active Directory
  • GCP IAM

Cloud Credential Management

  • Cloud Instance Metadata APIs
  • Credential Management Postmortems (Case Studies)

Application Vulnerability Overviews

  • Overly Permissive Permissions
  • Command Injection
  • Server-Side Request Forgery
  • Supply-Chain Attack

SEC510.2: Cloud Virtual Networks

Overview

Section 2 covers how to lock down infrastructure within a virtual private network. As the public cloud IP address blocks are well known and default network security is often lax, millions of sensitive assets are unnecessarily accessible to the public Internet. This section will ensure that none of these assets belong to your organization.

The section begins by demonstrating how ingress and egress traffic can be restricted within each provider. Students will analyze the damage that can be done without these controls by accessing a public-facing database and creating a reverse shell session in each environment. We will then eliminate both attack vectors with secure cloud configuration.

In addition to introducing additional network defense-in-depth mechanisms, we will discuss cloud-based intrusion detection capabilities to address the network-based attacks we cannot eliminate. Students will analyze cloud traffic and search for indicators of compromise.

Exercises
  • Network Lockdown
  • Analyzing Network Traffic
  • Private Endpoint Security
  • Cloud VPN and Managed SSH
  • CloudWars (Section 2): Public Cloud Security DevOps Challenges
Topics

Cloud Virtual Networks

  • Network Service Scanning
  • Default Network Configuration
  • Network Security Groups

Network Traffic Analysis

  • Flow Logging
  • Traffic Mirroring

Private Endpoints

  • AWS PrivateLink
  • Azure Private Link
  • GCP VPC Service Controls

Advanced Remote Access

  • Managed SSH
  • Hybrid VPN Gateway
  • Session Manager
  • Azure Bastion
  • OS Login
  • Identity-Aware Proxy (IAP)

Command and Control Servers

  • Reverse Shells

SEC510.3: Encryption, Storage, and Logging

Overview

The first half of Section 3 covers all topics related to encryption in the cloud. Students will learn about each providers cryptographic key solution and how it can be used to encrypt data at rest. Students will also learn how in-transit encryption is performed throughout the cloud, such as the encryption between clients, load balancers, applications, and database servers.

Proper encryption is not only critical for security; it is also an important legal and compliance consideration. This section will ensure that your organization has all of the information at its disposal to send the auditors packing.

The second half of Section 3 covers storing data in the cloud, defense-in-depth mechanisms, access logging, filesystem persistence, and more.

Exercises
  • Audit Decryption Events
  • Encrypt All The Things!
  • Storage Service Lockdown
  • Unauthorized File Sharing
  • CloudWars (Section 3): Public Cloud Security DevOps Challenges
Topics

Cloud Key Management

  • AWS KMS
  • Azure Key Vault
  • Google Cloud KMS

Encryption with Cloud Services

  • Disk-Level Encryption
  • Record-Level Encryption
  • In-Transit Encryption

Cloud Storage Platforms

  • Access Control
  • Audit Logs
  • Data Retention

Data Exfiltration Paths

SEC510.4: Serverless Platforms

Overview

This course section tackles the ever-changing trends in technology by providing in-depth coverage of a paradigm taking the industry by storm: Serverless. It balances the discussion of the challenges serverless introduces with the advantages it provides in securing product development and security operations.

The first half of the section covers serverless cloud functions in AWS Lambda, Azure Functions, and Google Cloud Functions. After introspecting the serverless runtime environments using Serverless Prey (a popular open-source tool written by the course authors), students will examine and harden practical serverless functions in a real environment.

The second half of the course section covers App Services, which often interplay with cloud functions. The section concludes with a detailed analysis of Firebase, an application platform with serverless offerings that has been loosely integrated with the Google Cloud Platform since its acquisition by Google in 2014.

Exercises
  • Serverless Prey
  • Hardening Serverless Functions
  • App Service Security
  • Firebase Access Control
  • CloudWars (Section 4): Public Cloud Security DevOps Challenges
Topics

Cloud Serverless Functions

  • Security Advantages
  • Function as a Service Defense

Persistence with Serverless

App Services

  • AWS Elastic Beanstalk
  • Azure App Service
  • Google App Engine

Firebase

  • Realtime Database
  • Cloud Firestore
  • Authentication

SEC510.5: Cross-Account and Cross-Cloud Assessment

Overview

The course concludes with practical guidance on how to operate an organization across multiple cloud accounts and providers. Many of the topics discussed in the earlier course sections are significantly complicated when moving from a single account to multiple accounts, as well as when the providers are integrated with each other. We begin by discussing how using multiple accounts and clouds changes Identity and Access Management (IAM).

No discussion of secure user identity management would be complete without mentioning Single Sign-On (SSO). With it, members of an organization can use the same credential set to sign onto a variety of applications. When a member leaves the organization, an administrator can terminate their all of their access with a single command. Section 5s second half covers each clouds native SSO solution, how AWS SSO is key for managing multiple AWS accounts, and each clouds end-user identification service.

We conclude by introducing tools and services that can be used to automate compliance checks against the benchmarks we have covered throughout the course. This includes open-source solutions as well as cloud-based security services. With these capabilities, an organization can take the lessons learned in SEC510 and apply them at scale.

Exercises
  • Multicloud Integration
  • Login with Azure AD
  • Automated Benchmarking
  • Lab Teardown
  • CloudWars (Section 5): Public Cloud Security DevOps Challenges
Topics

Multicloud Access Management

Cloud Single Sign-On

  • AWS SSO
  • Microsoft Identity Platform and Azure AD
  • Google Cloud Identity

End-User Identity Management

  • Amazon Cognito User Pools
  • Microsoft Identity Platform and Azure AD B2C
  • Google CICP and Firebase Authentication

Automated Benchmarking

  • AWS Security Hub
  • Azure Security Center
  • GCP Security Command Center
  • Open-Source Solutions

Summary

Additional Resources


Prerequisites

Although SEC510 uses Terraform Infrastructure-as-Code to deploy and configure services in each cloud for the labs, students will not need in-depth knowledge of Terraform or need to understand any of the syntax used. However, students will be introduced at a high level to what this code accomplishes.

The following are courses or equivalent experiences that are prerequisites for SEC510:

For those looking to prepare ahead of time, check out the Terraform Getting Started Guide: https://learn.hashicorp.com/terraform/getting-started/install

This class requires a basic understanding of web application technology and concepts such as HTML and JavaScript. To maximize the benefit for a wider range of audiences, the discussions in this course will be programming language agnostic. Attendees should have some understanding of concepts like databases (SQL) and scripting languages used in modern web applications.

Lab Requirements

!!! IMPORTANT NOTICE !!!

1) LAB PREPARATION

Please plan to arrive 30 minutes early before your first session for lab preparation and setup. During this time, students can confirm that each cloud account is properly set up, ensure that laptops have virtualization enabled, copy the lab files, and start the Linux virtual machine. For students taking the course Live Online, the instructor will be available to assist them with laptop prep and setup 30 minutes prior to the start of the course.

The first lab of the course, Lab 0, is the foundation for the rest of the course. Failure to complete Lab 0 will prevent the student from completing any other lab exercise. Students should complete as much of Lab 0 as possible prior to the first session.

2) MANDATORY CLOUD ACCOUNTS

Students must bring their own AWS, Azure, or GCP accounts to complete the course labs.

The SEC510 course labs contain lab exercises for AWS, Azure, and GCP. Most labs can be completed with any one of these providers. However, we strongly recommend completing the labs for all three providers to learn how the services in each differ in small, yet critical ways. Experiencing this nuance in these interactive labs will help you better defend each platform and prepare for the GPCS certification.

Prior to the start of class, students must create the cloud accounts for the providers they would like to use. Students who would like to complete the Firebase lab must create a GCP account even if they choose not to complete the rest of the GCP exercises. The average cost to run the labs with all three providers enabled is < $5 USD per-day. AWS costs are less for free-tier accounts. New Azure subscriptions may be eligible for a $200 credit for 30 days.

OnDemand students:

  • Students must create AWS, Azure, or GCP accounts prior to starting the course to complete the lab exercises for each:

Live events (in-person or Live Online)

  • Students are required to use a time-limited (duration of live class) SANS Managed AWS account that will be provided with the course materials.
  • Students completing Azure lab exercises must create an Azure account prior to the start of class

  • Students completing GCP or FIrebase lab exercises just create a GCP accout prior to the start of class

3) MANDATORY LAPTOP REQUIREMENT

Students must bring their own system configured according to these instructions.

A properly configured system is required to fully participate in this course. If you do not carefully read and follow these instructions, you will likely leave the class unsatisfied because you will not be able to participate in hands-on exercises that are essential to this course. Therefore, we strongly urge you to arrive with a system meeting all the requirements specified for the course.

Students must be in full control of the network running the VM. The VM communicates with several external services (AWS, Azure, GCP, etc.) over HTTPS, SSH, and other non-standard ports. Running the course virtual machine on a host with a VPN, intercepting proxy, or egress firewall filter may cause connection issues communicating with these services. Students must be able to configure or disable these services for the lab environment to function properly.

BRING YOUR OWN LAPTOP CONFIGURED USING THE FOLLOWING DIRECTIONS.

  • A properly configured system is required for each student participating in this course. Before starting your course, carefully read and follow these instructions exactly:
  • Host Operating System: Latest version of Windows 10, macOS 10.15.x or later, or Linux that also can install and run VMware virtualization products described below.
  • Fully update your host operating system prior to the class to ensure you have the right drivers and patches installed to utilize the latest USB 3.0 devices.
  • Those who use a Linux host must also be able to access exFAT partitions using the appropriate kernel or FUSE modules.
  • Download and install 7-Zip (for Windows Hosts) or Keka (macOS). Without these extraction tools, you'll be unable to extract large archives we'll supply to you in class.
  • Download and install either VMware Workstation Pro 15.5.x, VMware Player 15.5.x, or Fusion 11.5.x or higher versions before class.
  • If you do not own a licensed copy of VMware Workstation or Fusion, you can download a free 30-day trial copy from VMware. VMware will send you a time-limited serial number if you register for the trial at its website.
  • Other virtualization software, such as VirtualBox and Hyper-V, are not appropriate because of compatibility and troubleshooting problems you might encounter during class.
  • VMware Workstation Pro and VMware Player on Windows 10 are not compatible with Windows 10 Credential Guard and Device Guard technologies. Please disable these capabilities for the duration of the class if they're enabled on your system by following instructions in this document.

Mandatory Host Hardware Requirements

  • CPU: 64-bit 2.5+ GHz multi-core processor or higher
  • BIOS/UEFI: VT-x, AMD-V, or the equivalent must be enabled in the BIOS/UEFI
  • Hard Disk: Solid-State Drive (SSD) is MANDATORY with 50GB of free disk space minimum
  • Memory: 16GB of RAM or higher is mandatory for this class (IMPORTANT! - 16GB of RAM is MANDATORY)
  • Working USB 2.0 or higher port
  • Wireless Ethernet 802.11 B/G/N/AC
  • Local Administrator Access within your host operating system

Mandatory Host Operating System Requirements

You must use a 64-bit laptop with one of the following operating systems that have been verified to be compatible with course VMware image:

  • Latest version of Windows 10, macOS 10.15.x or later, or Linux that also can install and run VMware virtualization products described below.

Mandatory Software Requirements

Prior to class, ensure that the following software is installed on the host operating system:

  • VMware Workstation Pro 15.5.X+, VMware Player 15.5.X+, or Fusion 11.5+
  • Zip File Utility (7Zip or the built-in operating system zip utility)

Cloud Virtual Machine (AWS AMI)

If your workstation or network does not meet the above requirements, please reach out to your instructor, TA, or OnDemand SME for access to the SEC510 Amazon Machine Image (AMI). After sharing the AMI, instructions will be provided for launching and connecting to the virtual machine over Remote Desktop (RDP). This option is required for students that cannot meet the laptop requirements.

IN SUMMARY

Before beginning the course you should:

  • Complete Lab 0.
  • Have a laptop with a solid-state drive (SSD), 16GB of RAM, and a 64-bit operating system.
  • Install VMware (Workstation or Fusion).
  • Windows only: Verify that the BIOS settings have the Intel VT virtualization extensions enabled.
  • Download the SEC510 Lab Setup Instructions and Course Media from your sans.org account.
  • Register a NEW AWS account prior to the start of the class at https://aws.amazon.com
  • Register a NEW Azure account and paid subscription prior to the start of class at https://azure.microsoft.com
  • Register a NEW GCP account with a free trial prior to the start of class at https://cloud.google.com

After you have completed those steps, your course media will be delivered via download. The media files for class can be large, some in the 40 to 50 GB range. You need to allow plenty of time for the download to complete. Internet connections and speed vary greatly and are dependent on many different factors. Therefore, it is not possible to give an estimate of the length of time it will take to download your materials. Please start your course media downloads as you get the link. You will need your course media immediately on the first day of class. Waiting until the night before the class starts to begin your download has a high probability of failure.

SANS has begun providing printed materials in PDF form. Additionally, certain classes are using an electronic workbook in addition to the PDFs. The number of classes using eWorkbooks will increase quickly. In this new environment, we have found that a second monitor and/or a tablet device can be useful for keeping the class materials visible while the instructor is presenting or while you are working on lab exercises.

If you have additional questions about the laptop specifications, please contact laptop_prep@sans.org.

Location for In-Person 

University of Pennsylvania 

3401 Spruce St. 

Irvine Auditorium - Green Room 

Philadelphia, PA   19104

Parking: 

Walnut 38 Garage at https://www.facilities.upenn.edu/maps/parking/parking-garage-walnut-38

Option 2 – Penn Museum https://www.facilities.upenn.edu/maps/parking/parking-garage-penn-museum

Option 3 – Walnut 40 garage at https://www.facilities.upenn.edu/maps/parking/parking-garage-walnut-40