Sqli labs 學習筆記

2021-08-20 00:03:31 字數 1118 閱讀 5672

資料庫的連線函式:concat和concat_ws;

concat_ws的第乙個引數是連線字串的分隔符。

user():返回當前資料庫連線使用的使用者

database():返回當前資料庫連線使用的資料庫

version():返回當前資料庫的版本

127.0.0.1/sqli-labs/less-1/?id=-1』 union select 1,2,concat_ws(char(32,58,32),user(),database(),version())%23

系統資料庫information_schema,記錄當前資料庫的資料庫,表,列,使用者許可權等資訊

schemata:儲存mysql所有資料庫的基本資訊,包括資料庫名,編碼型別路徑等

tables:儲存mysql中的表資訊,包括這個表是基本表還是系統表,資料庫的引擎是什麼,表有多少行,建立時間,最後更新時間等。

columns:儲存mysql中表的列資訊,包括這個表的所有列以及每個列的資訊,該列是表中的第幾列,列的資料型別,列的編碼型別,列的許可權,列的注釋等。

查詢information_schema中的資訊時,使用where語句值不能直接使用英文,要用單引號包裹著,十六進製制也可以。

union select 1,2,column_name from information_schema.columns where table_schema=0x7365637572697479 and table_name=0x7573657273 limit 1,1%23

檢視表的字段

union select 1,2,table_name from information_schema.tables where table_schema=0x7365637572697479

檢視表

group_concat()函式

完整語法如下

group_concat([distinct] 要連線的字段 [order by asc/desc 排序字段] [separator '分隔符'])

這個的意思應該就是將字段拼合在一起吧。

示例:在sqli-labs第二關,將它們的表都爆了出來。

SQLI LABS學習筆記 四

第十六關 和之前的關卡一樣,修改閉合,無意義的關卡 閉合即可 第十七關 這題從原始碼上看發現 這裡進行了兩次查詢 先查詢了使用者名稱是否存在 再查詢密碼是否匹配這個使用者 那麼我們就需要知道使用者名稱 在知道使用者名稱的前提下來進行注入 在之前的測試知道有admin這個賬戶 所以就用admin來注入...

sqli labs學習筆記 DAY1

sqli labs學習筆記 day1 安裝phpstudy 安裝配置sqli labs please input the id as parameter with numeric value 猜測 select from where id x 猜測id為文字 嘗試注入點 id 1 and 1 2 字...

SQLI LABS修煉筆記(三)

寫在前面 如果該檔案不存在,或因為上面的任一原因而不能被讀出,函式返回空。比較難滿足的 就是許可權,在windows 下,如果ntfs 設定得當,是不能讀取相關的檔案的,當遇到只有 administrators 才能訪問的檔案,users 就別想load file 出來。在實際的注入中,我們有兩個難...