三侠五义,挖洞经历 | 看我怎么绕过Slack后端的SSRF防护机制,仪式感

石国鹏讲朝鲜战争全集

本文共享了一个存在于Slack接口api.slack.com中的缺点,通过运用Slack内置的斜线指令(Slash Commands)功用,能够绕过Slack后端的SSRF防护办法,在S泰安海岱花园酒店lack接口上构成两个效劳端恳求假造缝隙(SSRF)。

Slack是一个协同作业运用渠道和谈天群组,它能将作业同伴、交流信息和运用东西进行聚合以便蓓茵儿高效完结作业。从国际百强大公司到小型企业,全球稀有百万人在运用Slack进行内部团队交流和谐,协同作业推进事务。

斜线指令/commands,为Slack中某些特定指令的快捷方法,在音讯字段中输入斜线加三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感指令,点击发送,即可完结一项指令操作。如/who为列出当时群组成员,/archive郭乐乐直播视频为对当时群组存档,/collapse为对当时群组进行视频图片的折叠显现。默许状况下,作业群组内一切成员都可运用斜线指令,群组办理员也可对组内成员两性生活进行斜线指令的权限设定乔宇白静。详细用法检查。

早前带着空间的生果女王在森谷美食公园Hackerone上,看到了Nicolas Grgoir三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感e 提交的一个“”的缝隙,陈述中Nicolas Grgoire有以下剖析:

色片

特别状况下,一些Slack功用组合,如“Integrations / Phabricator”,以及鲛人直播歌唱的日子“Integration / Slash Commands”,答应用户提交可由后端效劳器处理的URL链接。在这种功用场景中,Slack本身有一个黑名单来限制对如loopback, 10.0.0.0/8, 192.168.0.0/24等特别内部资源的拜访,可是,能够运用“[::]”来作为某个Slack内部主机,对Slack后端效劳器主张恳求。这种恳求方法仅对一些支撑IPv6且绑定效劳端口的Slack效劳器有用。

在缝隙修正中,Nicolas Grgoire给出了在外部署理(Outgoing Proxy)和斜线指令中恳求中禁用IPv6的主张。Slack也依此做了修正。

可是,这种修正过的SSRF防护机制,仍是能够被绕过的。详细测验过程如下:

1、登录 api.slack.com,在自己的slack效劳中填写你预设的斜线指令(Slash Commands)装备,其间Request URL填写的恳求网站 htt三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感p://206.189.204.187/,为我自己操控的网站:

2、在这个我操控的206.189.204.7733破解游戏盒187网站效劳器中,设置一个index.php拜访页面,内容为包括一个‘Location’ 头的重写向,跳转到一个新的地址http://[::]:22/。依据Nicolas Grgoire的甜罗素缝隙,这个地址http://[::]:22/为Slack支撑IPv6的内部主机。index.php:

3、通过api.slack.com,拜访自己的slack效劳 xxxx.slack.com,参加相应的斜线指令,该过程中通过恳求http://206剑气焚天.189.204.187/的操作,直接执行了对Slack内部效劳器22端口的恳求-h谢佩诗ttp://[::]:22/,成果如下:

4、在http://206.189.204.187/的index.php拜访页面参加http://[::]:25/后,因为Slack内部效劳器25端口是封闭的,所以成果如下:

也便是,假如Slack内部效劳器22端口是敞开的,则会有以下呼应:

Protoco三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感l mismatch.

SMTP on TCP/25

假如Slack内部效劳器22端口是封闭的,则会有以下呼应:

220 squid3.t唐溢ty个人资料i三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感nyspeck.com ESMTP Postfix

221 2.7.0 Errox163or: I can break rules, too. Goodbye.

攻击者运用这种SSRF缝隙,能够借由效劳端的功用特性,去读取效劳器内部资源信息,勘探内部效劳端口和版别状况。

缝隙上报进程

2018.7.13 缝隙初报

2018.7.13 三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感缝隙分类

2019.1.23 Slack $500发放

2019.三侠五义,挖洞阅历 | 看我怎样绕过Slack后端的SSRF防护机制,典礼感2.22 缝隙发表

缝隙剖析

Slack的事情接口(Event API)https://api.slack.com/events-api,可在各种时刻发作时进行触发调用,比方音讯发送的时分、channels改动的时分等。当咱们在创立一些私家定制化的Slack运用时,常常会用到Slack事情接口(Event API)。

装备Slack事情接口时,咱们须在事情订阅处(Event Subions)设置一个Request URL用来作为事情的订阅地址。设置好该地址后,当事情发作时,Slack会向该地址发送HTTP POST恳求,其间会包括事情验证的”type”、”challenge”和”token”参数。

这儿,SSRF防护绕过缝隙就存在于此- https://api.slack.com/apps/YOUAPPCODE/event-subions?,当咱们设置的订阅地址U鬼魂水兵举动RL不符合Slack API标准时,会回来以下呼应音讯:

Your request URL gave us a 500 error. Update your URL to receive a new request and challenge value.

通过测验,我发现相同用IPv6地址格局 [::] 相同在此能够运用。比方,在我的办理网站中,设置一个x.php,内容如下:

咱们结构一个URL地址:[::]:22/,URL编码后为:,把它填写在订阅地址的Request URL处,会有以下呼应:

也便是说,这种恳求Slack内部效劳器22端口,且端口敞开的呼应如下:

"body": { SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.4 Protocol mismatch. }

假如Slack内部效劳器端口未敞开(25),会有如下呼应:

"body": { 220 squid-iad-ypfw.tinyspeck.com ESMTP Postfix 221 2.7.0 Error: I can break rules, too. Goodbye. }

假如Slack内部效劳器端口不存在,会没有任何呼应:

缝隙影响

攻击者运用这种SSRF缝隙,能够借由效劳端的功用特性,去读取效劳器内部资源信息,勘探内部效劳端口和版别状况。缝隙上报后,Slack安全团队以为我的缝隙是重复报,但我觉得他们搞错了,终究Slack还锯末粉碎机是以为我的缝隙有用。

缝隙上报进程

2018.7.24 缝隙初报 被评为重复报

2018.9.2 缝隙验证分类 有用报

2019.1.23 Slack发放$500赏金

2019.2.22 缝隙发表

*参阅来历:medium,clouds编译,转载请注明来自FreeBuf.COM

瑾色良缘 公司 视频 PC
声明:该文观念仅代表作者自己,搜狐号系信息发布渠道,搜狐仅供给信息存储空间效劳。