etcd API 未授权访问漏洞

安全检查发现etcd API 未授权访问漏洞,进行修复。

etcd是一个采用HTTP协议的健/值对存储系统,它是一个分布式和功能层次配置系统,可用于构建服务发现系统。用于共享配置和服务发现的分布式,一致性的KV存储系统.其很容易部署、安装和使用,提供了可靠的数据持久化特性。etcd提供了 API 访问的方式,但由于未配置认证,导致etcd API 存在未授权访问漏洞。

一、方案建议
方案一:配置身份验证, 防止止未经授权用用户访问
Tidb集群配置tls安全访问,需要先把pd节点由3节点缩容到1节点,这种方法对pd集群有一定风险,不太建议此方法。

方案二:访问控制策略略, 限制IP访问
开启操作系统iptabes,配置白名单,内部节点可访问pd节点。
此方案对集群的影响相对较小

二、方案二实施
TiDB集群中PD主机通过防火墙iptables设置白名单,PD之间互信,拒绝外来访问
yum install iptables-services
cat /etc/sysconfig/iptables
iptables -L -n

systemctl list-unit-files --type service | grep ‘enabled’
systemctl list-unit-files --type service | grep ‘enabled’ |grep pd
systemctl list-unit-files --type service | grep ‘enabled’ |grep tidb

1)检查tidb组件(...61、...63、..**.65)机器上的端口情况
tiup cluster display test-cluster

2)确认pd leader节点
tiup ctl:v4.0.12 pd -u ...61 member
tiup ctl:v4.0.12 pd -u ..
.61 member leader show

3)先开启非pd leader两个节点的防火墙,再把pd leader进行切换
tiup ctl:v4.0.12 pd -u ..**.61 member leader transfer {$pd-name}

4)确认防火墙状态
systemctl status iptables

5)打开iptables防火墙
systemctl start iptables

可能造成的风险:
在切换pd leader可能短暂出现tikv找不到pd节点,导致事务被 block,会对业务造成一定风险,影响时间在一个小时内,建议确认停止业务后进行操作

systemctl stop iptables
systemctl start iptables
iptables -I INPUT -p tcp --dport 4000 -j ACCEPT
iptables -I INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
service iptables save

6)加入以下规则
iptables -I INPUT -s ...51 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ..
.53 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ...55 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ..
.61 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ...63 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ..
.65 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ...70 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ..
.75 -p tcp -m tcp --dport 2379 -j ACCEPT
iptables -I INPUT -s ...51 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ..
.53 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ...55 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ..
.61 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ...63 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ..
.65 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ...70 -p tcp -m tcp --dport 2380 -j ACCEPT
iptables -I INPUT -s ..
.75 -p tcp -m tcp --dport 2380 -j ACCEPT

iptables -I INPUT -s ...51 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ..
.53 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ...55 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ..
.61 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ...63 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ..
.65 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ...70 -p tcp -m tcp --dport 8250 -j ACCEPT
iptables -I INPUT -s ..
.75 -p tcp -m tcp --dport 8250 -j ACCEPT

iptables -I INPUT -s ...51 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ..
.53 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ...55 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ..
.61 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ...63 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ..
.65 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ...70 -p tcp -m tcp --dport 10080 -j ACCEPT
iptables -I INPUT -s ..
.75 -p tcp -m tcp --dport 10080 -j ACCEPT

3)保存当前规则
service iptables save

4)检查PD iptables情况(...61、...63、..**.65) :
iptables -L -n

5)集群验证:
[tidb@monitor ~]$ tiup cluster display test-cluster

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,我了解ETCD存在授权访问漏洞。 在许多生产环境中,ETCD作为一种可靠的分布式键值存储系统,用于数据同步和协调各种服务。然而,最近发现了针对ETCD授权访问漏洞,攻击者可能能够访问授权的数据。 该漏洞存在于ETCD的网络通信中,可能导致授权的用户或恶意用户访问ETCD服务器上的敏感数据。攻击者可以利用此漏洞,通过发送恶意请求来获取或修改ETCD集群中的数据,从而获取敏感信息或执行恶意操作。 为了防范此类漏洞,建议采取以下措施: 1. 实施严格的访问控制:确保只有授权用户能够访问ETCD集群,并实施适当的身份验证和授权策略。 2. 使用加密通信:使用加密通信协议(如TLS)来保护ETCD与外部系统的通信。这将确保数据在传输过程中的安全性。 3. 定期审计和监控:定期对ETCD集群进行安全审计,确保没有任何授权访问尝试。同时,监控ETCD的网络流量,以便及时发现异常行为。 4. 更新和补丁:确保ETCD软件版本是最新的,并积极获取针对此类漏洞的补丁和修复程序。 5. 实施安全最佳实践:遵循ETCD的最佳安全实践,如限制对ETCD服务的网络访问,只允许必要的端口和协议通过,并限制对ETCD集群的远程访问。 总之,通过实施上述安全措施,可以减少ETCD授权访问漏洞的风险,保护数据安全。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值