F5 BIGIP ASM Presentation
F5 BIGIP ASM Presentation
F5 BIGIP ASM Presentation
COURSE OVERVIEW:
In this course, you will learn how to deploy, tune, and
operate BIG-IP Application Security Manager (ASM) to
protect your web applications from HTTP-based attacks.
The course includes lecture, hands-on labs, and discussion
about different ASM components 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.
Self IP : 192.168.0.200/24
1.2 External
Management IP
172.16.1.1/24 F5 BIP-IP [LTM & ASM]
1.1 Internal
Self IP : 10.128.1.1/24
MY SQL
PHP
Linux/Unix PHPauction2.1
Apache/Tomcat IP: 10.128.1.150/24
Agenda :
• Packet Based Design Vs Full Proxy Architecture
• What’s Inside a BIG IP SYSTEM
• BIG-IP Platforms
• What’s outside a Hardware BIG IP SYSTEM
• Initial BIG-IP setup
• Licensing, Provisioning and Network Configuration
Nettech | A passion to see you at the top www.nettechcloud.com
Packet based Vs. Full Proxy Architecture
Virtual Edition:
Different situations call for the BIG-IP Virtual Edition and the
physical BIG-IP hardware. F5 BIG-IP virtual editions (VEs) are
virtual application delivery controllers (vADCs) that can be
deployed on all leading hypervisors and cloud platforms running
on commodity servers. It also provides flexible and quick
deployment options and failure isolation.
Hardware:
Physical hardware provides a number of important
benefits and is necessary in many situations. F5 hardware
is purposefully built to provide high performance for
application delivery.
BIG-IP physical device can run all BIG-IP modules and
perform hardware SSL offload and compression
MGMT: Management
interface with the default
IP address 192.168.1.245
CONSOLE: Console port is
used to connect serial
console cable for CLI access
FAILOVER: Failover serial
port is used to connect
redundant F5-BIG IP
system
USB: USB port is used to connect external
DVD or flash drive for installing
upgrades and system recovery
LOGIN [CLI]
root/default
Connect via default IP
Network address
Serial console cable https://192.168.1.245
cable
- LOGIN
Mgmt port
admin/admin
VLAN Tag IDs can be manually defined for each VLAN , although F5
recommendation is to let the system retain the default Value, auto.
Agenda :
• Identifying BIG-IP Traffic Processing Objects
• Overview of Network Packet Flow
• Understanding Profiles
• Overview of Local Traffic Policies
• Visualizing the HTTP Request Flow
Node:
• A node is a Logical configuration object on BIG-IP that
identifies the IP address of a physical device on the network.
• A single node may logically represent multiple members
• Nodes are typically not defined directly. Rather as a pool
member is defined , its associated node object is automatically
created, if necessary.
• A node definition on the BIG-IP system consists of an IP
address only.
Pool Member:
• Pool members are conceptually the actual application services
used to process client traffic, and are defined as configuration
objects on the BIG-IP system.
• A pool member includes both an IP address and service port
for example 172.16.1.1:80
• The same IP:Port combination can be defined in multiple load
balancing pools, but each is treated as a separate and distinct
pool member within the BIG-IP system.
Virtual Servers:
• As a default deny device, the BIG-IP system will not process
traffic unless it is told to specifically listen for traffic.
A virtual server is one such listener
• Client traffic is directed to the virtual server on the BIG-IP
system; BIG-IP system then directs traffic to the pool member
• Virtual servers also include many other properties that give it
to the intelligence it needs to process the traffic that it
receives.
Nettech | A passion to see you at the top www.nettechcloud.com
Understanding Network Packet Flow
Virtual Server
HTTP Profile
Security Policy A
Security Policy B
Security Policy C
Yes
Default No Matches Yes
ASM Policy
Pool? Layer 7
No Policy ?
Request ASM
Dropped enabled ?
Yes
No
Valid
Violation Request ? Default Pool
No Yes
Agenda :
• 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
1. Web Server
2. Application server
3. Database Server
Agenda :
• Injection attacks
• Parameter Tampering
• Hidden Field Manipulation
• Forceful Browsing
• Cross site scripting
Injection attacks :
OWASP defines injection attacks as untrusted data sent to an
interpreter (such as SQL,LDAP) as part of a command or query
A very common type of injection is SQL injection
Through an SQL injection, an attacker can input specifically
crafted SQL Commands with the intent of bypassing the login
process. This can only be possible if the inputs are not
sanitized, or properly prevented from reaching the back-end
system, and sent directly with SQL query to database.
ASM mitigation
ASM protects the web application from injection attacks
by checking for allowed characters in parameter name
and value inputs, checking for malicious patterns in user
input parameters, and verifying query string and POST
data request lengths.
Parameter tampering
Parameter tampering can occur when a web application
exposes a reference to an internal object to the user.
Examples of internal objects are URLs, parameters, files,
directories, hidden fields.
ASM Mitigation
ASM checks for allowed characters in the parameter name and
value, checks for malicious patterns in user input parameters,
and verify query string and data request lengths.
ASM Mitigation
ASM can protect against Hidden field Manipulation by
enforcing dynamic parameters (ensuring that the values
set by the server will not be changed on the client side)
ASM also provides a whitelist for allowed URLs for a
specific applications.
Forceful browsing
Forceful browsing refers to directly accessing a web page that
should not be available to unauthorized users, or a page to
which a link exists from an unauthorized hyperlink. In other
words, users can jump directly to parts of a web application
which they should not be able to access.
Web applications that are not properly configured allow
malicious users to directly access URLs that could contain
sensitive information
ASM Mitigation
ASM can enforce allowed file types and URLs, and accurate
parameter values and login pages.
Agenda :
• Positive & Negative Security Models
• Deployment workflow
• Security Checks offered by Rapid Deployment
• Response Checks using Data Guard
Client
Server
Client
Server
Allowed HTTP
response Codes
Responses
Agenda :
• Defining False Positives
• How violations are categorized
• Violation Rating
• Enforcement settings & staging
Rating Definition
0 Not rated = No violation
1 Most Likely a false positive
2 Looks like a false positive, requires examination
3 Needs further examination
4 Looks like a threat but requires examination
5 Request is most likely a threat
Enforcement Mode:
1. Transparent – ASM will log the request and send it to
the web application. Additionally , ASM will generate a
security violation that the ASM administrator can review
2. Blocking – The request can be blocked , ASM will still log
the request and a security violation will be generated.
Agenda :
• Defining Attack signatures
• User Defined attack signatures
• Defining attack signature sets
• Attack Signatures and Staging
User defined attack signature are those that the user creates
and adds to the attack signature pool
Whenever creating signatures, several rules apply:
- They must adhere to the rule syntax defined by F5
- They are never updated by F5 Networks
- They are placed in staging mode whenever a user updates
any of the signature properties
Agenda :
• Security Policy Components
• Learning File Types, URLs, Parameters
• Choosing the Learning Scheme
Examples of file types are .php, .asp, .gif and .txt. They are the
extensions for many objects that make up a web application
Each file type has configurable values which specify the
legitimate behavior and properties of each file type
By creating a positive security definition for file types , you can
deny any requests for a resource with an undefined file type
Explicit – file types that are not wild card expressions such as .gif,.php
Wildcard – file type is a wildcard expression , indicated by a *
no_ext – No extension , no file types or the backslash (“/”)
Agenda :
• ASM Cookies: What to Enforce
• Enforce integrity of domain cookies
• Defining Allowed and Enforced Cookies
The Enforced attribute is used for cookies that ASM signs which
should not be modified on the client side.
If a Cookie with the attribute “Enforced Cookie” is modified on
the client side, ASM will trigger the violation “Modified domain
Cookie”
If ASM receives a cookie which wasn’t set with the Allowed or
Enforced attribute, it is an unknown cookie and therefore an
unwanted cookie, and will trigger a Modified Domain cookie
violation.
Agenda :
• Defining User Roles
• Administrative partitions
• Comparing Security policies
• Editing and Exporting Security Policies
• ASM Deployment Types
1. ASM standalone:
-is useful when load balancing is not essential
2. Multiple ASM devices behind a BIGIP-LTM
-Deploying multiple dedicated ASM devices behind LTM
delivers a higher performance level, allows to scale on demand
3. ASM In-Line with BIG-IP LTM
4. ASM module on BIG-IP LTM
Agenda :
• Reporting
• Logging and Viewing Logs
• Logging profiles
-Default
- Custom
Agenda :
• Defining parameters types
• User-Input Parameters
• Defining static parameters
• Defining Dynamic Parameters
• Dynamic Parameter Extraction
The extraction defines the URL, or file type where ASM can
discover the parameter’s value in a server response. Once
ASM discovers the parameter’s value as set by the application.
ASM inserts an encoded copy into an ASM cookies which is
added to the response. If a user changes the parameter value
in a subsequent request ,ASM will generate an Illegal Dynamic
Parameter value violation, depending on the Learn, Alarm and
Block settings .
Agenda :
• Application Ready Templates
• Commonly used Templates
Agenda :
• Overview of Automatic Policy Building
• Choosing policy types
-Rapid, Fundamental and Comprehensive
• Trusted and Untrusted IP Addresses
• Learning speed
• Learning score
Nettech | A passion to see you at the top www.nettechcloud.com
Overview of Automatic Policy Building
Agenda :
• Overview
• Integrating ASM with Vulnerability Scanners
• Resolving Vulnerabilities
ASM will present you with options for reviewing and resolving
vulnerabilities that the assessment tool has detected.
Vulnerabilities are categorized into the following types:
Agenda :
• Overview of Layered Security Policies
• Parent and child security policy terminology
• Policy Section elements and settings
• Inheritance settings
Agenda :
• Defining a Login URL
• Defining Session Tracking
• Session Hijacking Mitigation
• Fingerprinting Overview
• Partial List of what ASM can fingerprint
Agenda :
• Defining Anomalies
• Mitigating Brute Force Attacks via Login Page
• Defining Session-Based Brute Force Protection
• Defining the Prevention Policy
• Mitigating Web Scraping
• Defining Geolocation and IP address Exceptions
Nettech | A passion to see you at the top www.nettechcloud.com
Defining Anomalies
Agenda :
• Defining Denial of Service Attacks
• DoS profile
• Defining Mitigation Methods
• Using Bot Signatures