一个关于备份的安全隐患

在部署tiup的主机上使用br进行备份,过程中没有要求输入任何认证信息直接开始备份任务。
以上情况个人认为是个挺严重的安全隐患。
攻击方式举例:

  1. 使用br命令进行随意备份,增加数据库无意义的负载。
  2. 频繁连续发起数据库备份,造成数据库空间无意义的消耗甚至耗尽存储资源。
  3. 恶意进行数据恢复。(通过指定网络存储上的错误备份,哪怕是正确的也是会造成数据损失。)

PS:默认情况下,以上所有通信是不提供认证加密手段的。可通过阅读官方文档中的【参考指南】->【安全加固】-> 【 为 TiDB 组件间通信开启加密传输】相关内容为组件间通信开启加密传输以确保数据及组件安全。

既然已经能够连到tiup中控机上了,那整个集群已经裸奔了吧,即使想销毁集群那也阻止不了。

1 个赞

说的在理

:thinking:想到了一种情况,使用BR命令能否向其他中控机管理的集群发起备份操作。因为命令里只需要指定pd节点就可以了。

找了个不相干的主机部署了一下br,居然也可以备份。
也就是说只要能与pd通信就可以备份了。 :joy:

已经试过,任何能与pd通信的主机部署上br就可以发起备份任务。

br备份不验证用户密码的吗?那确实是安全隐患

应该可以配证书吧

这个也算不上啥安全隐患吧。Oracle 备份也不用输密码啊,默认认为你能登录到操作系统就是可信任用户了

试下配这个呢
image

1 个赞

你说的Oracle的情况,仅限本地。

需要在pd服务器上启用这些认证是吗?

oracle 本地也可以配置密码才能登录的

是的,应该得启用SSL 认证,不过我没用过~

https://docs.pingcap.com/zh/tidb/stable/enable-tls-between-components
说的是这个吗?

oracle远程不行的,只有在本地可以,不过本地的话,你直接rm -rf *都可以了,备份都不算安全隐患了。。。

对,就是这个

初来乍到,学艺不精。
见笑啦,哈哈哈哈。

其实还不太一样,PD端口还和dashboard绑定到一起了,如果想直接外网访问的话,就必须把PD端口暴露出去,增加了攻击面

还有,其实不止是BR,pd-ctl也是没有权限校验的,更危险