偏移注入常見問題彙總php
1. Access偏移注入使用場景mysql
一些沒法查詢的列名,好比權限不足的知道表名殊不知道字段 使用偏移查詢主要查詢字段及內容等正則表達式
2. 偏移注入是否僅用於Accesssql
不是,mysql也可使用偏移注入數據庫
3. 爲何能夠cookie注入cookie
由於在這裏接受參數的時候使用了REQUEST,他能夠接受get 和POST 和 COOKIE的傳參網站
4. 爲何cookie注入能夠繞過驗證spa
由於早期網站防禦只檢測GET和POST傳參,沒有檢測COOKIEorm
5. Cookie注入常見嗎?圖片
老一點的ASP網站常見,PHP看版本,由於高於5.2以上的php版本他的$_REQUEST將再也不接受cookie傳參
6. cookie注入時爲何要刪除URL內的id傳參
由於它傳參進去會有一個輸出,cookie裏咱們也傳參了一個id數值,他會優先接受GET的傳參
7. ".*"的做用
用於代替表內所有字段,在不能用系統自帶庫查字段名時
8. 與正則表達式中的*有什麼不一樣
正則中的*表明匹配前面的0或無數次,而這裏的*指定表中全部的字段,admin.*是指admin表中全部的字段
9. 偏移註釋時聯合查詢後的一張表爲何要小於前一張表
聯合查詢必需要知足一個條件,就是前面的查詢和後面的查詢字段數必須相等,由於前面那張表的查詢字段數是固定的,後面那張咱們控制,可是當你使用admin.* 表明admin整個表的字段,若是admin表字段比前面那個表多,就不符合聯合查詢
10. 爲何flag的輸出點會在圖片裏出現
數據庫裏面他保存了圖片的連接地址,而後拼湊到了頁面上
11. 爲何沒用到information_schema
access數據庫裏沒有系統自帶表,只能猜
12. 前面的sql應該報錯而不顯示
雖然不顯示但仍是佔了輸出位,只顯示了正確的
能查到全部數據嗎
看具體環境,有的時候正好能所有查出,有的時候只能查出部分
13. union 聯合查詢前爲何要加and 1=2
由於顯示的時候有時只能返回第一行的數據,加上and 1=2後使前面的語句報錯,前一行就沒用輸出了,從而顯示後一條語句
14.爲何偏移注入要用1,2,admin.*呢
由於咱們不知道這個表中的具體字段名,xxx.*表明全部字段,把表二全部字段字段都顯示出來,而後再來找那個具體的字段
15. 能不能直接寫*
不能,直接寫*的話不知道你這個表明了是那個表
16. xxx.*能夠表明任意字段及數量嗎
表明XXX表的全部字段
17. 那麼能夠用select * from代替select 1,admin.*嗎?
不能,直接加*的狀況下,咱們沒法控制Union後的字段輸出個數,union是在兩個表的字段數要相同的狀況下才能夠成立的,不然聯合查詢不能執行
18. 不能查information_schema怎麼得知表名
能夠靠爆破和嘗試一些經常使用表名(例如:news、admin、user)
19. 整個SQL語句都能操控嗎
不能,咱們只能在原有的select查詢的基礎上加上聯合查詢的語句,咱們不能控制他以前的查詢
20. admin.* 表明一個任意字段?
admin.*表明了全部字段
21. and exist(select * from admin) 相似的盲注的語句可否使用
這裏主要是涉及偏移注入,那一條的確是access的盲注語句,但在如今的狀況下並不適用,由於你不知道字段名,沒法盲注
22. 爲何access數據庫union 聯合查詢在查字段後要加 from
由於access數據庫在報顯示位是要肯定一個表名
23. admin是當前表嗎
不是,只是指定了admin表