tidb 漏洞扫描处理- Prometheus 和 ETCD 未授权访问

安全产品进行漏洞扫描,PD和prometheus结果如下,该如何处理
|CoreOS ETCD集群API未授权访问漏洞|未授权访问|
|CoreOS ETCD集群API未授权访问漏洞|未授权访问|
|CoreOS ETCD集群API未授权访问漏洞|未授权访问|
|Prometheus监控告警平台未授权访问|未授权访问|
image
1、请参考官方设置身份验证文档增加身份验证:https://github.com/etcd-io/etcd/blob/master/Documentation/v2/authentication.md,密码最好包含大小写字母、数字和特殊字符等,且位数大于8位。2、如非必要,禁止公网访问该服务。3、通过防火墙等安全设备设置访问策略,设置白名单访问。
1、添加身份验证,密码最好包含大小写字母、数字和特殊字符等,且位数大于8位。2、如非必要,禁止公网访问该系统。3、通过防火墙等安全设备设置访问策略,设置白名单访问。

余窃以为数据库的这些不叫事,外网没有被攻陷前提下,依然是安全的。外网被攻陷了,拿到了操作系统的root,数据库没有漏洞也完蛋。
所以每年护网能干的就是关机拔网线。

试一下开启组件间加密传输行不行,参考

1 个赞

感谢,加密只是传输问题吧,报未授权访问应该是用户密码问题,最后处理好了吗

ASKTUG历史问答:

etcd未授权访问的风险及修复方案详解

https://www.anquanke.com/post/id/236831

https://docs.pingcap.com/zh/tidb/stable/generate-self-signed-certificates
按照文档执行到


报错
$ openssl req -new -key tikv.key -out tikv.csr -config openssl.cnf
Error Loading request extension section v3_req
140275897460544:error:22075075:X509 V3 routines:v2i_GENERAL_NAME_ex:unsupported option:crypto/x509v3/v3_alt.c:547:name=basicConstraints
140275897460544:error:22098080:X509 V3 routines:X509V3_EXT_nconf:error in extension:crypto/x509v3/v3_conf.c:47:name=subjectAltName, value=@alt_names

你是dm 环境吗? 我看到文档中的实例是dm-master 签发证书的,不知道这块有没有区别

这是openssl命令执行失败(与TiDB集群无关),似乎是openssl.cnf文件配置出错导致的,
1、请确保指定目录下有openssl.cnf
2、请检查是否按照步骤3中修改了openssl.cnf文件

根据报错信息分析,openssl.cnf配置出现错误:

正确配置如下:


对于TiUP 开启加密,需要安装时配置 enable_tls: true 即可,目前只能安装时配置
https://docs.pingcap.com/zh/tidb/stable/tiup-cluster-topology-reference#global

感谢!
1、 下面是我的配置,暂时没看出了和样例的差异
image

image

2、这个扫描工具的信息显示似乎是因为etcd/promethues没有设置用户密码,是否开启openssl能解决这问题,有没有其他方式解决呢? 开启ssl不是目的,只要满足扫描工具即可?

设置个白名单最省事。

1、现在执行openssl的命令还会报错吗?这openssl的命令只与配置文件和openssl本身有关,看看openssl版本等其他信息。我在本地环境执行是正常的;
2、当前集群组件没有用户密码校验机制,基于证书的ssl,本身是一种身份校验机制,应该能解决未授权访问的情况
3、可以尝试通过白名单快速测试一下,参考:

b白名单是哪的白名单。
$ openssl version
OpenSSL 1.1.1f 31 Mar 2020

目前 TiDB 还不支持内置 etcd 开启任何授权认证方式,如果强行开启,各组件内的 etcd client 也不支持设置认证凭据。目前相对强的加密就是为组件内外开启 TLS。
参考:
https://docs.pingcap.com/zh/tidb/stable/enable-tls-between-clients-and-servers
https://docs.pingcap.com/zh/tidb/stable/enable-tls-between-components

1、防火墙白名单,限制非法IP访问
2、openssl版本应该是没问题的,命令本身也是可正常执行的,可以的话把你的openssl的配置文件提供一下

openssl.cnf (12.5 KB)

配置文件错误,你将[ alt_names ]添加到了[ v3_req ]配置信息中间,截断了原本属于[ v3_req ]下的basicConstraints、keyUsage字段。
请检查修改后再执行。
如下:

:+1: ok了,确实这个问题。我也找主机的先设置防火墙看看

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。

建议增加PD 、prometheus的授权验证功能