前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >宝塔7.4.2-pma未授权访问漏洞风险

宝塔7.4.2-pma未授权访问漏洞风险

作者头像
Mirror王宇阳
发布2020-11-12 10:57:16
2K0
发布2020-11-12 10:57:16
举报
文章被收录于专栏:Mirror的技术成长

起因

宝塔官方表示,7.4.2(Linux)版本的宝塔面板存在未授权访问phpmyAdmin的漏洞,漏洞利用难度为“0”,通过访问ip:888/pma则可无需任何登录操作直接进入phpmyAdmin,所有使用宝塔的站点均可测试是否存在此漏洞(未修改默认端口,安装了phpmyAdmin的均存在可能);

  • 影响范围
    • 宝塔 linux 7.4.2(安装了 phpmyadmin)
    • 宝塔 Linux 7.5.13(安装了 phpmyadmin)
    • 宝塔 windows 6.8(安装了 phpmyadmin)

应急

1、关闭888端口对外访问和phpmyAdmin服务 2、升级至官方紧急发布的7.4.3版本关于Linux面板7.4.2及Windows面板6.8紧急安全更新(官方) 3、将pma移到其他目录/或删除

官方

在Linux面板7.4.2/Windows面板6.8.0 版本中加入了phpmyadmin安全访问模块,原理是通过面板进行访问phpmyadmin,而不是nginx/apache,但因在目录存放时存在一个致命逻辑漏洞,导致nginx/apache也可以访问到专门给面板使用的phpmyadmin目录,我们在做安全审计时将重心放在面板程序中,忽略了除面板外被访问的可能,从而导致了此事件的发生。

分析

(参考ph17h0n:宝塔面板phpMyAdmin未授权访问漏洞是个低级错误吗?) 下载安装被影响到的宝塔linux版本:LinuxPanel-7.4.2.zip

7.4.2和7.4.3版本代码对比
7.4.2和7.4.3版本代码对比

在更新版本中判断/www/server/phpmyadmin/pma是否存在并删除该目录,这个目录就是官方说的通过面板直接访问phpmyadmin所使用的,删除该目录后则就无法使用该模块;ph17h0n分析:

传入了username和password的情况下,宝塔会改写phpmyadmin的配置文件config.inc.php,将认证方式改成config,并写死账号密码。

ph17h0n大佬科普了一直知识点:phpmyadmin除了cookie认证登录以外还支持多种认证方式,而这里bt官方则是改用了config认证方式,phpmyadmin会使用配置文件中的username/password进行登录;之所以可以通过面板直接访问phpmyAdmin的原因也是这个,写死了用户名和密码(所谓的自动填充并登录),面板就可以不用手动输入密码访问phpmyadmin,而bt官方只考虑到了用户面板访问pma,但是忘记了任何情况下都可以通过pma访问,因为它直接识别config中的密码。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-08-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 起因
  • 应急
  • 官方
  • 分析
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档