通过F5 BIG-IP LTM的会话Cookie获取Facebook服务器内网IP
字数 1406 2025-08-18 11:37:12

F5 BIG-IP LTM会话Cookie解码技术详解

1. 技术背景

F5 BIG-IP LTM(本地流量管理器)是一种网络负载均衡器,能够进行4-7层负载均衡,具有负载均衡、应用交换、会话交换、包过滤等多种高级网络功能。在负载均衡过程中,F5使用持久性Cookie来实现会话保持功能。

2. Cookie机制分析

2.1 Cookie格式

F5 BIG-IP LTM生成的会话Cookie格式为:

BIGipServer<pool_name>=<encoded_value>

其中:

  • <pool_name>:负载均衡池名称
  • <encoded_value>:经过编码的目标服务器IP和端口信息

2.2 编码规则

IP地址编码

  1. 将IP地址的每个八位字节转换为等效的1字节十六进制值
  2. 将十六进制字节的顺序反向
  3. 将反向后的4字节十六进制值连接起来
  4. 将结果转换为十进制等效值

示例
IP地址:10.1.1.100

  1. 转换为十六进制:0x0A.0x01.0x01.0x64
  2. 反向字节顺序:0x64.0x01.0x01.0x0A
  3. 连接:0x6401010A
  4. 转换为十进制:1677787402

数学公式表示:

encoded_ip = a + b*256 + c*(256^2) + d*(256^3)

其中a.b.c.d为原始IP地址

端口编码

  1. 把十进制的端口值转换为等效的两字节十六进制值
  2. 反向两字节的十六进制顺序
  3. 将结果转换为十进制等效值

示例
端口:8080

  1. 转换为十六进制:0x1F90
  2. 反向字节顺序:0x901F
  3. 转换为十进制:36895

3. 漏洞利用方法

3.1 信息收集

  1. 向目标服务器发起HTTP请求
  2. 检查响应头中的Set-Cookie字段
  3. 查找包含"BIGipServer"关键字的Cookie

3.2 识别特征

除了标准的"BIGipServer"字段外,还可以查找以下常见负载均衡池名称:

  • Desa
  • pre
  • prod
  • Exchange_2010_External

3.3 解码过程

  1. 从Cookie中提取编码值
  2. 将十进制值转换为十六进制
  3. 按规则分割和反向字节顺序
  4. 还原原始IP和端口

4. 实际案例分析(以Facebook为例)

4.1 受影响域名

研究人员发现以下Facebook相关网站存在此问题:

maileast.thefacebook.com
autodiscover.instagram.com
mail-ext.thefacebook.com
mail.hack.tfbnw.net
mail.thefacebook.com
autodiscover.thefacebook.com
autodiscover.fb.com
autodiscover.internet.org
autodiscover.oculus.com
autodiscover.whatsapp.com
esbmbltest.thefacebook.com

4.2 攻击流程

  1. 向目标域名发送HTTP请求
  2. 接收包含F5 Cookie的响应
  3. 解码Cookie获取内部服务器IP和端口
  4. 重复请求以收集更多内部架构信息

5. 自动化工具

5.1 f5_cookieLeaks工具

GitHub项目地址:https://github.com/ezelf/f5_cookieLeaks

安装方法

git clone https://github.com/ezelf/f5_cookieLeaks.git
cd f5_cookieLeaks
pip install -r requirements.txt

功能特点

  • 自动化发送请求
  • 自动解码Cookie中的IP和端口信息
  • 批量收集内部服务器信息

6. 防御建议

  1. 禁用Cookie持久性:在不必要的情况下禁用F5的Cookie持久性功能
  2. 使用加密Cookie:配置F5使用加密的持久性Cookie
  3. 限制Cookie范围:确保Cookie只在必要域和路径中有效
  4. 监控异常请求:对频繁请求Cookie的客户端进行监控和限制
  5. 更新配置:使用最新版本的F5软件并应用安全配置

7. 技术总结

F5 BIG-IP LTM的会话Cookie机制虽然提供了方便的会话保持功能,但不当配置可能导致内部网络信息泄露。通过解码这些Cookie,攻击者可以获取:

  • 内部服务器IP地址
  • 服务端口信息
  • 内部网络架构信息

这种信息泄露可能为后续攻击提供重要线索,因此管理员应当重视此类配置安全问题。

F5 BIG-IP LTM会话Cookie解码技术详解 1. 技术背景 F5 BIG-IP LTM(本地流量管理器)是一种网络负载均衡器,能够进行4-7层负载均衡,具有负载均衡、应用交换、会话交换、包过滤等多种高级网络功能。在负载均衡过程中,F5使用持久性Cookie来实现会话保持功能。 2. Cookie机制分析 2.1 Cookie格式 F5 BIG-IP LTM生成的会话Cookie格式为: 其中: <pool_name> :负载均衡池名称 <encoded_value> :经过编码的目标服务器IP和端口信息 2.2 编码规则 IP地址编码 将IP地址的每个八位字节转换为等效的1字节十六进制值 将十六进制字节的顺序反向 将反向后的4字节十六进制值连接起来 将结果转换为十进制等效值 示例 : IP地址:10.1.1.100 转换为十六进制:0x0A.0x01.0x01.0x64 反向字节顺序:0x64.0x01.0x01.0x0A 连接:0x6401010A 转换为十进制:1677787402 数学公式表示: 其中a.b.c.d为原始IP地址 端口编码 把十进制的端口值转换为等效的两字节十六进制值 反向两字节的十六进制顺序 将结果转换为十进制等效值 示例 : 端口:8080 转换为十六进制:0x1F90 反向字节顺序:0x901F 转换为十进制:36895 3. 漏洞利用方法 3.1 信息收集 向目标服务器发起HTTP请求 检查响应头中的Set-Cookie字段 查找包含"BIGipServer"关键字的Cookie 3.2 识别特征 除了标准的"BIGipServer"字段外,还可以查找以下常见负载均衡池名称: Desa pre prod Exchange_ 2010_ External 3.3 解码过程 从Cookie中提取编码值 将十进制值转换为十六进制 按规则分割和反向字节顺序 还原原始IP和端口 4. 实际案例分析(以Facebook为例) 4.1 受影响域名 研究人员发现以下Facebook相关网站存在此问题: 4.2 攻击流程 向目标域名发送HTTP请求 接收包含F5 Cookie的响应 解码Cookie获取内部服务器IP和端口 重复请求以收集更多内部架构信息 5. 自动化工具 5.1 f5_ cookieLeaks工具 GitHub项目地址:https://github.com/ezelf/f5_ cookieLeaks 安装方法 功能特点 自动化发送请求 自动解码Cookie中的IP和端口信息 批量收集内部服务器信息 6. 防御建议 禁用Cookie持久性 :在不必要的情况下禁用F5的Cookie持久性功能 使用加密Cookie :配置F5使用加密的持久性Cookie 限制Cookie范围 :确保Cookie只在必要域和路径中有效 监控异常请求 :对频繁请求Cookie的客户端进行监控和限制 更新配置 :使用最新版本的F5软件并应用安全配置 7. 技术总结 F5 BIG-IP LTM的会话Cookie机制虽然提供了方便的会话保持功能,但不当配置可能导致内部网络信息泄露。通过解码这些Cookie,攻击者可以获取: 内部服务器IP地址 服务端口信息 内部网络架构信息 这种信息泄露可能为后续攻击提供重要线索,因此管理员应当重视此类配置安全问题。