[apolloconfig/apollo]Apollo开启秘钥公共配置安全漏洞问题

2023-12-14 494 views
3

Apollo开启秘钥后,客户端拉取配置需要更具传入的appId验证秘钥,公共配置所属的应用开启秘钥无效。 image image

该问题可以通过项目要求,把Apollo上所有的应用都开启秘钥,但是有个更致命的问题,当输入一个不存在的appId访问公共配置时,依然能够获取到配置。 image

ConfigServer的获取配置接口,需要加上appId是否有效的校验,如果无效的appId直接404

回答

9

最初考虑不对 appid 做有效性校验是基于公共配置的 app 使用不一定需要 app 一定在 apollo 有配置,如果直接加上这个限制可能会导致应用使用存在问题。 另外,公共配置照理说应该不需要限制秘钥访问?毕竟其它应用如果没加秘钥的话,也是可以访问公共配置的。

5

根据当前app来控制秘钥的这个逻辑没有问题。只是访问公共配置的时候appId输入一个不能存在的app这个逻辑得优化一下,加个校验。

9

@luyiArye 由于当前的设计公共配置所有应用都可见,所以公共配置与具体的某个应用是无关的,应用开启密钥仅对私有namespace生效。加不加校验,目前看起来影响并不大。