gitlab漏洞系列-由外部授权所导致的blind SSRF

admin 2022年5月28日22:56:39评论116 views字数 731阅读2分26秒阅读模式


  • 背景

  • 复现步骤

  • 问题所在


gitlab漏洞系列-由外部授权所导致的blind SSRF 

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

背景

xanbanx于2019年提交了这个漏洞: 

主要是在外部授权服务器配置中发现了一个Blind SSRF漏洞:攻击者可以冒充GitLab服务器向本地网络或任何其他网络发出POST请求。

复现步骤

1.设置本地监听的端口,例如: 端口10000: nc -dklp 10000 -vv

2.作为一个administrator,跳转至http://example.gitlab.com/admin/application_settings#js-external-auth-settings

3.启用并输入服务URL http://localhost:10000并保存设置。不要忘记填写默认的分类标签,这个字段是必需的。

4.再次保存设置以触发调用授权服务器、监视POST请求和之前设置的监听:

  • 在用户界面中,你会看到错误:外部授权服务默认标签不可用:因为侦听器没有响应而超时
  • http://localhost:22上你会得到错误消息:外部授权服务默认标签不可用:畸形头(Excon:: error::ResponseParse)
  • 外部授权服务默认标签不可用:Connection refused - connect(2) for 127.0.0.1:1000 (Errno::ECONNREFUSED)

问题所在

服务URL不应该访问本地地址,请求也不应该执行对本地网络的请求。


原文始发于微信公众号(迪哥讲事):gitlab漏洞系列-由外部授权所导致的blind SSRF

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月28日22:56:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   gitlab漏洞系列-由外部授权所导致的blind SSRFhttp://cn-sec.com/archives/1060527.html

发表评论

匿名网友 填写信息