有200萬用戶的寶塔面板安全嗎?
寶塔面板系統是一款非常好用的網站服務器管理控制面板,可以讓大家不用記Linux系統的命令,就可以輕松的管理Linux服務器,可視化界面操作,非常方便。
從官網了解到寶塔面板目前擁有200萬用戶,安裝次數已經超過600 萬次,被1000多個中大型企業及政企選擇使用,堡塔已經成為服務器運維軟件、搭建網站的不二之選。
成千上萬的站長們把網站都架構在寶塔面板之上,如果面板出現了嚴重漏洞,其危害可想而知。
小編了解到在2020年的8月份,Linux面板7.4.2 版本/Windows面板6.8 版本的寶塔面板被曝最新嚴重數據庫安全漏洞。借助這個漏洞,可以直接繞過身份驗證進入網站服務器的數據庫,一旦被黑客盯上有可能被直接刪庫破壞所有數據,造成網站癱瘓。隨后開發商堡塔安全也緊急發布通知短信告知,讓所有用戶升級到最新版本。
用過寶塔面板燈小伙伴都知道,寶塔后臺是通過網頁版進入并管理的,那寶塔是如何保證后臺不被破解的呢?
通過測試,寶塔面板的后臺鏈接是http協議,通過后臺抓包,我們可以看到,前端在傳輸的過程當中,是將用戶名與密碼使用進行加密后才傳輸到后端的。


我們逐步分析一下:賬號的加密方式為將輸入的username(賬號)進行MD5加密,之后傳輸給后端。

而密碼的加密方式則更加復雜,首先進行MD5加密一次,加密后的字符串與“_bt.cn”進行拼接,拼接完成后再次進行MD5加密,所得數據再傳輸給后端
由此得出,想在前端通過抓包并窮舉的方式來破解賬號密碼,難如登天。就算拿到了該包,里面存儲的信息也是加密后的數據,沒有多大用處。
前端的安全保證了,后端怎么樣呢?寶塔的后臺的存儲也是安全的么?那么一起進入后臺,找到數據庫的配置文件,看一下:




我們可以看到數據庫存儲的密碼和前端傳輸回來的密碼不一樣,并且還有一個salt值。
為什么這里會不一樣呢?其實這是寶塔面板的后臺在接收到前端傳輸回來的數據后又進行了一次加密,其加密過程為:
將接收到的數據與salt值進行拼接,得到的值再次進行MD5加密,之后再將得到的值存儲進數據庫
那么此時可能又會有一個問題:前后端的數據不一致,如何進行校驗呢?原理也很簡單:前端傳回來的數據再次進行上述加密操作,如果得到的值與數據庫里的相符,即校驗成功(密碼正確)。
后端數據庫的加密存儲,可以避免以下這種情況,例如有人拿到了該數據庫的文件,并成功讀取了該文件,此人也沒有可能拿到真正的密碼。
進入寶塔面板后臺要經過多個關卡,以及賬號數據一重加密傳輸,密碼數據四重加密等重重難關。由此可見寶塔面板的安全性足以讓大部分初級的運維人員高枕無憂了。