搜書
許可權要求:
確保具備檔案匯入匯出許可權後即可進行檔案讀寫操作~~~
讀寫檔案:
資料庫表讀取檔案中的內容並儲存~
load_file:
load_file();
load_file
在指定的目錄下建立檔案
首先我們需要在/var/lib/mysql-files/建立乙個檔案user.txt$ vi /var/lib/mysql-files/user.txt
user.txt:
hello,world!
create table file(
id int not null auto_increment primary key,
file_url text
)engine=innodb default charset=utf8; -- 建立表file
insert into file(file_url) values (load_file('/var/lib/mysql-files/user.txt'));
mysql> select * from file;
+----+---------------+
| id | file_url |
+----+---------------+
| 1 | null |
| 2 | hello,world! |
+----+---------------+
2 rows in set (0.00 sec)
檔案中的資料內容就這樣寫入了資料表中!
load data infile:
load data infile '/var/lib/mysql-files/name.txt' into table file(file_url);
mysql> mysql> select * from file;
+----+---------------+
| id | file_url |
+----+---------------+
| 1 | null |
| 2 | hello,world! |
| 3 | hello,world! |
+----+---------------+
3 rows in set (0.00 sec)
注入利用:
我們可以通過前期的滲透手段和分析得知目標**某處存在sql注入漏洞;於是我們就可以利用sql的檔案讀取的特性來讀取目標系統中的某個檔案的內容
mysql在剛剛初始化後,預設有三個系統預設庫:
mysql> show databases;
+--------------------+
| database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)
這些事mysql資料庫自帶的三個基本的系統庫
information_schema:information_schema庫:其中儲存有mysql所維護的所有資料庫資訊,包括庫名、表名、表列、許可權……等資訊
performance_schema:
用於收集資料庫伺服器的效能引數
mysql:s
保留mysql的賬戶資訊、許可權、儲存過程、event、時區等配置資訊
information_schema 庫通常儲存由資料庫的元資料:
資料庫名,表名,列的屬性、型別、訪問許可權等等……
schemata表:庫資訊
提供了當前mysql所有庫的資訊,show databases;
的結果就是據此而顯示~
tables表:表資訊
information_schema.tables
表中提供了表的詳細資訊
select 《列名》 from information_schema.tables;
table表中主要記錄了資料庫中所有表的元資料,例如表名、型別、引擎……
在滲透過程中,如果我們掌握到這張表就可以掌握資料庫的大概的表
columns表:字段資訊
information_schema.columns
表中提供了表中字段資訊
select column_name,data_type,is_nullable,column_default
from information_schema.columns
where table_name = 'user';
查詢user表中的欄位名資訊
statistics表:索引資訊
information_statistics
表中提供表的索引資訊內容
triggers表:觸發器資訊
views表:檢視資訊
user_privleges表:使用者許可權表
資訊源自於mysql.user
授權表;裡面儲存著資料庫每個賬戶具備的許可權資訊
schema_privleges表:方案(庫)許可權表
資訊源自於mysql.db
授權表,儲存著資料庫的許可權的資訊
table_privleges表:表許可權表
資訊源自於mysql.tables_prive
授權表,儲存所有表資訊的許可權
columns_privleges表:列許可權表
資訊源自於mysql.columns_prive
s授權表,儲存表列的許可權資訊
charcter_sets表:字符集表
提供mysql所有相關的字符集資訊
使用系統表注入
*在sql注入中union聯合注入是最為常見的
普遍的情況下,使用union
語句實現聯合注入(回顯注入)……
' union
現在簡單的舉例幾條sql語句實現核心的條件查詢
mysql注入查詢sql:
查當前 庫名:
select 1 , database();
查庫 sql語句:select schema_nam from information_schema.schemata;
查表 sql語句:select table_name from information_schema.tables where table_schema = "";
查列(字段) sql語句:select columns_name from information_schema.columns where table_name = "";
順帶一提~sql盲注上面說的sql注入是基於頁面有「回顯」的注入(回顯注入)
如果頁面沒有回顯,那麼就需要進行「盲注入」
獲取管理員hash:
破解hash:
**成功解出密碼……^_^!**
mysql 表授權 MySQL授權系統的五個表
mysql伺服器的特點之一是,它在控制每個使用者行為方面提供了極大的靈活性。例如,我們既可以限制使用者訪問整個資料庫,也可以限制使用者訪問資料庫中特定的表,或者禁止訪問特定表中的特定列。由此看出mysql伺服器在使用者授權方面的靈活性。本文將向大家詳細介紹mysql伺服器是如何處理使用者許可權的授與...
MySQL授權系統的五個表
mysql授權系統是由資料庫中的五個表來實現,下面就為您詳細介紹這五個和mysql授權系統相關的表,如果您感興趣的話,不妨一看。mysql伺服器的特點之一是,它在控制每個使用者行為方面提供了極大的靈活性。例如,我們既可以限制使用者訪問整個資料庫,也可以限制使用者訪問數 據庫中特定的表,或者禁止訪問特...
利用Oracle外部表監控檔案系統的空間使用率
概述 利用shell指令碼獲取檔案系統空間利用率資訊並儲存到乙個檔案中,再利用oracle外部表讀取此檔案。1.首先利用df命令得到規範的空間使用率資訊並儲存到乙個檔案中 建立乙個檔案 home oracle df.sh su oracle touch home oracle df.sh chmod...