问题:该漏洞可能会导致未经授权的用户获取到系统中的敏感信息。
- http://ip地址:8848/nacos/v1/auth/users?pageNo=1&pageSize=9
最直接的解决办法就是升级nacos版本
如果不升级的话还是沿用旧版本就修改相关配置
当前版本为2.0.4
1.nacos的docker-compose文件增加环境变量:NACOS_AUTH_ENABLE=true
nacos:
image: nacos-server:2.0.4-slim-ARM
container_name: nacos
volumes:
- type: volume
source: nacos-logs
target: /home/nacos/logs
- type: volume
source: nacos-conf
target: /home/nacos/conf
ports:
- "8848:8848"
environment:
- MODE=standalone
- NACOS_AUTH_ENABLE=true # 增加配置
2.2.nacos的application.properties文件修改
nacos.core.auth.system.type=nacos
# 开启鉴权
nacos.core.auth.enabled=true# 这里进行修改
nacos.core.auth.default.token.expire.seconds=18000
nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
# 权限缓存开关 ,开启后权限缓存的更新默认有15秒的延迟
nacos.core.auth.caching.enabled=true
# 关闭使用user-agent判断服务端请求并放行鉴权的功能
nacos.core.auth.enable.userAgentAuthWhite=false
# 配置自定义身份识别的key(不可为空)和value(不可为空)
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos密码(不要用默认密码) # 这里进行修改
3.修改应用服务docker compose文件配置,增加nacos相关配置
test:
image: test:1.0.0-RELEASE
container_name: test
network_mode: host
restart: always
ulimits:
nproc: 65535
nofile: 65535
environment:
- PROFILE=prod
- JAVA_OPTS=-server -Xms1024m -Xmx4096m -Xmn1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
- spring.cloud.nacos.discovery.server-addr=nacosIP地址:8848
- spring.cloud.nacos.discovery.username=nacos账号 # 增加配置
- spring.cloud.nacos.discovery.password=nacos密码 # 增加配置
- spring.cloud.nacos.config.server-addr=nacosIP地址:8848
- spring.cloud.nacos.config.username=nacos账号 # 增加配置
- spring.cloud.nacos.config.password=nacos密码 # 增加配置
- PAGEHELPER_BANNER=false