文章预览
环境搭建 适用 vulhub这个项目来启动漏洞环境 vulhub的nacos版本是 1.4.0,通过github下载源代码 https://github.com/alibaba/nacos/tree/1.4.0 因为vulhub已经默认开放了debug端口,所以直接自己idea jvm远程调试即可 漏洞分析 从 poc来看 问题出在 /nacos/v1/cs/ops/data/removal 和 /nacos/v1/cs/ops/derby 这两个接口 removal 代码位于 config/src/main/java/com/alibaba/nacos/config/server/controller/ConfigOpsController.java:133 importDerby方法使用了 Secured 注解进行保护 Secured注解的实现在 com/alibaba/nacos/core/auth/AuthFilter.java:88 首先判断了有没有开启认证,如果没有开启就直接pass 如果开启了认证 还会判断 ua是否是 Nacos-Server开头,如果是的话就pass。这就是前几年的未授权漏洞的根源 在vuln 中的nacos是没有开启auth的,所以无需关注认证 漏洞接口代码 @PostMapping(value = "/data/removal") @Secured(action = ActionTypes.WRIT
………………………………