F5 BIG-IP Cookie 信息泄露利用工具

admin 2021年2月12日12:00:50评论1,220 views字数 1211阅读4分2秒阅读模式

文章源自【字节脉搏社区】-字节脉搏实验室

作者-K.Fire

扫描下方二维码进入社区

F5 BIG-IP LTM 官方名称为本地流量管理器,也叫网络负载均衡器,是F5公司的新一代网络管理产品。BIG-IP LTM 可做4-7层负载均衡,具有负载均衡、应用交换、会话交换、包过滤等多种高级网络功能。

F5 BIG-IP Cookie 信息泄露利用工具

形成原理

客户端向目标服务器发起请求时,会用到HTTP CookieInsert或HTTP Cookie Rewrite方法,这些Cookie方法会让客户端与服务器端保持有效,样式为BIGipServer<pool_name>,其中包含了客户端请求的,经过编码处理的目标服务器IP和端口信息。

F5 BIG-IP Cookie 信息泄露利用工具

Cookie编码规则

IP编码

1.将IP地址的每个八位字节值转换为等效的一字节十六进制值

2.将十六进制字节的顺序反向,然后连接成一个四字节的十六进制值

3.将生成的四字节十六进制值转换为其十进制等效值

F5 BIG-IP Cookie 信息泄露利用工具

Port编码

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

F5 BIG-IP Cookie 信息泄露利用工具

Cookie解码思路

例子:BIGipServerPOOL_web=182354092.20480.0000

F5 BIG-IP Cookie 信息泄露利用工具

IP解码

1.把第一小节的十进制数取出来,得到 182354092
2.将其转为十六进制数 821414AC
3.从后至前,每两位取一组出来,得到 AC 14 14 82
4.依次把他们转为十进制数:172 20 20 130 最后,得到真实内网IP:172.20.20.130

F5 BIG-IP Cookie 信息泄露利用工具

Port解码

1.把第二小节的十进制数取出来,得到 20480
2.将其转为十六进制数 5000
3.从后至前,每两位取一组出来,得到 00 50
4.依次把他们转为十进制数:80 最后,得到真实内网Port:80

F5 BIG-IP Cookie 信息泄露利用工具

自动化利用工具

F5 BIG-IP Cookie 信息泄露利用工具

F5 BIG-IP Cookie 信息泄露利用工具

#!/usr/bin/env python
# example string: 110536896.20480.0000
import struct
import sys
if len(sys.argv) != 2:
    print "Usage: %s encoded_string" % sys.argv[0]
    exit(1)
encoded_string = sys.argv[1]
print "\n[*] String to decode: %s\n" % encoded_string
(host, port, end) = encoded_string.split('.')
(a, b, c, d) = [ord(i) for i in struct.pack("<I", int(host))]
(e) = [ord(e) for e in struct.pack("<H", int(port))]
port = "0x%02X%02X" % (e[0],e[1])
print a,b,c,d,e

 

下载地址:https://file.kfi.re/s/gLUL 

密码:z70opo

F5 BIG-IP Cookie 信息泄露利用工具

本文始发于微信公众号(字节脉搏实验室):F5 BIG-IP Cookie 信息泄露利用工具

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年2月12日12:00:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   F5 BIG-IP Cookie 信息泄露利用工具http://cn-sec.com/archives/265560.html

发表评论

匿名网友 填写信息