wordpress 目前互聯(lián)網(wǎng)的市場占有率較高,許多站長以及建站公司都在使用這套開源的博客建站系統(tǒng)來設(shè)計網(wǎng)站,wordpress的優(yōu)化以及html靜態(tài)化,深受google以及搜索引擎的喜歡,全世界大約有著百分之28的網(wǎng)站都在使用這套系統(tǒng),國外,外貿(mào)網(wǎng)站,個人博客使用的最多。
我們SINE安全在對其wordpress網(wǎng)站進(jìn)行詳細(xì)的安全檢測以及網(wǎng)站漏洞檢測,發(fā)現(xiàn)wordpress存在著高危的網(wǎng)站安全漏洞,在wordpress4.9版本一下存在著管理員密碼找回漏洞,可以在找回密碼的過程中竊取用的密碼資料,可以先人一步對其找回的密碼進(jìn)行設(shè)置。
WordPress 漏洞詳情
在該系統(tǒng)代碼里我們發(fā)現(xiàn)wp_mail這個函數(shù)具體的作用是用來發(fā)送郵件,用戶找回密碼首先會發(fā)送郵件過去,確認(rèn)賬號的所有者,然后再進(jìn)行重新設(shè)置密碼,但是在這個找回密碼發(fā)送郵件的過程中,我們發(fā)現(xiàn),代碼里的發(fā)送服務(wù)器地址:server這個值里是可以偽造的,也就是說我們可以構(gòu)造惡意的函數(shù)來對其進(jìn)行sql注入以及查詢數(shù)據(jù)庫里的賬號密碼。
在正常的情況下,網(wǎng)站發(fā)送郵件的參數(shù)配置里會把退件的一個地址作為用戶密碼找回的時候,如果沒有發(fā)送到對方的郵件里,會直接退回到退件的郵件地址里去,也就是說我們可以設(shè)置退件的地址發(fā)送到我們設(shè)置好的郵件地址里去,我們來進(jìn)行重新找回密碼,設(shè)置用戶的新的密碼。
我們首先利用阿里云的服務(wù)器,ECS購買一個按量付費(fèi)的國內(nèi)服務(wù)器,linux centos系統(tǒng),然后安裝nginx+PHP+mysql數(shù)據(jù)庫的這么一個網(wǎng)站環(huán)境,再下載WordPress官方的一個版本,安裝到服務(wù)器中。
這里我們提交到我們的網(wǎng)站里去,郵件沒有發(fā)送成功就會退送到我們遠(yuǎn)程代碼指定好的郵件地址里去的.
然后如果郵件里沒有用戶密碼找回的鏈接,我們可以通過查看源代碼或者是html代碼就可以看到重新設(shè)置用戶密碼的鏈接。
WordPress 網(wǎng)站漏洞修復(fù)建議:
建議各位網(wǎng)站的運(yùn)營者盡快升級WordPress到最高版本,或者是關(guān)閉用戶密碼找回功能,對網(wǎng)站程序代碼不懂的話,也可以直接關(guān)閉郵件的發(fā)送設(shè)置,還是不太懂的話,建議找專業(yè)的網(wǎng)站安全公司進(jìn)行網(wǎng)站漏洞修復(fù),國內(nèi)SINE安全公司、以及綠盟、啟明星辰都是比較專業(yè)的。