导语:F5LTM做负载均衡时,有多种机制实现会话保持,其中常用的是通过修改cookie来实现。具体说来,F5在获取到客户端第一次请求时,会使用set cookie头给客户端埋入一个特定的cookie。

F5LTM做负载均衡时,有多种机制实现会话保持,其中常用的是通过修改cookie来实现。具体说来,F5在获取到客户端第一次请求时,会使用set cookie头给客户端埋入一个特定的cookie。

这些cookie在响应中带来了编码值,并且在这方面有官方文档:https://support.f5.com/csp/article/K6917?sr = 19342610。

clipboard.png

比如:Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000。后续再接到客户端请求时,F5会查看cookie里面的字段,判断应该交给后续哪台服务器。

演示请求:

GET / app HTTP / 1.1

主持人:f4c3300k.com

clipboard.png

回应:

clipboard2.png

获取真实ip

看到上面的图,你应该就能明白负载均衡的流程。既然做负载均衡,肯定是要交给后端的服务器,交给的信息顾名思义就是IP address,所以Set-Cookie中存在IP address,但真实IP address并不是以明文的形式存在cookie中,而是做了两次编码,然后再插入cookie。

只要解开487098378.24095.0000的内容,就拿到了server的真实IP address。

解码思路:首先,把第一小节的十进制数取出来,也就是487098378;第二,将其转为十六进制数1d08880a;第三,从后至前,以此取四位数出来,也就是0a;88;08;1d;第四,依次把他们转为十进制数:10;136;8;29;最后,得到真实内网IP:10.136.8.29。

影响列表

· 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

请求

clipboard.png

响应1

clipboard2.png

响应2

clipboard3.png

响应3

clipboard4.png

自动化

[email protected]:〜$ git clone https://github.com/ezelf/f5_cookieLeaks.git
[email protected]:~/$ python quickCook_v0.2.py --help
usage: quickCook.py [-h] [-v] --host HOST [--ssl] --cookie-name COOK
                   [--port PORT] [--req REQ] [--uri URI]
[ F5 BIG-IP ] PERSISTENCE COOKIE INFORMATION LEAKAGE
optional arguments:
 -h, --help          show this help message and exit
 -v, --version       show program's version number and exit
 --host HOST         Host
 --ssl               use ssl
 --cookie-name COOK  Cookie Name
 --port PORT         Port
 --req REQ           Total Request
 --uri URI           URI path
[+] Demo: quickCook.py --host 192.168.1.1 --cookie-name "BIGipServerPool_X" --req 50

poc 1:

clipboard.png

poc 2:

clipboard2.png

poc 3:

clipboard3.png

poc 4

clipboard4.png

源链接

Hacking more

...