Configuring BIG-IP ASM: Application Security Manager
Duration
4 Days
Course Content
This course gives participants a functional understanding of how to deploy, tune, and operate BIG IP Application Security Manager (ASM) to protect their web applications from HTTP-based attacks. The course includes lecture, hands-on labs, and discussion about different ASM tools for detecting and mitigating threats from multiple attack vectors such web scraping, Layer 7 Denial of Service, brute force, bots, code injection, and zero day exploits.
Prerequisites
There are no required F5 technology-specific prerequisites for this course.However, completing one the following before attending would be very helpful for students unfamiliar with BIG-IP:
- Administering BIG-IP instructor-led course
- F5 Certified BIG-IP Administrator
The following free web-based courses, although optional, will be very helpful for any student with limited BIG-IP administration and configuration experience.
- Getting Started with BIG-IP web-based training
- Getting Started with BIG-IP Local Traffic Manager (LTM) web-based training
- Getting Started with BIG-IP Application Security Manager (ASM) web-based training
The following general network technology knowledge and experience are recommended before attending any F5 Global Training Services instructor-led course:
- OSI model encapsulation
- Routing and switching
- Ethernet and ARP
- TCP/IP concepts
- IP addressing and subnetting
- NAT and private IP addressing
- Default gateway
- Network firewalls
- LAN vs. WAN
Course Outline
Chapter 1: Setting Up the BIG-IP System
- Introducing the BIG-IP System
- Initially Setting Up the BIG-IP System
- Archiving the BIG-IP System Configuration
- Leveraging F5 Support Resources and Tools
Chapter 2: Traffic Processing with BIG-IP
- Identifying BIG-IP Traffic Processing Objects
- Understanding Profiles
- Overview of Local Traffic Policies
- Visualizing the HTTP Request Flow
Chapter 3: Web Application Concepts
- Overview of HTTP Application Request Processing
- Web Application Firewall: Layer 7 Protection
Layer 7 Security Checks
- Overview of Web Application Communication Elements
- Overview of the HTTP Request Structure
- Examining HTTP Responses
- Exploiting the Document Object Model
- How ASM parses File Types, URLs, and Parameters
- Using the Fiddler HTTP Proxy
Chapter 4: Exploiting Web Application Vulnerabilities
- A Taxonomy of Attacks: The Threat Landscape
- Common Exploits Against Web Applications
Chapter 5: Security Policy Deployment
- Defining Learning
- Comparing Positive and Negative Security Models
- The Deployment Workflow
- Policy Templates: Protection Starting Point
- Deployment Workflow (Using Advanced Settings)
- Defining Logging Profiles
- Security Checks Offered by Rapid Deployment
- Defining Data Guard
Chapter 6: Policy Tuning and Violations
- Post-Deployment Traffic Processing
- How Violations are Categorized
- Violation Rating: A Threat Scale
- Defining Staging and Enforcement
- Defining Enforcement Mode
- Defining the Enforcement Readiness Period
- Defining the Learn, Alarm, and Block Settings
- Defining Learning Suggestions
- Choosing Automatic or Manual Learning
- Interpreting the Enforcement Readiness Summary
- Configuring the Blocking Response Page
Chapter 7: Using Attack Signatures
- Defining Attack Signatures
- Creating User-Defined Attack Signatures
- Using Simple and Advanced Edit Modes
- Defining Attack Signature Sets
- Understanding Attack Signatures and Staging
- Updating Attack Signatures
Chapter 8: Positive Security Policy Building
- Defining and Learning Security Policy Components
- Defining the Wildcard
- Defining the Entity Lifecycle
- Choosing the Learning Scheme
- How to Learn: Never (Wildcard Only)
- How to Learn: Always
- How to Learn: Selective
- Reviewing the Enforcement Readiness Period: Entities
- Viewing Learning Suggestions and Staging Status
- Defining the Learning Score
- Defining Trusted and Untrusted IP Addresses
- How to Learn: Compact
Chapter 9: Securing Cookies and Other Headers
- The Purpose of F5 ASM Cookies
- Defining Allowed and Enforced Cookies
- Securing HTTP headers
Chapter 10: Visual Reporting and Logging
- Viewing Application Security Summary Data
- Building Application Security Reports Using Filters
- Viewing ASM Resource Consumption
- Ensuring PCI Compliance: PCI-DSS 3.0
- Analyzing Requests using the Attack Expert System
- Local Logging Facilities and Destinations
- Viewing Logs in the Configuration Utility
- Defining the Logging Profile
- Configuring Response Logging
- Chapter 11: Lab Project 1
Chapter 12: Advanced Parameter Handling
- Defining Parameter Types
- Defining Static Parameters
- Defining Dynamic Parameters
- Defining Parameter Levels
- Defining Positional Parameters
- Other Parameter Considerations
Chapter 13: Automatic Policy Building
- Overview of Automatic Policy Building
- Identifying Templates Which Automate Learning
- Defining Policy Loosening
- Defining Policy Tightening
- Defining Learning Speed: Traffic Sampling
- Defining Track Site Changes
Chapter 14: Web Application Vulnerability Scanner Integration
- Integrating Scanner Output
- Importing and Resolving Vulnerabilities
- Using the Generic XML Scanner XSD file
Chapter 15: Deploying Layered Policies
- Defining a Parent and Child Policies
- Layered Policy Deployment Use Cases
Chapter 16: Login Enforcement and Brute Force Mitigation
- Defining Login Enforcement for Flow Control
- Defining Brute Force Attacks
- Defining Credential Stuffing
Chapter 17: Reconnaissance with Session Tracking
- Defining Session Tracking
- Configuring Actions Upon Violation Detection
Chapter 18: Layer 7 DoS Protection
- Defining Denial of Service Attacks
- Defining the DoS Protection Profile
- Overview of TPS-based DoS Protection
- Configuring Stress-based Mitigation
- Defining Behavioral DoS Mitigation
Chapter 19: Advanced Bot Defense
- Classifying Clients with the Bot Defense Profile
- Defining Bot Signatures
- Defining F5 Fingerprinting
- Defining Browser Verification
- Defining Device ID
- Defining Bot Defense Profile Templates
- Defining Microservices Protection
- Mitigating Web Scraping
Chapter 20: Review and Final Labs
- Course Review Questions
- Final Lab Project (Option 1) – Production Scenario
- Final Lab Project (Option 2) – Managing Traffic with Layer 7 Local Traffic Policies
Chapter 1: Setting Up the BIG-IP System
- Introducing the BIG-IP System
- Initially Setting Up the BIG-IP System
- Archiving the BIG-IP System Configuration
- Leveraging F5 Support Resources and Tools
Chapter 2: Traffic Processing with BIG-IP
- Identifying BIG-IP Traffic Processing Objects
- Overview of Network Packet Flow
- Understanding Profiles
- Overview of Local Traffic Policies
- Visualizing the HTTP Request Flow
Chapter 3: Web Application Concepts
- Overview of Web Application Request Processing
- Web Application Firewall: Layer 7 Protection
- ASM Layer 7 Security Checks
- Overview of Web Communication Elements
- Overview of the HTTP Request Structure
- Examining HTTP Responses
- How ASM Parses File Types, URLs, and Parameters
- Using the Fiddler HTTP Proxy
Chapter 4: Common Web Application Vulnerabilities
- A Taxonomy of Attacks: The Threat Landscape
- What Elements of Application Delivery are Targeted?
- Common Exploits Against Web Applications
Chapter 5: Security Policy Deployment
- Defining Learning
- Comparing Positive and Negative Security Models
- The Deployment Workflow
- Policy Type: How Will the Policy Be Applied
- Policy Template: Determines the Level of Protection
- Policy Templates: Automatic or Manual Policy Building
- Assigning Policy to Virtual Server
- Deployment Workflow: Using Advanced Settings
- Selecting the Enforcement Mode
- The Importance of Application Language
- Configure Server Technologies
- Verify Attack Signature Staging
- Viewing Requests
- Security Checks Offered by Rapid Deployment
- Defining Attack Signatures
- Using Data Guard to Check Responses
Chapter 6: Policy Tuning and Violations
- Post-Deployment Traffic Processing
- Defining Violations
- Defining False Positives
- How Violations are Categorized
- Violation Rating: A Threat Scale
- Defining Staging and Enforcement
- Defining Enforcement Mode
- Defining the Enforcement Readiness Period
- Reviewing the Definition of Learning
- Defining Learning Suggestions
- Choosing Automatic or Manual Learning
- Defining the Learn, Alarm and Block Settings
- Interpreting the Enforcement Readiness Summary
- Configuring the Blocking Response Page
Chapter 7: Attack Signatures
- Defining Attack Signatures
- Attack Signature Basics
- Creating User-Defined Attack Signatures
- Defining Simple and Advanced Edit Modes
- Defining Attack Signature Sets
- Defining Attack Signature Pools
- Understanding Attack Signatures and Staging
- Updating Attack Signatures
Chapter 8: Positive Security Policy Building
- Defining and Learning Security Policy Components
- Defining the Wildcard
- Defining the Entity Lifecycle
- Choosing the Learning Scheme
- How to Learn: Never (Wildcard Only)
- How to Learn: Always
- How to Learn: Selective
- Reviewing the Enforcement Readiness Period: Entities
- Viewing Learning Suggestions and Staging Status
- Violations Without Learning Suggestions
- Defining the Learning Score
- Defining Trusted and Untrusted IP Addresses
- How to Learn: Compact
Chapter 9: Cookies and Other Headers
- ASM Cookies: What to Enforce
- Defining Allowed and Enforced Cookies
- Configuring Security Processing on HTTP headers
Chapter 10: Reporting and Logging
- Overview: Big Picture Data
- Reporting: Build Your Own View
- Reporting: Chart based on filters
- Brute Force and Web Scraping Statistics
- Viewing ASM Resource Reports
- PCI Compliance: PCI-DSS 3.0
- The Attack Expert System
- Viewing Traffic Learning Graphs
- Local Logging Facilities and Destinations
- How to Enable Local Logging of Security Events
- Viewing Logs in the Configuration Utility
- Exporting Requests
- Logging Profiles: Build What You Need
- Configuring Response Logging
Chapter 11: Lab Project 1
Chapter 12: Advanced Parameter Handling
- Defining Parameter Types
- Defining Static Parameters
- Defining Dynamic Parameters
- Defining Dynamic Parameter Extraction Properties
- Defining Parameter Levels
- Other Parameter Considerations
Chapter 13: Policy Diff and Administration
- Comparing Security Policies with Policy Diff
- Merging Security Policies
- Editing and Exporting Security Policies
- Restoring with Policy History
- Examples of ASM Deployment Types
- ConfigSync and ASM Security Data
- ASMQKVIEW: Provide to F5 Support for Troubleshooting
Chapter 14: Using Application-Ready Templates
- Application Templates: Pre-Configured Baseline Security
Chapter 15: Automatic Policy Building
- Overview of Automatic Policy Building
- Defining Templates Which Automate Learning
- Defining Policy Loosening
- Defining Policy Tightening
- Defining Learning Speed: Traffic Sampling
- Defining Track Site Changes
Chapter 16: Web Application Vulnerability Scanner Integration
- Integrating Scanner Output Into ASM
- Will Scan be Used for a New or Existing Policy?
- Importing Vulnerabilities
- Resolving Vulnerabilities
- Using the Generic XML Scanner XSD file
Chapter 17: Layered Policies
- Defining a Parent Policy
- Defining Inheritance
- Parent Policy Deployment Use Cases
Chapter 18: Login Enforcement, Brute Force Mitigation, and Session Tracking
- Defining Login Pages
- Configuring Automatic Detection of Login Pages
- Defining Session Tracking
- What Are Brute Force Attacks?
- Brute Force Protection Configuration
- Defining Source-Based Protection
- Source-Based Brute Force Mitigations
- Defining Session Tracking
- Configuring Actions Upon Violation Detection
- Session Hijacking Mitigation Using Device ID
Chapter 19: Web Scraping Mitigation and Geolocation Enforcement
- Defining Web Scraping
- Mitigating Web Scraping
- Defining Geolocation Enforcement
- Configuring IP Address Exceptions
Chapter 20: Layer 7 DoS Mitigation and Advanced Bot Protection
- Defining Denial of Service Attacks
- The General Flow of DoS Protection
- Defining the DoS Profile
- Overview of TPS-based DoS Protection
- Applying TPS mitigations
- Create a DoS Logging Profile
- Defining DoS Profile General Settings
- Defining Bot Signatures
- Defining Proactive Bot Defense
- Defining Behavioral and Stress-Based Detection
- Defining Behavioral DoS Mitigation
Chapter 21: ASM and iRules
- Common Uses for iRules
- Identifying iRule Components
- Triggering iRules with Events
- Defining ASM iRule Events
- Defining ASM iRule Commands
- Using ASM iRule Event Modes
Chapter 22: Using Content Profiles
- Defining Asynchronous JavaScript and XML
- Defining JavaScript Object Notation (JSON)
- Defining Content Profiles
- The Order of Operations for URL Classification
Chapter 23: Review and Final Labs
- Final Lab Project (Option 1) – Production Scenario
- Final Lab Project (Option 2) – JSON Parsing with the Default JSON Profile
- Final Lab Project (Option 3) – Managing Traffic with Layer 7 Local Traffic Policies
Audience
This course is intended for network administrators, operators, and engineers responsible for managing the normal day-to-day operation and administration of a BIG-IP application delivery network. This course presents the prerequisite knowledge for many other of F5’s BIG-IP instructor-led training courses.