关闭代理 API 访问
Close proxy API access
关闭代理API访问
大家好,
Grafana 8.2.5
我们有一个 Grafana 系统 8.2.5。他进行了安全审核,其中 API 访问权限受到批评。
我们为没有登录的用户启用了匿名访问。
[auth.anonymous]
enabled =true
org_name = IT.NRW
org_role = Viewer
当我尝试访问 Grafana 时:
curl http://<fqdn>:3000/api/datasources -> {"message":"Permission denied"}
curl http://admin:<password>@<fqdn>:3000/api/datasources -> a valid json object with the datasource etc....
但是安全审计也发现了对数据源代理的访问? API.
curl http://<fqdn>:3000/api/datasources/proxy/3/query?db=<db>\&q=SELECT+*+FROM+<ts>\&epoch=ms
所以无论有无凭据,我都可以查询 API。
安全审计:拒绝服务 (DoS) 是可能的,可能是一些 SQL 注入。
我不想在这里讨论这个话题。
我必须关闭通过 API 的访问。至少来自其他网段。
有什么提示吗?
提前致谢。
我是grafana初学者!
我不抱怨,安全审核列出了两个主题(DoS/SQL 注入)。
我没有发现任何关于关闭代理 API 接口(仅 data_source_whitelist-ing)的配置可能性(grafana.ini)。
所以,我在 grafana 服务器前面的 NGIX 配置中添加了一些规则
禁止代理 API 访问 -> 抛出 40x 错误。
现在网络 UI 无法再获取和呈现 UI.
中的数据
我的结论:
- grafana 架构定义:代理 API 将被网络 UIs 使用。
- 有或没有凭据:用户可以使用代理触发查询 (DoS) API
- 有或没有凭据:查询通过代理 API 传递到数据源,潜在 sql 注入是可能的
关闭代理API访问
大家好,
Grafana 8.2.5
我们有一个 Grafana 系统 8.2.5。他进行了安全审核,其中 API 访问权限受到批评。 我们为没有登录的用户启用了匿名访问。
[auth.anonymous]
enabled =true
org_name = IT.NRW
org_role = Viewer
当我尝试访问 Grafana 时:
curl http://<fqdn>:3000/api/datasources -> {"message":"Permission denied"}
curl http://admin:<password>@<fqdn>:3000/api/datasources -> a valid json object with the datasource etc....
但是安全审计也发现了对数据源代理的访问? API.
curl http://<fqdn>:3000/api/datasources/proxy/3/query?db=<db>\&q=SELECT+*+FROM+<ts>\&epoch=ms
所以无论有无凭据,我都可以查询 API。
安全审计:拒绝服务 (DoS) 是可能的,可能是一些 SQL 注入。 我不想在这里讨论这个话题。
我必须关闭通过 API 的访问。至少来自其他网段。
有什么提示吗?
提前致谢。
我是grafana初学者!
我不抱怨,安全审核列出了两个主题(DoS/SQL 注入)。 我没有发现任何关于关闭代理 API 接口(仅 data_source_whitelist-ing)的配置可能性(grafana.ini)。
所以,我在 grafana 服务器前面的 NGIX 配置中添加了一些规则 禁止代理 API 访问 -> 抛出 40x 错误。 现在网络 UI 无法再获取和呈现 UI.
中的数据我的结论:
- grafana 架构定义:代理 API 将被网络 UIs 使用。
- 有或没有凭据:用户可以使用代理触发查询 (DoS) API
- 有或没有凭据:查询通过代理 API 传递到数据源,潜在 sql 注入是可能的