|
【安全預警】WordPress插件social warfare存在xss及遠程代碼執(zhí)行漏洞近日,國外安全研究人員在大量攻擊數(shù)據(jù)中發(fā)現(xiàn)了一個WordPress plugins Social Warfare遠程代碼執(zhí)行漏洞。該漏洞位于social-warfare\lib\utilities\SWP_Database_Migration.php文件中的eval()函數(shù),該函數(shù)能夠運行攻擊者在“swp_url”GET參數(shù)中定義的PHP代碼。此漏洞允許攻擊者getshell接管整個網(wǎng)站,甚至是服務器。
安全狗海青實驗室已于昨日第一時間響應并發(fā)布預警信息,我們隨后進行了進一步的研究分析,現(xiàn)將細節(jié)公布。
在social-warfare\lib\utilities\SWP_Utility.php處通過獲取swp_debug參數(shù) 在調(diào)用漏洞文件social-warfare\lib\utilities\SWP_Database_Migration.php進入處理流程 在202行處調(diào)用了is_admin()函數(shù),該函數(shù)是wordpress的內(nèi)置布爾型函數(shù),取值取決于文件所處位置,前端默認而False,而后端默認為True,而該文件所處為后端,is_admin取值為真,if條件里的判斷為永假,導致了該模塊頁面可以未進行身份驗證直接進行訪問。 接下來通過獲取swp_url參數(shù)獲取遠程文件內(nèi)容,經(jīng)過簡單處理滿足<pre>*</pre>格式的數(shù)據(jù),最后獲取*號里面的數(shù)據(jù)賦值給變量array,最后通過eval函數(shù)執(zhí)行,導致代碼執(zhí)行。 環(huán)境搭建:下載安裝WordPress程序,然后登錄后臺安裝Social Warfare插件,使用構(gòu)造好的payload進行測試,最終導致xss及遠程代碼執(zhí)行。 Wordpress官方插件庫已經(jīng)更新了該插件版本,該插件的用戶可以更新至該插件的最新版本: https://wordpress.org/plugins/social-warfare/advanced/ |