Bigipsecurity
This document describes common misconfigurations of F5 Networks BigIP systems.
Install / Use
/learn @dnkolegov/BigipsecurityREADME
F5 BIG-IP Security Cheatsheet
This document describes common misconfigurations of F5 Networks BIG-IP systems and their elimination. Some settings can be different for different BIG-IP versions.
Slides
Table of Contents
- Summary
- Common Misconfigurations
- Getting an A-grade on Qualys SSL Labs
- Securing Administrative Access
- Vulnerability Search
- ASM Misconfigurations
- iRules Injection
Summary
The BIG-IP family of products offers the application intelligence network managers need to ensure applications are fast, secure and available. All BIG-IP products share a common underlying architecture, F5's Traffic Management Operating System (TMOS), which provides unified intelligence, flexibility and programmability. Together, BIG-IP's powerful platforms, advanced modules, and centralized management system make up the most comprehensive set of application delivery tools in the industry.
BIG-IP devices work on a modular system, which enables to add new functions as necessary to quickly adapt to changing application and business needs. The following modules are currently available on BIG-IP systems:
- Application Acceleration Manager (AAM)
- Advanced Firewall Manager (AFM)
- Access Policy Manager (APM)
- Application Security Manger (ASM)
- Global Traffic Manager (GTM)
- Link Controller (LC)
- Local Traffic Manager (LTM)
- Protocol Security Module (PSM)
Common Misconfigurations
Persistence Cookie Information Leakage
Description
An attacker can get some sensitive information about internal network stored in BIG-IP LTM persistence cookie.
To implement persistence sessions BIG-IP system inserts a cookie into the HTTP response,
which well-behaved clients include in subsequent HTTP requests for the host name until the cookie expires.
The cookie name, by default, contains BIGipServer string and configured name of virtual servers pool. The cookie is set to expire based on the time-out configured in the persistence profile.
The cookie value contains the encoded IP address and port of the destination server in one of the following format:
- IPv4 pool members:
BIGipServer<pool name> = <The encoded server IP>.<The encoded server port>.0000 - IPv6 pool members:
BIGipServer<pool name> = vi<The full hexadecimal IPv6 address>.<The port number calculated in the same way as for IPv4 pool members> - IPv4 pool members in non-default route domains:
BIGipServer<pool name> = rd<The route domain ID>o00000000000000000000ffff<The hexadecimal representation of the IP address of the pool member>o<The port number of the pool member> - IPv6 pool members in non-default route domains:
BIGipServer<pool name> = rd<The route domain ID>o<The full hexadecimal IPv6 address>o<The port number of the pool member>
Examples:
BIGipServer~DMZ_V101~web_443=1677787402.36895.0000BIGipServer~CORP_DC1=vi20010112000000000000000000000030.20480BIGipServer~EE_ORACLE=rd5o00000000000000000000ffffc0000201o80BIGipServer~ES~test.example.com=rd3o20010112000000000000000000000030o80
After decoding of the BIG-IP persistence cookie value an attacker can get an internal IP address, port number, and routed domain for backend servers.
In some cases an attacker can also get sensitive informaion recorded in <pool_name> suffix of the cookie name.
For example, if an administrator give meaningful name to server pool (e.g., Sharepoint, 10.1.1.0, AD_prod) an attacker will get some additional information about network. Besides, an attacker detects that BIG-IP system is used in network infrustructure.
Testing
- Run intercepting proxy or traffic intercepting browser plug-in, trap all responses where a cookie is set by the web application.
- If possible, log in to web application and inspect cookies.
- Find a cookie with a name beginning with BIGipServer string or with a value that has one of the formats above (e.g.,
1677787402.36895.0000for IPv4 pool members scheme). - Try to decode this value using available tools (see below).
- Inspect suffix of BIGipServer cookie name and verify that it does not contain any sensitive information about network infrustructure.
The following example shows a GET request to BIG-IP and its response:
GET /app HTTP/1.1
Host: example.com
HTTP/1.1 200 OK
Set-Cookie: BIGipServerOldOWASSL=110536896.20480.0000; path=/
Here we can see that backend's pool has the meaningful name OldOWASSL and includes backend server 192.168.150.6:80
Tools
Remediation
Configuring secure cookie persistence using the Configuration utility
- Log in to the Configuration utility.
- Go to
Local Traffic > Profiles > Persistence. - Create a new secure persistence profile with persistence type equals to
Cookie. - Check the custom box for
Cookie Nameand enter a cookie name that does not conflict with any existing cookie names. - Check the custom box for
Cookie Encryption Use Policyand choose therequiredoption. Enter a passphrase in theEncryption Passphrasefield. - Click
Finished. - Assign the created persistence profile to the virtual server.
Configuring secure cookie persistence using TMSH
create ltm persistense cookie <profile_name>
modify ltm persistense cookie <profile_name> cookie-name <secure_cookie_name>
modify ltm persistense cookie <profile_name> cookie-encryption required
modify ltm persistense cookie <profile_name> cookie-encryption-passphrase <secure_passphrase>
modify ltm virtual <virtual_server> persist replace-all-with { <profile_name> }
save /sys config
HTTP Server Header Information Leakage
Description
An attacker can get information that a web application is protected by BIG-IP system via HTTP Server header.
BIG-IP system uses different HTTP Profiles for managing HTTP traffic. In particular, BIG-IP system uses HTTP Profile that specifies the string used as the Server name in traffic generated by BIG-IP LTM.
The default value is equal to BigIP or BIG-IP and depends on BIG-IP system version.
An attacker can detect that BIG-IP system is used in network and then know a role, type, and version of the BIG-IP system.
Testing
- Run intercepting proxy or traffic intercepting browser plug-in, trap all responses from a web application.
- If possible, log in to web application and inspect HTTP responses.
- Send requests using HTTP and HTTPS.
- If HTTP Server header contains
BIG-IPorBigIPvalue then BIG-IP is used.
The following example shows a GET request to BIG-IP and a response containing Server header inserted by BIG-IP LTM.
GET / HTTP/1.1
Host: example.com
HTTP/1.0 302 Found
Server: BigIP
Connection: Close
Content-Length: 0
Location: /my.policy
Set-Cookie: LastMRH_Session=05da1fc5;path=/;secure
Set-Cookie: MRHSession=03e47713f1a8ef1aaa71cd9d05da1fc5;path=/;secure
Set-Cookie: MRHSHint=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/
Tools
Remediation
It is recommended to remove Server header from HTTP responses.
Removing Server header using the Configuration Utility
- Log in to the Configuration utility.
- Go to
Local Traffic > Profiles > Services > HTTP. - Create new secure HTTP profile.
- Enter empty string in
Server Agent Namefield. - Click
Finished. - Assign created HTTP profile to the virtual server.
Removing Server header using TMSH
create ltm profile http <profile_name>
modify ltm profile http <profile_name> server-agent-name none
save /sys config
Access to Management Interface from Internet
Description
If an attacker can access to BIG-IP management interface from Internet this can lead to different attacks on BIG-IP administrative tools, unauthorized access or mass enumeration of BIG-IP systems using search engines. The BIG-IP system uses the following two network connection entry points:
- TMM switch interfaces
- Management int
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
Security Score
Audited on Feb 9, 2026
