婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Mysql注入中的outfile、dumpfile、load_file函數詳解

Mysql注入中的outfile、dumpfile、load_file函數詳解

熱門標簽:上海智能外呼系統需要多少錢 中科嘉智人工智能電銷機器人 做地圖標注都需要什么工具 凱立德科技館地圖標注 銀川電銷外呼系統定制 電銷機器人好品牌門薩維l 哈爾濱crm外呼系統價格 甘孜電話機器人廠家 西安400電話在哪里辦理

在利用sql注入漏洞后期,最常用的就是通過mysql的file系列函數來進行讀取敏感文件或者寫入webshell,其中比較常用的函數有以下三個

  • into dumpfile()
  • into outfile()
  • load_file()

我們本次的測試數據如下

讀寫文件函數調用的限制

因為涉及到在服務器上寫入文件,所以上述函數能否成功執行受到參數 secure_file_priv 的影響。官方文檔中的描述如下

翻譯一下就是

  • 其中當參數 secure_file_priv 為空時,對導入導出無限制
  • 當值為一個指定的目錄時,只能向指定的目錄導入導出
  • 當值被設置為NULL時,禁止導入導出功能

這個值可以通過命令 select @@secure_file_priv 查詢。由于這個參數不能動態更改,只能在mysql的配置文件中進行修改,然后重啟生效。

dumpfile與outfile的區別

導出數據庫場景下的差異

select …… into outfile

我們先來看一下mysql官方文檔里對于這兩個函數的解釋

其中有兩個值得注意的坑點

outfile函數可以導出多行,而dumpfile只能導出一行數據
outfile函數在將數據寫到文件里時有特殊的格式轉換,而dumpfile則保持原數據格式

我們接下來通過導出測試看看這里面的細節

首先通過命令 select * from test into outfile '/tmp/test.txt' 來使用outfile導出

可以看到文件 /tmp/test.txt 文件中保存了所有的數據并且在一行數據的末尾自動換行

通過查看官方文檔,可以看出使用如下參數可以進行格式調整

其中 FIELDS ESCAPED BY 可以用來對指定的字符進行轉義, FIELDS [OPTIONALLY] ENCLOSED BY 用來對字段值進行包裹, FIELDS TERMINATED BY 用來對字段值之間進行分割

例如使用如下命令 select * from test into outfile '/tmp/test.txt FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY ' " 'LINES TERMINATED BY '\n'

得到的導出文件如下

select …… into dumpfile

而接著使用命令 select * from test into dumpfile '/tmp/test.txt' 使用dumpfile進行導出

可以看到此命令在執行的時候提示輸出超過一行

查看文件內容

可以看見通過dumpfile導出的數據行數據之間并未進行換行且只導出了部分數據

寫入webshell或者udf下的差異

 select …… into outfile

我們使用命令 select 'a\naa\raaaa' into outfile '/tmp/test.txt' 來看一下在常用的寫文件場景下的結果

可以看到outfile對導出內容中的\n等特殊字符進行了轉義,并且在文件內容的末尾增加了一個新行

我們接著使用命令 select 'a\naa\raaaa' into dumpfile '/tmp/test.txt' 來看一下

可以看到dumpfile對文件內容是原意寫入,未做任何轉移和增加。這也就是為什么 我們在平常的UDF提權中使用dumpfile進行dll文件 寫入的原因

還有一個需要關注的點就是:outfile后面不能接0x開頭或者char轉換以后的路徑,只能是單引號路徑。這個問題在php注入中更加麻煩,因為會自動將單引號轉義成\',那么基本就GG了,但是load_file,后面的路徑可以是單引號、0x、char轉換的字符,但是路徑中的斜杠是/而不是

總結

以上所述是小編給大家介紹的Mysql注入中的outfile、dumpfile、load_file函數詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • MySQL使用LOAD_FILE()函數方法總結

標簽:四川 山南 濮陽 平頂山 安康 那曲 浙江 安徽

巨人網絡通訊聲明:本文標題《Mysql注入中的outfile、dumpfile、load_file函數詳解》,本文關鍵詞  Mysql,注入,中的,outfile,dumpfile,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mysql注入中的outfile、dumpfile、load_file函數詳解》相關的同類信息!
  • 本頁收集關于Mysql注入中的outfile、dumpfile、load_file函數詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 石柱| 芷江| 铜鼓县| 贵溪市| 黄骅市| 郓城县| 伊金霍洛旗| 柘城县| 巴彦县| 桂阳县| 德清县| 岗巴县| 五莲县| 海晏县| 洛宁县| 华蓥市| 阿克苏市| 施甸县| 通城县| 渑池县| 修文县| 普安县| 公安县| 马边| 长阳| 遂昌县| 鄄城县| 建始县| 四川省| 忻城县| 东宁县| 南昌市| 六枝特区| 拉萨市| 尤溪县| 赤峰市| 江陵县| 浮山县| 门头沟区| 平利县| 西青区|