使用Pagelines和Platform主題的WordPress用戶注意了,請(qǐng)盡快更新主題的版本,
知名WordPress主題Pagelines和Platform存在高危漏洞
。我們?cè)谝淮螌?duì)WAF例行審計(jì)時(shí),偶然發(fā)現(xiàn)了兩個(gè)嚴(yán)重漏洞:一個(gè)權(quán)限提升漏洞(影響Pagelines和Platform),以及一個(gè)遠(yuǎn)程代碼執(zhí)行漏洞(影響Platform)。漏洞簡(jiǎn)介
某個(gè)WordPress網(wǎng)站如果使用了Platform主題(版本號(hào)小于1.4.4), 就可以輕易取得該網(wǎng)站的權(quán)限。
可以利用惡意軟件、SEO垃圾郵件以及其他方式,執(zhí)行PHP代碼來(lái)感染你的網(wǎng)站。在使用了主題Pagelines(版本號(hào)小于1.4.6)的WordPress網(wǎng)站中, 只要注冊(cè)一個(gè)賬號(hào),就可以使用權(quán)限提升exp進(jìn)行攻擊。提升權(quán)限后 可以做許多事,包括使用WordPress主題文件編輯器。
技術(shù)細(xì)節(jié)
1.Pagelines和Platform主題的權(quán)限提升漏洞:
以上兩種主題使用WordPress的ajax hook對(duì)某些設(shè)置進(jìn)行了更改:
無(wú)論登錄用戶是什么權(quán)限,wp_ajax_鉤子對(duì)用戶來(lái)說(shuō)都是可用的,
備考資料
《知名WordPress主題Pagelines和Platform存在高危漏洞》(http://www.ipr-jzsc.com)。訂閱用戶可以使用hook重寫(xiě)在WordPress選項(xiàng)庫(kù)里的任何一項(xiàng)。比如,他們可以重寫(xiě)default_role的值為administrator,這將給予網(wǎng)站的每一個(gè)新用戶管理權(quán)限!2.Platform主題的遠(yuǎn)程代碼執(zhí)行漏洞:
該主題使用了不合理的方式來(lái)導(dǎo)入主題設(shè)置的備份文件:
如你在圖片看到的那樣,該主題使用include()函數(shù)導(dǎo)入了備份文件。其實(shí)它本身不一定存在漏洞,我們到現(xiàn)在還未弄清是否未經(jīng)認(rèn)證的用戶也能觸發(fā)這段代碼。由于以上諸多原因,我們決定回過(guò)頭來(lái)審計(jì)下代碼,結(jié)果發(fā)現(xiàn)它調(diào)用了pagelines_register_settings()。
由上圖可知,pagelines_register_settings()是與admin_init的hook掛鉤的。因此,當(dāng)訪客訪問(wèn)了/wp-admin/admin-post.php或者/wp-admin/admin-ajax.php時(shí),就可以通過(guò)觸發(fā)admin_init執(zhí)行備份文件里的代碼,從而輕松獲得網(wǎng)站權(quán)限。
如果有站長(zhǎng)正在使用上述兩種主題存在漏洞的版本,請(qǐng)盡快更新。如果由于某種原因不能切換到新的版本,我們強(qiáng)烈建議使用WAF。