宝塔面板PMA安全风险事件经过
起因:
为解决用户服务器被通过phpmyadmin提权导致的安全问题,
我们在Linux面板7.4.2/Windows面板6.8.0 版本中加入了phpmyadmin安全访问模块,
原理是通过面板进行访问phpmyadmin,而不是nginx/apache,
但因在目录存放时存在一个致命逻辑漏洞,导致nginx/apache也可以访问到专门给面板使用的phpmyadmin目录,
我们在做安全审计时将重心放在面板程序中,忽略了除面板外被访问的可能,从而导致了此事件的发生.
受影响的机器:
需同时满足以下所有条件
1、软件版本为Linux面板7.4.2 或者Windows面板6.8.0
2、开放888且未配置http认证,
3、安装了phpmyadmin,mysql数据库
不受影响的机器:
只需满足一条则不受影响
1、未开放888端口,
2、针对888端口做了严格的安全认证,
3、未安装phpmyadmin,
4、未安装mysql数据库
5、面板版本不为Linux面板7.4.2/Windows面板6.8.0
安全更新时间及内容:
时间:2020-8-23 16:50左右
1、移除phpmyadmin安全模块
2、删除phpmyadmin遗留文件
3、移除fastcgi客户端模块中的目录解释功能
当前最新的安全版本为:
Linux面板7.4.3 / Windows面板6.9.0
除使用紧急修复补丁以外的其它措施:
1、第一时间通过 短信、公众号、官网、QQ群等渠道通知用户升级
2、在云端软件安装脚本中加入漏洞检测功能,在用户通过云端安装软件时,检测发现漏洞后尝试修复
3、通过漏洞本身,尝试破坏利用链(尝试通过phpmyadmin自身漏洞删除config.inc.php, 仅部分Windows有效/Linux版本尝试失败) 2020-8-23 22:00 ~ 2020-8-24 4:00
4、通过漏洞本身,尝试破坏利用链(强制修改数据库root密码),此方法部分服务器有效,受phpmyadmin版本和用户配置影响 执行时间:2020-8-24 8:00 ~ 2020-8-24 9:40
5、阿里云,腾讯云等很多IDC厂商已紧急发布更新预警并采取限制端口的措施来防止漏洞被利用
下一步:
在漏洞发现第一时间已安排人员加班更新修复,增加服务器带宽,利用所有能利用上的宣传渠道进行更新提醒,同时安排运维及客服人员在线解答所有事项,对于受影响的用户协助他们解决问题,对于人手不足问题已临时调用开发来协助用户,当前所有精力都努力将此安全风险影响最小化,等处理完这步再来更新内部整改处理事项。
在此,我代表我们公司对这次安全风险给大家带来的困扰表达歉意,接受一切批评声音,内部也会通过这次事件认真复盘反省。
https://www.bt.cn/bbs/thread-54666-1-1.html