函式名稱
系統使用者名稱
system_user()
系統使用者名稱
user()
使用者名稱current_user()
當前使用者名稱
session_user()
連線資料庫的使用者名稱
database()
資料庫名
version()
資料庫版本
@@datadir
資料庫路徑
@@basedir
資料庫安裝路徑
@@version_compile_os
作業系統
count()
返回執行結果數量
concat()
沒有分離符地連線字串
concat_ws(『指定分隔符, str1,srtr2,str3』)
含有分離符地連線字串
group_concat()
連線乙個組的所有字串並以逗號分隔每一條資料
load_file()
讀取本地檔案
into outfile
寫檔案ascii()
字串的ascii**值
ord()
返回字串第乙個字元的ascii
mid()
返回乙個字串的一部分
substr()
返回乙個字串的一部分
sleep()
讓此語句執行n秒
if()
select if(1>2,2,3); -> 3
char()
返回整數ascii**字元組成的字串
strcmp()
比較字串內容
ifnull()
例如引數1不為null,則返回引數1,否則返回引數2
exp()
返回e的x次方
extractvalue()
從目標xml中返回包含所查詢值的字串
updatexml()
改變文件中符合條件的節點的值
功能名稱
查詢語句
查庫select schema_name from information_schema.schemata
查表select table_name from information_schema.tables where table_schema=庫名
查列select column_name from information_schema.columns where table_name=表名
查資料select 列名 from 庫名.表名
information_schema中主要的幾個資料表:
schemata: 提供了當前mysql資料庫中所有資料庫的資訊,其中schemata字段儲存了所有資料庫名。show databases的結果取自此表。
tables: 提供了關於資料庫中的表的資訊,詳細表述了某個表屬於哪個schema,表型別,表引擎,建立時間等資訊,其中table_name字段儲存了所有列名資訊,show tables from sechema_name的結果取自此表。
columns:提供了表中的列資訊。詳細表述了某張表的所有列以及每個列的資訊,其中column_name儲存了所有的字段資訊。show columns from schemaname.tablename的結果取自此表。
sql注入基礎
mysqli 轉義字串函式 mysqli real escape string db,string mysqli 預編譯 拼裝sql語句 把要進行的操作的sql語句提前寫好,把需要改變的元素變成佔位符 select id,username from user where user name and ...
SQL注入基礎
最為經典的單引號判斷法 在引數後面加上單引號,比如 abc.php?id 1 如果頁面返回錯誤,則存在 sql 注入。原因是無論字元型還是整型都會因為單引號個數不匹配而報錯。如果未報錯,不代表不存在 sql 注入,因為有可能頁面對單引號做了過濾,這時可以使用判斷語句進行注入。其實所有的型別都是根據資...
SQL注入基礎
為了堅持而堅持,是撐不了多久的。sql注入就是指web應用程式對使用者輸入資料的合法性沒有判斷,前端傳入後端的引數是攻擊者可控的,並且引數代入資料庫查詢,攻擊者通過把sql命令插入到web表單提交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。sql注入漏洞的產生要滿足兩...